项目简介
'DhiMCPServer' 是一个基于 Model Context Protocol (MCP) 的服务器实现示例,它展示了如何使用 'FastMCP' 框架来创建一个能够向 LLM 客户端提供特定工具的后端服务。当前它提供了一个名为 'get_migration_info' 的工具,用于获取Docker Hardened Image的详细迁移指南。此服务器旨在作为 'cagent' 等MCP客户端的工具提供者。
主要功能点
- MCP协议支持: 'DhiMCPServer' 实现 Model Context Protocol,能够通过标准输入输出(Stdio)以JSON-RPC协议与LLM客户端进行通信。
- 工具托管: 服务器当前提供一个名为 'get_migration_info' 的工具。该工具接收一个 'image' 名称作为参数(例如 'docker/dhi-node:18'),并返回关于该Docker Hardened Image的完整迁移和使用说明。这些说明涵盖了多阶段构建、镜像变体、迁移注意事项和故障排除等关键信息。
- 标准I/O传输: 支持通过标准输入输出(Stdio)进行通信,使其可以灵活地集成到各种环境中。
安装步骤
- 安装Python: 确保您的系统已安装Python 3.x版本。
- 安装FastMCP库: 打开命令行或终端,运行以下命令安装 'fastmcp' 库:
pip install fastmcp - 获取服务器代码: 将GitHub仓库中 'examples/dhi/dhi_mcp_server/server.py' 文件保存到您的本地计算机的某个目录,例如 '/home/user/mcp_servers/server.py'。
服务器配置
这是一个MCP服务器的JSON配置示例,用于向支持MCP协议的客户端(如 'cagent')声明 'DhiMCPServer' 的能力和连接方式。您的MCP客户端需要这些信息来与服务器建立连接并调用其工具。
{ "server_name": "DhiMCPServer", "description": "提供Docker Hardened Image的迁移信息和使用指南的MCP服务器。", "transport_type": "stdio", "command": "python", "args": [ "/path/to/your/server.py" ], "tools": [ { "name": "get_migration_info", "description": "返回指定Docker镜像的迁移信息。", "parameters": { "type": "object", "properties": { "image": { "type": "string", "description": "要查询的Docker镜像名称(例如:docker/dhi-node:18)" } }, "required": [ "image" ] } } ] }
配置参数说明:
- 'server_name': MCP服务器的唯一标识符。
- 'description': MCP服务器功能的简要说明。
- 'transport_type': 服务器使用的传输协议,此处为 'stdio'(标准输入输出)。
- 'command': 启动MCP服务器的可执行命令,这里是 'python'。
- 'args': 传递给 'command' 的参数列表。请将 '/path/to/your/server.py' 替换为您实际保存 'server.py' 文件的路径。
- 'tools': 服务器提供的工具列表。
- 'name': 工具的名称,此处为 'get_migration_info'。
- 'description': 工具的简要描述。
- 'parameters': 工具接受的参数定义(遵循JSON Schema格式)。'image' 参数是必需的字符串类型,用于指定Docker镜像。
基本使用方法
- 启动MCP服务器:
打开命令行或终端,导航到 'server.py' 文件所在的目录,然后运行以下命令:
服务器将在 'stdio' 模式下启动,并开始监听标准输入以接收MCP客户端的请求。python server.py - 集成到MCP客户端: 将上述“服务器配置”部分提供的JSON配置信息,导入到您的MCP客户端中。例如,如果您使用 'cagent',您可以在其YAML配置文件中创建一个 'toolsets' 条目来引用此服务器。一旦配置完成,您的AI Agent就可以通过调用 'get_migration_info' 工具来获取Docker Hardened Image的迁移信息。
信息
分类
开发者工具