统计API查询服务器

一个运行在Cloudflare Workers上的MCP服务器,提供对日本政府统计数据的API接口,支持搜索、元数据查询和数据获取。

  • by ichiromurata
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 ichiromurata/eStat-mcp-server

使用说明

e-Stat API搜索MCP服务器

这是一个 模型上下文协议(MCP) 运行的服务器 Cloudflare员工 并为 电子统计API (日本官方统计)。

它允许AI代理(如Claude Desktop)搜索日本政府统计表,检查元数据,并检索统计数据进行分析。

特性

  • 搜索表格(get_tables):按关键字、部委代码或类别查找统计表。
  • 搜索调查(get_surveys):如果您不确定具体表格,请查找可用的调查。
  • 获取元数据(get_metadata):检索特定表的详细元数据(分类、区号、时间段)。
  • 获取数据(get_data):根据表ID和可选筛选器获取实际统计数据值。

先决条件

  • Node.js:(建议使用v18或更高版本)
  • Cloudflare牧马人:Cloudflare Workers的CLI工具。
  • e-Stat API密钥:您必须注册才能获得“应用程序ID”(appId)。

设置

  1. 克隆存储库

  2. 安装依赖项

    npm install
    
  3. 配置环境变量 此服务器需要 ESTAT_API_KEY 环境变量。

    地方发展: 创建一个 .dev.vars 项目根目录中的文件:

    ESTAT_API_KEY=your_app_id_here
    

    对于生产(Cloudflare部署): 使用牧马人设置秘密:

    npx wrangler secret put ESTAT_API_KEY
    # Enter your App ID when prompted
    

用法

本地开发

要在本地运行MCP服务器进行测试:

npm run dev

这将在以下位置启动服务器 http://localhost:8787.

部署

要部署到Cloudflare Workers帐户,请执行以下操作:

npm run deploy

连接到克劳德桌面

使用此MCP服务器 克劳德桌面,将以下配置添加到您的Claude Desktop配置文件中:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json

配置:

{
  "mcpServers": {
    "e-stat-search": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-cloudflare",
        "start",
        "https://<your-worker-name>.<your-subdomain>.workers.dev"
      ]
    }
  }
}

注意:将URL替换为您部署的Cloudflare Worker URL,或使用 http://localhost:8787 如果与一起在本地运行 mcp-remote.

或者,如果您在本地运行并希望直接连接:

{
  "mcpServers": {
    "e-stat-local": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://localhost:8787/sse"
      ]
    }
  }
}

可用工具

get_tables

搜索统计表。

  • 参数: searchWord, statsCode, limit等等。

get_surveys

搜索调查。对数据发现很有用。

  • 参数: searchWord, limit等等。

get_metadata

检索表的结构和分类信息。

  • 参数: statsDataId (必填)。

get_data

获取实际数据记录。

  • 参数: statsDataId (必填),以及可选的过滤器,如 cdCat01, cdTime, cdArea.