小贴士:按下Ctrl+D 或 ⌘+D,一键收藏本站,方便下次快速访问!
3
最近更新:1个月前

澳大利亚统计局的MCP服务器

ABS MCP 服务器

一个提供访问澳大利亚统计局 (ABS) 数据 API 的 MCP(模型上下文协议)服务器。该服务器允许 AI 助手通过 SDMX-ML API 查询和分析 ABS 统计数据。

功能

  • 通过 SDMX-ML API 动态发现所有可用的 ABS 数据集
  • 带可选过滤器查询 ABS 数据集
  • 支持多种数据格式(JSON、CSV、XML)
  • 基于 MCP 协议,与 AI 助手无缝集成
  • 缓存系统以提高性能
  • 全面的日志记录和错误处理

安装

bash 复制代码
npm install

开发

前提条件

  • Node.js 18 或更高版本
  • npm 8 或更高版本

构建

bash 复制代码
npm run build

运行

bash 复制代码
npm start

开发工具

  • npm run build: 构建 TypeScript 代码
  • npm start: 运行服务器
  • npm run inspector: 运行 MCP 检查器进行测试

项目结构

复制代码
src/
├── index.ts                # 主服务器实现
├── services/
│   └── abs/
│       ├── ABSApiClient.ts # ABS API 通信
│       └── DataFlowService.ts # 数据流管理和缓存
├── types/
│   └── abs.ts             # TypeScript 类型定义
└── utils/
    └── logger.ts          # 日志配置

实现细节

ABS API 客户端

ABSApiClient 类处理与 ABS 数据 API 的通信:

  • 使用 SDMX-ML 格式进行数据交换
  • 支持多种响应格式(JSON、CSV、XML)
  • 实现适当的错误处理和日志记录
  • 可配置的超时和重试

数据流服务

DataFlowService 类管理 ABS 数据流:

  • 从 ABS API 动态获取可用数据集
  • 实现带有可配置刷新间隔的缓存
  • 提供查询特定数据集的方法
  • 处理数据转换和格式化

日志记录

使用 Winston 的全面日志系统:

  • 开发调试级别的日志记录
  • 结构化的 JSON 日志格式
  • 控制台和文件传输选项
  • 可配置的日志级别和格式

与 Claude Desktop 集成

  1. 如果 Claude Desktop 正在运行,请关闭它
  2. 启动 ABS MCP 服务器: npm start
  3. 启动 Claude Desktop
  4. ABS 工具应出现在“可用的 MCP 工具”窗口中

API 文档

有关 ABS 数据 API 的更多信息:

贡献

  1. 分叉仓库
  2. 创建功能分支
  3. 进行更改
  4. 提交拉取请求

许可证

MIT 许可证