OpenAPI MCP服务器

一个基于Cloudflare Workers的Model Context Protocol (MCP)服务器,提供对32个Acceleronix OpenAPI的无缝访问,支持设备管理、数据存储、家庭服务等多种功能,适用于物联网开发和企业级应用。

  • by Acceleronix
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 acceleronix/swagger-mcp-server

使用说明

Acceleronix OpenAPI Swagger Doc MCP服务器

一个全面的模型上下文协议(MCP)服务器,提供无缝访问 32 个 OpenAPI 从 Acceleronix开发者中心。基于Cloudflare Workers构建,具有智能工具管理和承载令牌身份验证功能。

特性

  • 32个Acceleronix PaaS OpenAPI:全面覆盖设备管理、数据存储、家庭服务等
  • 智能工具管理:每个API有3-8个工具的智能负载平衡(总共约100个工具)
  • 多层体系结构:EndUser、Enterprise和Open API访问级别
  • 承载令牌认证:跨所有API的统一身份验证
  • 实时访问:部署在Cloudflare Workers上,实现全球低延迟访问
  • 克劳德集成:与Claude Desktop和AI Playground直接集成

支持的API类别

核心设备管理 (18个已启用的API)

  • 设备管理器(企业版) -设备生命周期和配置管理
  • 设备阴影(企业) -设备状态同步和影子操作
  • 绑定服务(最终用户/企业) -设备绑定和用户关联
  • 设备组服务(最终用户) -组管理和批处理操作

平台服务

  • 应用服务(最终用户) -应用程序管理和部署
  • 家庭服务(最终用户) -多用户家庭账户管理
  • 最终用户服务(EndUser) -用户配置文件和帐户操作
  • 产品管理(企业) -产品目录和生命周期

数据与分析

  • 数据存储(最终用户) -时间序列数据存储和检索
  • 气象服务(最终用户) -气象数据集成
  • 规则引擎(最终用户) -事件处理和自动化规则
  • 类别管理(最终用户) -设备分类和分类学

基础设施服务

  • OTA服务(最终用户) -无线固件更新
  • 事物规范语言(企业) -设备型号定义
  • 物质服务(最终用户) -物质协议集成
  • I18n服务(最终用户) -国际化和本地化
  • 全局Bootstrap(打开) -平台初始化服务

其他API (14个可用,目前已禁用)

  • 邮件服务、移动推送、OEM应用程序、门户服务、工单、短信、流媒体等

快速开始

部署到Cloudflare Workers

# Clone the repository
git clone <repository-url>
cd swagger-mcp-server

# Install dependencies
npm install

# Deploy to Cloudflare Workers
npm run deploy

您的MCP服务器将在以下网址提供: https://swagger-mcp-server.<your-account>.workers.dev/sse

地方发展

# Start local development server
npm run dev

# Server available at: http://localhost:8787/sse

配置

承载令牌设置

更新中的身份验证令牌 src/config.ts:

{
  name: "device_mgr_enterprise",
  title: "IoT Device Manager (Enterprise)",
  auth: { type: 'bearer', token: 'your-bearer-token-here' },
  enabled: true,
  maxTools: 8
}

启用/禁用API

通过修改来控制哪些API处于活动状态 enabled 标志:

{
  "name": "mail_enduser",
  "title": "Mail Service (EndUser)",
  "enabled": false,  // Set to true to enable
  "maxTools": 4
}

Claude桌面集成

添加到您的Claude Desktop配置(~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "iot-apis": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://swagger-mcp-server.your-account.workers.dev/sse"
      ]
    }
  }
}

可用工具

服务器根据Swagger规范自动生成具有智能命名的工具:

  • device_mgr_enterprise_getDevices -列出所有设备
  • binding_enduser_bindDevice -将设备绑定到用户
  • deviceshadow_enterprise_updateShadow -更新设备阴影
  • weather_enduser_getCurrentWeather -获取当前天气数据
  • 在所有已启用的API中,还有约96个工具

管理工具

列出可用API

# Using Claude
"List all available APIs and their status"

测试连接

# Using Claude  
"Test the MCP server connection"

建筑

Claude Desktop/AI Playground
           ↓
    MCP JSON-RPC 2.0
           ↓
   Cloudflare Workers
           ↓
    McpAgent (Durable Objects)
           ↓
   Multi-API Tool Router
           ↓
    32 IoT APIs (Acceleronix)

工具分销策略

  • 高优先级API:每个工具6-8个(设备管理、产品、TSL)
  • 中等优先级API:每个工具4-6个(绑定、阴影、数据存储)
  • 实用程序API:每个工具3-4个(天气、I18n、Bootstrap)
  • 总计:18个已启用API中的约100个工具

安全功能

  • 所有API调用的承载令牌身份验证
  • 敏感令牌的环境变量支持
  • 浏览器客户端已启用CORS
  • 请求验证和错误处理

端点

  • MCP SSE: /sse -Claude的服务器发送事件端点
  • 健康检查: /health -服务状态和版本信息
  • MCP JSON-RPC: /mcp -直接JSON-RPC 2.0端点

API文档

每个API都提供了可通过工具访问的全面Swagger文档。使用 list_apis 工具查看所有可用的API及其描述。

贡献

  1. 分叉存储库
  2. 添加新的API src/config.ts
  3. 本地测试 npm run dev
  4. 使用Claude Desktop进行部署和测试
  5. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件