Hive MCP Tools Server
使用说明
- 项目简介
- Hive 的 MCP 服务器端实现,负责托管和管理资源(Resources)、注册并执行工具(Tools),以及定义和渲染 Prompt 模板(Prompts),以标准化方式向大模型/LLM 客户端提供上下文信息和能力。
- 服务器以 FastMCP 为基础,通过 Python 环境中的 mcp_server 实现工具注册、请求处理、HTTP/STDIO 传输以及基本健康路由。
- 主要功能点
- 工具注册与暴露:通过统一入口把大量工具(CSV、Slack、GitHub、Web 搜索、文件系统工具、PDF 读取等)注册到 MCP 服务器,LLM 客户端可调用这些工具。
- 资源与数据支持:提供文件查看、写入、CSV 读写、数据存储与分页读取等能力,便于在代理图中管理中间数据。
- 安全与凭证整合:结合 aden_tools 的 CredentialStoreAdapter/CredentialStore 提供凭证验证与使用,支持多种凭证来源(环境变量、凭证存储、测试覆盖),并在启动阶段执行一次性凭证检查。
- 多传输通道:支持 htt p传输(默认)以及 STDIO 传输,便于容器化部署和本地测试。
- 健康路由:提供 /health 和根路径的简单端点,便于容器编排与浏览器访问。
- 服务器配置示例化:通过配置 JSON 描述服务器名称、启动命令及参数,帮助 MCP 客户端了解如何连接并启动服务。
- 安装步骤
- 获取代码:将仓库克隆到本地或在现有环境中获取源码。
- 安装依赖:在项目根目录执行望安装命令,例如 python -m pip install -e .(安装框架),以及安装 MCP 相关依赖 fastmcp 等。
- 启动服务器:
- 以 HTTP 传输启动(默认):
- 运行命令:python tools/mcp_server.py
- 监听默认端口 4001,若需要自定义端口可通过 --port 指定,例如:python tools/mcp_server.py --port 4002
- 以 STDIO 传输启动(适合本地测试/管道化场景):
- 运行命令:python tools/mcp_server.py --stdio
- 以 HTTP 传输启动(默认):
- 可选配置:
- 设置凭证环境变量(如 BRAVE_SEARCH_API_KEY、ANTHROPIC_API_KEY、GOOGLE_API_KEY 等)或通过 CredentialStoreAdapter 提供的凭据源。
- 如部署在容器中,可通过健康端点和暴露端口来整合监控与扩展。
- 服务器配置(用于 MCP 客户端)
- 服务器名称(server_name)通常为工具集的名称,例如 "tools"。
- 启动命令(command):python
- 启动参数(args):包括要执行的 MCP 服务器脚本及端口,例如 "tools/mcp_server.py" 和 "--port 4001"。
- 备注:客户端配置文件应包含服务器名称、启动命令、参数等信息,以便自动化启动和连接;实际连接时,客户端会通过该信息知道如何启动并连接到该 MCP 服务器。
- 具体示例描述(文本形式,不直接粘贴代码):
- 服务器名称(server_name): tools
- 启动命令(command): python
- 启动参数(args): ["tools/mcp_server.py", "--port", "4001"]
- 监听地址与端口: 0.0.0.0:4001(HTTP 传输默认)
- 传输模式: HTTP(默认),也可使用 STDIO
- 基本使用方法
- 启动后,MCP 客户端可以通过对等对话方式向服务器发起请求,读取资源、调用工具、获取 Prompts 等。
- 客户端可用 JSON-RPC 格式向 /health、根路由等端点发送请求,获取工具注册信息、工具执行结果、资源清单等。
- 若需要本地调试,使用 STDIO 模式可直接通过标准输入/输出与服务器通信,便于集成测试。
- 在凭证方面,起始阶段服务器会进行启动凭证检查(若配置有 startup_required 的凭证),工具加载阶段也会在需要时进行凭证验证。