MCP服务器代理工具

MCP Server MetaTool是一个代理服务器,用于连接多个MCP服务器并将工具调用转发到适当的服务器,需与metatool-app GUI工具管理器配合使用。

  • by metatool-ai
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 metatool-ai/mcp-server-metatool

使用说明

MCP服务器元工具


⚠️ 此仓库不再维护!

看看这个Node.js替代品: 元工具ai/mcp服务器元cp.
它有 更好的性能 和 更少的bug.
(我也是这里的作者。)

概述

Metatool MCP Server是一个代理服务器,它连接多个MCP服务器并将工具调用转发到相应的服务器。 它应该与 元工具应用程序,MCP的GUI工具管理器,也是开源的。

sequenceDiagram
    participant MCPClient as MCP Client (e.g. Claude Desktop)
    participant MetaToolMCP as MetaTool MCP Server
    participant MetaToolApp as MetaTool App
    participant MCPServers as Installed MCP Servers in Metatool App

    MCPClient ->> MetaToolMCP: Request list tools
    MetaToolMCP ->> MetaToolApp: Get tools configuration & status
    MetaToolApp ->> MetaToolMCP: Return tools configuration & status

    loop For each listed MCP Server
        MetaToolMCP ->> MCPServers: Request list_tools
        MCPServers ->> MetaToolMCP: Return list of tools
    end

    MetaToolMCP ->> MetaToolMCP: Aggregate tool lists
    MetaToolMCP ->> MCPClient: Return aggregated list of tools

    MCPClient ->> MetaToolMCP: Call tool
    MetaToolMCP ->> MCPServers: call_tool to target MCP Server
    MCPServers ->> MetaToolMCP: Return tool response
    MetaToolMCP ->> MCPClient: Return tool response

运作原理

  • mcp服务器元工具本身既是mcp客户端,也是mcp服务器
  • 启动时,它连接到metatool-app API以获取要连接到的MCP服务器的列表
  • 在…上 list_tools 调用MCP时,它通过命名空间隔离将来自所有MCP服务器的所有工具连接起来。
  • 在…上 call_tool MCP的呼叫,它将呼叫转发到适当的服务器。

安装

最好的使用方法是通过紫外线 必须设置METATOOL_API_KEY环境变量

export METATOOL_API_KEY="my_api_key" # get from metatool-ai/metatool-app, which is self hostable and free
uvx mcp-server-metatool

您需要一个MCP客户端连接到此服务器才能使用它。

附加配置

METATOL_API_BASE_URL环境变量可以设置为指向另一个元工具实例

export METATOOL_API_BASE_URL="http://localhost:12005"

许可证

Apache许可证2.0