Skip to main content

meta-mcp server guide

Overview

The meta-mcp server acts as an intelligent intermediary between AI clients and multiple MCP servers. It provides semantic tool discovery, unified access to multiple MCP servers through a single endpoint, and intelligent routing of requests to appropriate MCP tools.

Key features include:

  • Semantic Tool Discovery: Uses embeddings and hybrid search (semantic + BM25) to find the right tools for your tasks
  • Unified Access: Single endpoint to access all your MCP servers without managing multiple connections
  • Tool Management: Seamlessly manage large numbers of MCP tools across different servers
  • Intelligent Routing: Automatically routes requests to the appropriate MCP server based on tool requirements

The meta-mcp server is developed by StacklokLabs and requires Python 3.13+.

Metadata

Expand to view the MCP server's metadata
Server metadata
Name: meta-mcp
Type: container
Description: MCP server that acts as an intelligent intermediary between AI clients and multiple MCP servers
Tier: Official
Status: Active
Transport: streamable-http
Image: ghcr.io/stackloklabs/meta-mcp:latest
Has Provenance: Yes

Permissions:
Network:
Repository URL: https://github.com/StacklokLabs/meta-mcp
Popularity: 0 stars, 0 pulls
Last Updated: 2025-09-15T08:11:53Z

Tools:
- find_tool
- call_tool

Tags:
mcp, proxy, gateway, intelligent

Example Command:
thv run meta-mcp

Usage

Prerequisites
  • ToolHive UI (version >= 0.6.0) must be running
  • ToolHive CLI (version >= 0.3.1)
  1. Create a dedicated group for meta-mcp:

    Navigate to the Groups section and create a new group called meta. This ensures that AI clients are configured with only the meta-mcp server while other MCP servers remain available but not directly configured in clients.

  2. Install meta-mcp in the dedicated group:

    In the UI, select the meta group and add the meta-mcp server from the registry.

  3. Configure your AI client:

    Use the client configuration feature in the UI to register your AI client (like Cursor or Claude Desktop) with the meta group only.

  4. Add other MCP servers to the default group:

    Install other MCP servers you want to access through meta-mcp in the default group. These will be discovered automatically by meta-mcp.

Sample prompts

Once meta-mcp is configured and running, you can use it with natural language prompts. The server will automatically discover and route to appropriate tools:

Direct Task Examples:

  • "Get the details of GitHub issue 1911 from stacklok/toolhive repo"
  • "List recent PRs from stacklok/toolhive repo"

The meta-mcp workflow:

  1. Your AI client sends the request to meta-mcp
  2. Meta-mcp uses hybrid semantic and keyword search to find relevant tools across all connected MCP servers
  3. Meta-mcp server returns the short list of matching tools to the client
  4. Client selects one tool from the short list and uses meta-mcp to call that tool
  5. Results are returned from meta-mcp to the client

Available tools

The meta-mcp server provides two main tools:

find_tool

Discovers available tools that match your requirements using hybrid semantic and keyword search.

Parameters:

  • tool_description: Description of the task or capability needed (e.g., "web search", "analyze CSV file")
  • tool_keywords: Space-separated keywords of the task or capability needed (e.g., "list issues github", "SQL query postgres")

call_tool

Executes a specific tool with provided parameters after discovery.

Parameters:

  • server_name: Name of the MCP server providing the tool
  • tool_name: Name of the tool to execute
  • parameters: Dictionary of arguments required by the tool
  • Use descriptive group names: Keep meta-mcp in a dedicated group to maintain clean client configurations
  • Regular updates: Keep both ToolHive and meta-mcp updated for the latest features and compatibility
Best Practice

Start with a small set of MCP servers in the default group and gradually add more as you become familiar with meta-mcp's tool discovery capabilities. This makes it easier to understand which tools are being used for different tasks.