World Bank Data360 MCP 服务端
- 项目简介
- 该项目实现了一个 MCP 服务器端,用于向 AI 客户端提供“资源/工具/提示”三大能力,以便在对话中获取数据、执行分析和生成可视化结果。
- 主要功能点
- MCP 服务器实现:基于 FastMCP,注册工具、提示与相关服务,使 LLM 客户端能通过 JSON-RPC 风格的 MCP 调用进行交互。
- 工具集(Tools):包括语义搜索指标、数据获取、国家比较、趋势分析、国家排名、以及绘图等功能,全部对外暴露给 MCP 客户端调用。
- 系统提示(Prompts):提供系统级提示(world_bank_analyst),用于引导 LLM 的推理与行为。
- 数据源与处理:通过 Data360Client 调用 World Bank 数据 API,内部使用 DataBuilder / DataStandardizer / DataAuditor 等模块完成数据获取、整理、审计和输出。
- 异步兼容与可扩展性:实现异步请求、缓存、错误处理和日志记录,便于在企业场景中扩展工具集。
- 安装步骤
-
- 安装依赖:需要 Python 3.8+,以及 httpx、pandas、pydantic、nest_asyncio、fastmcp 等依赖。
-
- 获取源码并安装:将仓库源码放置到工作目录,确保依赖安装无误。
-
- 启动服务器:使用 MCP 客户端(如 Claude Desktop 的 MCP 配置)通过指定命令与参数启动服务器。服务器端通过 FastMCP 暴露工具与提示,客户端即可调用。
-
- 服务器配置(MCP 客户端使用的启动信息,JSON 格式,包含服务器名称、命令与参数注释)
- server_name: worldbank-data360_mcp
- command: uv
- args: [ "--directory", "/path/to/mcp_wbgapi360", "run", "wbgapi360" ] 注释:该配置表示通过 UV 工具在指定目录下加载 MCP 服务器模块,启动时加载模块名为 wbgapi360,服务器将暴露定义好的工具与系统提示给 MCP 客户端使用。
- 基本使用方法
- 将 MCP 服务器配置到 AI 客户端(如 Claude Desktop)的 MCP 设置中,指定 server_name、启动命令与参数。
- 向 AI 客户端发起对工具的调用请求,例如请求进行国家数据对比、获取时间序列数据或生成图表等。服务器端会返回符合 MCP 协议的响应或通知。
- 若数据不足或请求无效,服务器会返回相应的错误信息,便于用户在对话中进行追问与澄清。