Deterministic Observability Framework MCP 服务端
使用说明(Markdown 形式)
- 项目简介
- 该仓库实现了一个基于 Model Context Protocol 的 MCP 服务器端,用于向大型语言模型客户端以标准化方式提供资源、工具、以及提示模板等上下文信息与功能调用能力,支持多种传输协议(此实现采用标准输入输出的 MCP 通信(stdio)模式,方便在本地或脚本中直接测试)。
- 主要功能点
- 提供可注册的工具(Tools)与资源(Resources),通过 MCP 风格的 JSON-RPC 请求处理并返回标准化响应
- 支持工具调用(tools/call)与资源读取(resources/read)等 MCP 方法,以及工具列表(tools/list)与资源列表(resources/list)
- 实现简单的初始化消息处理(initialize),用于 MCP 客户端识别服务能力
- 通过标准 JSON-RPC 2.0 格式进行请求/响应,便于与 Claude Desktop、Cursor 等客户端对接
- 提供 list 功能以便了解服务器当前可用的工具与资源
- 安装步骤
- 将代码部署在 Python 3.x 环境中
- 直接运行 mcp_server.py 即可启动服务器(STDIO 传输)
- 也可通过“--list”参数查看服务器支持的工具与资源
- 服务器配置(MCP 客户端无需本仓库内包含)
- MCP 客户端连接信息(下列为示例 JSON,用于客户端配置,不是服务器端代码)
- 服务器配置示例(JSON,不含代码,客户端不需要额外实现): { "server_name": "dof-governance-mcp", "command": "python3", "args": ["mcp_server.py"] } 说明:
- server_name: 服务器对外标识名称,与 SERVER_INFO 中的名称保持一致以便对接
- command/args: 启动服务器的命令及参数
- MCP 客户端无需此处提供的代码实现,仅需知道启动命令即可对接
- 基本使用方法
- 启动服务器: 直接执行 python3 mcp_server.py
- 客户端对接:通过 JSON-RPC 2.0 的请求格式向服务器发送请求,例如:
- initialize 请求用于获取服务器能力
- tools/list 获取工具列表
- tools/call 传入 name 与 arguments 进行工具调用
- resources/list 获取资源列表
- resources/read 读取特定资源
- 服务器返回标准的 JSON-RPC 2.0 响应,包含 result 或 error
- 如需查看当前支持的工具/资源,可使用 --list 参数