Open
Description
If I connect 2 mcp
servers with the same tool_name
s like this:
{
"mcp_servers":
{
"ben-github": {
"url": "http://host.docker.internal:8001/sse"
},
"misha-github": {
"url": "http://host.docker.internal:8002/sse"
}
}
}
For example using 2 GitHub mcp
server - one per organization.
curl -X 'GET' \
'http://localhost:8000/mcp/servers/ben-github/tools' \
-H 'accept: application/json'
Response:
{
"_meta": null,
"nextCursor": null,
"tools": [
{
"name": "get_me",
"description": "Get details of the authenticated GitHub user. Use this when a request include \"me\", \"my\"...",
"inputSchema": {
"type": "object",
"properties": {
"reason": {
"description": "Optional: reason the session was created",
"type": "string"
}
}
}
}
]
}
curl -X 'GET' \
'http://localhost:8000/mcp/servers/misha-github/tools' \
-H 'accept: application/json'
Response:
{
"_meta": null,
"nextCursor": null,
"tools": [
{
"name": "get_me",
"description": "Get details of the authenticated GitHub user. Use this when a request include \"me\", \"my\"...",
"inputSchema": {
"type": "object",
"properties": {
"reason": {
"description": "Optional: reason the session was created",
"type": "string"
}
}
}
}
]
}
Or using the unified api
:
curl -X 'GET' \
'http://localhost:8000/mcp/tools' \
-H 'accept: application/json'
Response:
{
"ben-github": {
"_meta": null,
"nextCursor": null,
"tools": [
{
"name": "get_me",
"description": "Get details of the authenticated GitHub user. Use this when a request include \"me\", \"my\"...",
"inputSchema": {
"type": "object",
"properties": {
"reason": {
"description": "Optional: reason the session was created",
"type": "string"
}
}
}
}
]
},
"misha-github": {
"_meta": null,
"nextCursor": null,
"tools": [
{
"name": "get_me",
"description": "Get details of the authenticated GitHub user. Use this when a request include \"me\", \"my\"...",
"inputSchema": {
"type": "object",
"properties": {
"reason": {
"description": "Optional: reason the session was created",
"type": "string"
}
}
}
}
]
}
}
Then I try to actually use the tools, and I cannot tell the service what server I want to run with:
curl -X 'POST' \
'http://localhost:8000/mcp/tools/get_me/call' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-d '{}'
It only uses the 2nd mcp
server...
Metadata
Metadata
Assignees
Labels
No labels