Hydra MCP

Hydra MCP

site icon
2025.04.02 0
Python模型控制协议REST API函数注册开发效率
Hydra MCP 是一个实现 Hydra 模型控制协议(Model Control Protocol)的服务器,它通过 REST API 接口使 Claude 能够与各种客户端功能进行交互。该系统由一个中央服务器组成,协调多个客户端之间的通信,并通过标准化的 API 将客户端功能暴露给 Claude。
View on GitHub

Overview

基本能力

产品定位

Hydra MCP 是一个用于协调多个客户端功能并通过标准化 API 与 Claude 交互的中央服务器。

核心功能

  • 集中式函数注册表,支持多个客户端
  • 用于函数发现和调用的 REST API 端点
  • 客户端与 Claude 之间的标准化通信协议
  • 易于使用的函数注册系统
  • 自动函数发现和文档生成

适用场景

  • 需要将多个客户端功能集成到一个统一接口的场景
  • 需要通过标准化 API 与 Claude 交互的场景
  • 需要自动发现和调用客户端功能的场景

工具列表

  • get_endpoints(): 列出所有可用的端点
  • get_registered_functions(endpoint): 获取特定端点可用的函数
  • call_function(endpoint, function_name, arguments): 使用参数调用特定函数

常见问题解答

  • 默认端口为 6565,可以通过修改 API_SERVER_PORT 常量来更改

使用教程

使用依赖

安装以下依赖:

pip install fastapi uvicorn requests fastmcp

安装教程

  1. 启动中央服务器:
python ipc_server.py
  1. 注册客户端函数:
functions = [
    {
        "name": "example_function",
        "description": "An example function",
        "parameters": {
            "param1": "string",
            "param2": "integer"
        }
    }
]

requests.post(
    f"http://localhost:{API_SERVER_PORT}/register_functions",
    json={
        "endpoint": "client1",
        "functions": functions
    }
)
  1. 使用 MCP 接口与函数交互:
# 获取可用端点
endpoints = get_endpoints()

# 获取特定端点的函数
functions = get_registered_functions("localhost:1234")

# 调用函数
result = call_function("localhost:1234", "example_function", {"param1": "value", "param2": 42})

调试方式

项目包含示例实现(fake_client.pyfake_claude.py)用于测试功能。这些可以作为创建新客户端或测试系统的参考实现。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。