GenAI MCP 服务端集合

使用说明(Markdown格式)

  • 项目简介

    • 该仓库包含若干 MCP 服务器实现,用于向 MCP 客户端提供工具(Tools)服务,按 MCP 规范处理请求并返回响应。核心实现基于 FastMCP,服务器通过 MCP 的标准接口对外暴露工具。当前实现示例包括 Weather、Tech News 与 Math 服务。
  • 主要功能点

    • MCP 服务器实现:基于 FastMCP 提供 MCP 服务端框架,暴露一个或多个工具接口供 MCP 客户端调用。
    • 工具暴露:通过 @mcp.tool() 装饰器将函数暴露为 MCP 工具,客户端可以调用这些工具获取数据或执行计算。
    • 服务器入口与传输:在每个服务脚本的主入口通过 mcp.run(transport="stdio") 启动服务,支持头部传输模式(如 stdio)等。
    • 易于扩展:新增服务器只需实现新的 FastMCP 实例、装饰工具并在主入口启动即可。
  • 安装与运行步骤

    • 进入相应 MCP 服务器脚本所在目录,直接运行脚本即可启动服务器。
    • 运行示例(Weather 服务):python genai_blueprint/mcp_server/weather_server.py
    • 运行示例(Tech News 服务):python genai_blueprint/mcp_server/tech_news.py
    • 运行示例(Math 服务):python genai_blueprint/mcp_server/math_server.py
    • MCP 客户端无需在此处修改,直接通过配置与调用即可连接。
  • 服务器配置(MCP 客户端需要的配置示例,JSON 格式,字段包含 server name、command、args 等) 说明:以下配置用于 MCP 客户端启动与连接,描述各自服务器的名称与启动命令。注释位于同一条 JSON 之外的说明文本中,MCP 客户端不需要额外的代码片段。

    1. Weather 服务 { "server_name": "weather", "command": "python", "args": ["genai_blueprint/mcp_server/weather_server.py"] } 注释:
    • server_name:服务器在 MCP 客户端中的唯一标识,此处与脚本中 FastMCP("weather") 对应。
    • command/args:启动服务器所需的命令与参数,MCP 客户端据此启动独立进程并通过 MCP 连接。
    1. Math 服务 { "server_name": "Math", "command": "python", "args": ["genai_blueprint/mcp_server/math_server.py"] } 注释:
    • server_name 为大写 “Math”,与脚本中的 mcp = FastMCP("Math") 对应。
    • 其他字段同上。
    1. Tech News 服务 { "server_name": "tech_news", "command": "python", "args": ["genai_blueprint/mcp_server/tech_news.py"] } 注释:
    • server_name 为 "tech_news",与脚本中的 FastMCP("tech_news") 对应。
    • 其他字段同上。
  • 基本使用方法

    • 启动 MCP 服务器后,MCP 客户端可通过 MCP 协议向服务器发起格式化的请求,调用暴露的工具(如 weather 获取天气信息、math 执行简单运算、tech_news 获取科技新闻摘要),服务器返回 JSON-RPC 风格的响应数据。
    • 客户端配置完成后,即可按 MCP 客户端的调用约定进行查询,获取结构化数据并在后续流程中进行处理。
  • 兼容性与注意事项

    • 这些实现依赖 FastMCP 库对 MCP 协议的支持,确保在运行环境中安装了相关依赖。
    • 每个脚本的入口都在 if name == "main" 下调用 mcp.run(transport="stdio"),请按照运行环境选择合适的传输模式。
    • 如需扩展,请保持 server_name 与 FastMCP 的实例标识一致,并通过 @mcp.tool() 装饰新工具。
  • 关键词 模型上下文协议, 工具服务, 资源管理, 跨进程通信, 后端服务

  • 分类 6

服务器信息