项目简介
这是一个基于 Model Context Protocol (MCP) 的服务器实现,使用 Go 语言编写。它的主要功能是暴露马来西亚开放政府数据平台 DataGovMy 提供的数据集,使其可以通过 MCP 协议被支持 MCP 的 LLM 客户端(如 Cline, Cursor)访问。
主要功能点
- 将 DataGovMy 的数据集(如人口、燃料价格等)作为 MCP 工具暴露。
- 允许 AI Agent (如 Cline) 或 AI 编程工具 (如 Cursor) 以编程方式访问这些数据。
- 使用 Go 语言开发,具备高性能和可移植性。
- 易于扩展,可以方便地集成更多 DataGovMy 数据集。
安装步骤
- 克隆仓库: 使用 Git 命令将项目仓库克隆到本地。
- 安装 Go 依赖: 进入项目目录,运行 Go 命令下载所需的依赖库。
- 构建服务器: 在项目目录中运行 Go 命令构建服务器二进制文件。
- 运行服务器: 执行构建生成的服务器二进制文件即可启动服务器。默认情况下,服务器会在本地的特定端口监听(如果使用 HTTP/WebSocket 传输),或者直接通过标准输入/输出与客户端通信(如果使用 Stdio 传输)。
服务器配置 (供 MCP 客户端参考)
MCP 服务器是为 MCP 客户端(如 Cline, Cursor)提供服务的。客户端需要配置如何连接和启动这个服务器。典型的客户端配置会包含如下信息:
- 服务器名称: 用于在客户端中识别这个 MCP 服务器的唯一名称 (例如: 'datagovmy')。
- 禁用状态: 指示该服务器是否启用 (通常设置为 'false')。
- 启动命令: 客户端用于启动此 MCP 服务器进程的绝对路径和命令 (例如: '/absolute/path/to/mcp-datagovmy')。如果需要命令行参数,也在此处指定。
- 传输协议: 指示客户端与服务器通信使用的协议类型。对于本地启动的服务器,通常使用 'stdio' (标准输入输出)。其他选项可能包括 'http', 'websocket' 等,具体取决于服务器实现。
- 超时设置: 客户端等待服务器响应的最大时间 (单位: 秒)。
- 自动批准工具: 一个可选列表,包含客户端可以自动调用而无需用户确认的工具名称 (例如: '["population_malaysia", "population_state"]')。
请根据您的 MCP 客户端文档,参照上述信息进行配置。
基本使用方法
在完成服务器的安装和启动,并正确配置了支持 MCP 的客户端(如 Cline 或 Cursor)后,您可以通过客户端与服务器提供的工具进行交互。
例如,在客户端中,您可以向 AI 发出指令,利用 'datagovmy' 服务器的 'population_state' 工具查询特定条件的人口数据:
使用来自 "datagovmy" 服务器的 "population_state" 工具,参数为 state="Selangor", age="0-4", date="2024-01-01", ethnicity="chinese", sex="male"。
客户端将根据您的指令构造 MCP 请求发送给服务器,服务器处理请求并返回数据,最终由客户端呈现给您。
信息
分类
AI与计算