@@ -27,37 +27,63 @@ Key features include:
2727- ** Intelligent routing** : Automatically routes requests to the appropriate MCP
2828 server based on tool requirements
2929
30+ This approach helps you avoid problems associated with context overload and tool
31+ confusion by narrowing down the toolset to only those relevant for a given task.
32+ It also simplifies client configurations by providing a single access point to
33+ multiple MCP servers.
34+
3035## Metadata
3136
3237<MCPMetadata name = ' meta-mcp' />
3338
3439## Usage
3540
36- <Tabs groupId = ' mode' queryString = ' mode' >
41+ The meta-mcp server is specifically designed to work with
42+ [ ToolHive groups] ( ../guides-cli/group-management.md ) . The recommended setup is
43+ to run meta-mcp in its own dedicated group (e.g., "meta") and have other MCP
44+ servers in a separate group (e.g., "default"). This keeps client configurations
45+ clean and allows meta-mcp to discover and route to tools across all connected
46+ MCP servers.
47+
48+ Clients using meta-mcp should be configured to connect only to the meta group.
49+ The meta-mcp server discovers and routes requests to tools in the default group.
50+
51+ ``` mermaid
52+ flowchart TB
53+ subgraph meta["ToolHive group: meta"]
54+ direction TB
55+ metamcp["meta-mcp server"]
56+ end
57+ subgraph def["ToolHive group: default"]
58+ direction TB
59+ mcp1["mcp1"]
60+ mcp2["mcp2"]
61+ mcp3["mcp3"]
62+ end
63+
64+ client(["Client"]) <-- connects --> meta
65+ metamcp <-. discovers/routes .-> def
66+ client x-. 🚫 .-x def
67+ ```
3768
69+ <Tabs groupId = ' mode' queryString = ' mode' >
3870<TabItem value = ' ui' label = ' UI' >
3971
4072The meta-mcp server uses ToolHive groups to function. While you need the
4173ToolHive UI to run meta-mcp, it doesn't support group management yet, so you'll
4274need to use the CLI for setup.
4375
4476</TabItem >
45-
4677<TabItem value = ' cli' label = ' CLI' default >
4778
4879:::info[ Prerequisites]
4980
5081You need both the ToolHive CLI and UI to use the meta-mcp server because it
5182depends on the UI's API server for tool discovery and management.
5283
53- - ToolHive UI (version >= 0.6.0) must be running for setup
84+ - ToolHive UI (version >= 0.6.0) must be running during setup and operation
5485- ToolHive CLI (version >= 0.3.1)
5586
56- The meta-mcp server should run in a
57- [ dedicated group] ( ../guides-cli/group-management.md ) to keep client
58- configurations clean. Other MCP servers that you want to access through meta-mcp
59- should be in a separate group.
60-
6187:::
6288
6389** Step 1: Create a dedicated group and run meta-mcp**
@@ -80,12 +106,23 @@ thv client setup
80106thv client list-registered
81107```
82108
109+ :::note
110+
111+ If your client was previously registered with the default group, unregister it.
112+ For example, to unregister Cursor:
113+
114+ ``` bash
115+ thv client remove cursor --group default
116+ ```
117+
118+ :::
119+
83120** Step 3: Add MCP servers to the default group**
84121
85122``` bash
86123# Add MCP servers that you want to access through meta-mcp
87124thv run github
88- thv run filesystem
125+ thv run fetch
89126thv run time
90127
91128# Verify the configuration - meta-mcp should be in 'meta' group, others in 'default'
@@ -97,8 +134,9 @@ thv list
97134
98135## Sample prompts
99136
100- Once meta-mcp is configured and running, you can use it with natural language
101- prompts. The server automatically discovers and routes to appropriate tools:
137+ Once meta-mcp is configured and running, you can use the same prompts you would
138+ normally use with individual MCP servers. The meta-mcp server automatically
139+ discovers and routes to appropriate tools.
102140
103141** Direct task examples:**
104142
@@ -117,9 +155,10 @@ prompts. The server automatically discovers and routes to appropriate tools:
117155
118156## Available tools
119157
120- The meta-mcp server provides two main tools:
158+ The meta-mcp server provides two tools of its own for tool discovery and
159+ execution.
121160
122- ### find_tool
161+ ### ` find_tool `
123162
124163Discovers available tools that match your requirements using hybrid search
125164(semantic + keyword).
@@ -131,7 +170,7 @@ Discovers available tools that match your requirements using hybrid search
131170- ` tool_keywords ` : Space-separated keywords of the task or capability needed
132171 (e.g., "list issues github", "SQL query postgres")
133172
134- ### call_tool
173+ ### ` call_tool `
135174
136175Executes a specific tool with provided parameters after discovery.
137176
0 commit comments