多服务器模型控制协议客户端

一个使用Google Gemini API的服务器发送事件(SSE)模型控制协议(MCP)客户端实现,支持多服务器配置和管理。

  • by hackerinheels
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 hackerinheels/multiplemcpserverwithpythonhost

使用说明

带有Python主机的多个MCP SSE服务器

此存储库包含一个使用Google的Gemini API的服务器端事件(SSE)模型控制协议(MCP)客户端实现。 Host应用程序读取config.json文件,实例化MCP Client类的实例以启动MCP服务器并保持与它们的连接,在关闭时进行清理等。

可以将此主机应用程序打包为dmg包并分发,然后可以与任何MCP SSE服务器一起使用。 待办事项:添加stdio服务器支持 待办事项:添加多型号支持 待办事项:添加工具链

设置

  1. 克隆此存储库:

    git clone https://github.com/hackerinheels/multipleMCPServerWithPythonHost.git
    cd multipleMCPServerWithPythonHost
    
  2. 创建一个 .env 根目录中带有API密钥的文件:

    GEMINI_API_KEY=your_api_key_here
    MODEL_NAME=gemini-2.0-flash
    

    您可以从获取Gemini API密钥 谷歌人工智能工作室.

  3. 使用googleCalendar/REAME.md文件中的说明设置Google日历API

  4. 更新config.json以包含浏览器使用服务器:

    {
        "mcpServers": {
            "calendar": {
                "command": "uv",
                "args": ["run", "googleCalendar/calendarServer.py", "--port", "8000"]
            },
            "browser-use": {
                "command": "uv",
                "args": ["run", "<path-to-browser-use-mcp-server>/server", "--port", "8006"]
            }
        }
    }
    

    替换 <path-to-browser-use-mcp-server> 使用克隆存储库的实际路径。

  5. 创建一个 .env 浏览器中的文件使用mcp服务器目录,配置如下:

CHROME_PATH="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"

运行应用程序

uv venv --python 3.11
source .venv/bin/activate
uv pip install -r requirements.txt
uv run host.py

这将启动config.json文件中列出的所有服务器

用法

服务器和客户端运行后,您可以通过键入查询与它们进行交互。

谷歌日历命令

日历服务器提供以下工具:

  • list_events:列出即将举行的日历活动
  • get_event_details:获取特定事件的详细信息
  • search_events:搜索与查询匹配的事件

示例查询:

  • “显示我即将举行的活动”
  • “搜索与John的会议”
  • “获取事件{event_id}的详细信息”

浏览器用于浏览器自动化

此工具使用以下工具实现浏览器自动化和控制:

  • '浏览器使用'
  • '浏览器_结果'

类型 quit 退出客户端。

需求

  • Python 3.11+
  • UV包管理器
  • Google Gemini API密钥
  • Google日历API凭据(用于日历服务器)

许可证

麻省理工学院

MCP多服务器配置

此存储库演示了如何使用配置文件加载和运行多个MCP服务器。

包括服务器

日历服务器

  • 与谷歌日历互动
  • 管理活动和日程

浏览器使用服务器

  • 自动化浏览器交互
  • 以编程方式控制Chrome浏览器
  • 执行基于浏览器的任务

4.浏览器使用服务器环境设置

创建一个 .env 浏览器中的文件使用mcp服务器目录,配置如下:

CHROME_PATH="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"

注意:请确保将“your-openai-api-key”替换为实际的openai api密钥。

备注

  • 确保在.env中正确配置了所有API密钥
  • 确保为浏览器使用服务器安装了Chrome
  • 每台服务器在其指定端口上运行
  • 主机管理所有服务器生命周期

故障排除

  • 如果服务器无法启动,请检查其端口可用性
  • 验证所有环境变量是否设置正确
  • 确保Chrome路径适合您的系统