气候数据存储MCP服务器

一个实现Model Context Protocol (MCP)的服务,为LLM提供检索CDS目录数据和作业状态的接口。

  • by albertdow
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 albertdow/mcp-datapi

使用说明

气候数据存储(CDS)MCP服务器

概述

一种模型上下文协议(MCP)服务器实现,为LLM提供 检索界面 互补决定区 目录数据和作业状态。 API的基础是 datapi -找到文档 这里.

特性

  • 工具:

    • get_jobs:查找可用的作业,可选择根据状态添加筛选器。 返回作业ID列表。
    • download_job_result:使用作业id下载作业结果。
    • get_all_collections:获取目录中所有可用的收藏ID。
    • get_collection_by_id:获取指定集合的信息。
    • submit_job:提交下载请求。
  • 使用环境变量支持 .env.

先决条件

  • Python 3.13或更高版本。
  • CDS API密钥: 这里
  • MCP主机/客户端:在Claude Desktop和MCP检查器上测试。

安装

  • 克隆存储库:
git clone git@github.com:albertdow/mcp-datapi.git
cd mcp-datapi
  • 安装依赖项(使用 uv):
uv add "mcp[cli]" datapi python-dotenv
  • 通过创建 .env 文件并添加以下内容:
DATAPI_URL=<DATAPI_URL>
DATAPI_KEY=<DATAPI_KEY>

可以找到有关CDS API密钥设置的详细信息 这里.

用法

使用MCP检查器的开发模式

在本地测试服务器:

mcp dev datapi_server.py

与Claude Desktop集成

mcp install datapi_server.py --name "DatapiServer" -f .env

或者直接添加到您的 claude_desktop_config.json:

{
    "mcpServers": {
        "DatapiServer": {
            "command": "uv",
            "args": [
                "--directory",
                "mcp-datapi",
                "run",
                "mcp_datapi/datapi_server.py"
            ],
            "env": {
                "DATAPI_URL": "<DATAPI_URL>",
                "DATAPI_KEY": "<DATAPI_KEY>"
            }
        }
    }
}

注:

  • 我必须指定路径 uv例如。 /Users/username/.local/bin/uv.