TrackMage
官方通过TrackMage API实现货运追踪和物流管理功能
你可以用 TrackMage MCP 做什么?
-
创建用于跟踪的货件 — 使用
create_shipment注册一个跟踪号,并可选择设置承运人和通知电子邮件。 -
获取货件跟踪检查点 — 使用
get_shipment_checkpoints检索货件的详细检查点事件。 -
从跟踪号检测承运人 — 使用
detect_carrier查找与跟踪号格式匹配的可能承运人。 -
列出工作区中的货件 — 使用
list_shipments浏览货件,可进行可选的分页和工作区过滤。 -
一次重新跟踪多个货件 — 使用
retrack_shipments批量重新触发多个跟踪号的跟踪。 -
同时管理订单和货件 — 通过
create_order、update_order和list_orders创建、更新和列出订单。
文档
TrackMage MCP 服务器 - 物流追踪 API 与物流 API 集成
一个基于模型上下文协议(MCP)的服务器,用于物流追踪 API、包裹监控和物流管理,使用 TrackMage API。支持全球 1600 多家承运商。
功能特性
- 承运商支持:追踪全球 1600 多家承运商的包裹(完整列表)
- 资源:工作区、货件、订单、承运商、追踪状态
- 工具:创建货件/订单、获取货件检查点、承运商检测
- 认证:基于客户端凭证的 OAuth
⚠️ 数据隐私声明
与您的 LLM 提供商共享数据:此 MCP 服务器会向您使用的任何 LLM(Claude、ChatGPT 等)提供数据。虽然这是 MCP 服务器的预期行为,但请确保您愿意与所选 LLM 提供商共享物流数据,包括追踪号码、客户电子邮件、地址和货件详情。
最佳实践:
- 如果您有隐私顾虑,请仅使用非敏感或测试数据
- 检查您的 LLM 提供商的数据处理政策
- 如果可用,考虑退出训练数据计划
- 确保符合您组织的数据政策
前提条件
- Node.js v18+
- TrackMage 账户
获取凭证
- 注册并登录 TrackMage。
- 前往 设置 > API 密钥。
- 输入 应用名称(例如 "MCP")和 应用 URL(例如
http://localhost:3000)。 - 点击 生成 并复制您的 客户端 ID 和 客户端密钥。
- 从仪表板 URL 中记下您的 工作区 ID。
安装
选项 1:本地设置
git clone https://github.com/yourusername/trackmage-mcp-server.git
cd trackmage-mcp-server
npm install
cp .env.example .env
# Edit .env with your credentials
npm start
配置
编辑 .env:
TRACKMAGE_CLIENT_ID=your_client_id_here
TRACKMAGE_CLIENT_SECRET=your_client_secret_here
TRACKMAGE_WORKSPACE_ID=your_workspace_id_here
使用方法
运行服务器:
npm start
然后使用
{
"mcpServers": {
"trackmage": {
"transport": {
"type": "http",
"host": "localhost",
"port": 3000
}
}
}
}
或使用文件进程:
{
"mcpServers": {
"trackmage": {
"command": "node",
"args": ["/path/to/trackmage-mcp-server/index.js"],
"env": {
"TRACKMAGE_CLIENT_ID": "your_client_id_here",
"TRACKMAGE_CLIENT_SECRET": "your_client_secret_here",
"TRACKMAGE_WORKSPACE_ID": "your_workspace_id_here"
}
}
}
}
MCP 资源
trackmage:///workspaces/{id}trackmage:///shipments/{id}trackmage:///orders/{id}trackmage:///carriers/{id}trackmage:///tracking_statuses/{id}
MCP 工具
货件管理
-
create_shipment:创建新货件- 参数:
{ trackingNumber, originCarrier?, email?, workspaceId? } - 返回:已创建的货件对象
- 参数:
-
update_shipment:更新现有货件- 参数:
{ shipmentId, trackingNumber?, originCarrier?, email?, status? } - 返回:已更新的货件对象
- 参数:
-
list_shipments:列出工作区中的货件- 参数:
{ workspaceId?, page?, itemsPerPage? } - 返回:货件对象数组
- 参数:
-
get_shipment_checkpoints:获取货件的追踪检查点- 参数:
{ shipmentId } - 返回:追踪检查点事件数组
- 参数:
-
retrack_shipments:通过追踪号码重新追踪多个货件- 参数:
{ trackingNumbers: [{ number, originCarrier? }], workspaceId? } - 返回:重新追踪结果
- 参数:
订单管理
-
create_order:创建新订单- 参数:
{ orderNumber, email?, workspaceId? } - 返回:已创建的订单对象
- 参数:
-
update_order:更新现有订单- 参数:
{ orderId, orderNumber?, email?, status? } - 返回:已更新的订单对象
- 参数:
-
list_orders:列出工作区中的订单- 参数:
{ workspaceId?, page?, itemsPerPage? } - 返回:订单对象数组
- 参数:
承运商管理
-
list_carriers:列出可用承运商- 参数:
{ page?, itemsPerPage? } - 返回:包含代码和名称的承运商对象数组
- 参数:
-
detect_carrier:检测追踪号码可能的承运商- 参数:
{ trackingNumber } - 返回:可能的承运商匹配数组
- 参数:
测试
npm test