article
README
🚀 1NCE IoT 平台 MCP 服务器
本项目是一个模型上下文协议 (MCP) 服务器,能让人工智能代理借助自然语言与 1NCE 物联网连接管理平台进行交互,极大地简化了物联网设备连接管理的流程。
🚀 快速开始
该项目提供了一层中间件,把大型语言模型 (LLMs) 连接到 1NCE API,用于管理物联网连接。AI 助手可通过它获取产品信息、管理订单、监控 SIM 卡状态等,借助 Model Context Protocol 功能,AI 代理能用自然语言与物联网基础架构交互,简化了连接设备的管理。
✨ 主要特性
- 身份验证:基于 OAuth 2.0 令牌的安全身份验证,使用 1NCE API。
- 产品管理:可查询可用的物联网连接产品。
- 订单管理:支持创建和跟踪订单。
- SIM 管理:能监控和配置 SIM 卡。
- 资源:可直接访问 SIM 状态和产品数据。
- 提示:提供用于常见任务的预定义交互模板。
📦 安装指南
先决条件
- Python 3.8+
- FastMCP v2
- 带有 API 凭证的 1NCE 账户
安装步骤
- 克隆此仓库
git clone https://github.com/yourusername/1nce-mcp-server.git
cd 1nce-mcp-server
- 安装所需的依赖项
pip install fastmcp httpx
- 设置环境变量,使用你的 1NCE API 凭证
export ONCE_CLIENT_ID="your_client_id"
export ONCE_CLIENT_SECRET="your_client_secret"
💻 使用示例
使用 FastMCP 安装
推荐使用 FastMCP CLI 安装此 MCP 服务器:
fastmcp install 1nce_mcp.py
这将使服务器对兼容的 MCP 客户端可用,包括 Claude Desktop。
直接运行
在开发或测试时,可以直接运行服务器:
python 1nce_mcp.py
使用客户端
你可以使用 FastMCP 客户端与服务器进行程序化交互:
from fastmcp import Client
async with Client("1nce_mcp.py") as client:
# 获取所有产品列表
products = await client.call_tool("get_all_products")
print(products)
# 检查 SIM 状态
sim_status = await client.call_tool("get_sim_status", {"iccid": "your_sim_iccid"})
print(sim_status)
可用工具
产品工具
get_all_products()- 获取所有可用的 1NCE 产品
订单工具
get_all_orders(page, page_size, sort)- 使用分页获取订单列表get_order_by_number(order_number)- 获取特定订单的详细信息create_order(products, delivery_address, customer_reference)- 创建新订单
SIM 工具
get_all_sims(page, page_size, query, sort)- 列出 SIM 卡,带过滤选项get_sim_details(iccid)- 获取特定 SIM 的详细信息get_sim_status(iccid)- 检查 SIM 的连接状态get_sim_data_quota(iccid)- 检查 SIM 剩余数据配额
微信扫一扫