物流集成服务

Shiprocket MCP集成服务,支持远程MCP客户端,提供物流查询、订单管理及配送跟踪功能。

  • by Het-Bhavsar
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Het-Bhavsar/shiprocket-mcp-http

使用说明

🚀 舰载火箭MCP集成(HTTP传输分叉)

信用: 这是由以下公司创建的原始官方Shiprocket MCP服务器的分支 溴化阻燃剂。此分叉通过添加一个 HTTP层(流式HTTPServerTransport) 支持远程MCP客户端(如Claude AI的自定义连接器)。

这是Shiprocket的模型上下文协议(MCP)服务器。

有了这个,你可以:

  • 查看最佳和最快的可用快递合作伙伴(基于城市或邮政编码)及其运费
  • 创建、更新(单笔或批量)和取消订单
  • 直接发货订单
  • 使用AWB编号、Shiprocket订单ID或源订单ID跟踪订单

它通过电子邮件和密码直接连接到您的个人Shiprocket帐户。


这个叉子增加了什么

原始存储库仅支持 stdio 传输,这是本地MCP客户端(如Claude Desktop和Cursor)所必需的。

此存储库使用官方MCP SDK添加了一个完整的基于Express的HTTP服务器 StreamableHTTPServerTransport。这允许您将服务器部署到任何云提供商,并将其与远程MCP客户端(如Claude AI web的自定义连接器)一起使用。

服务器提供:

  • POST /mcp --处理初始化和工具调用
  • GET /mcp --用于通知的SSE流
  • DELETE /mcp --会话终止
  • GET /health --健康检查端点

两者均为原创 stdio 交通与新 HTTP 交通得到了支持。


🛠️ 先决条件

  • 节点(版本>20.0.0和<23.0.0)
  • Claude桌面应用程序(或光标)或像Claude AI这样的远程客户端

🛠️ 安装

1.克隆存储库

git clone https://github.com/Het-Bhavsar/shiprocket-mcp-http.git
cd shiprocket-mcp-http

2.安装依赖项

npm install
npm run build

🔌 用作本地MCP服务器(stdio)

如果您使用的是Claude Desktop或Cursor,您仍然可以通过以下方式使用它 stdio。将以下内容添加到您的 claude_desktop_config.json 或 mcp.json.

{
 "mcpServers": {
   "Shiprocket": {
     "command": "npm",
      "args": [
        "--prefix",
        "{{PATH_TO_SRC}}",
        "start",
        "--silent"
      ],
      "env": {
       "SELLER_EMAIL":"<Your Shiprocket Email>",
       "SELLER_PASSWORD":"<Your Shiprocket password>"
     }
   }
 }
}

🌐 用作远程MCP服务器(HTTP)

您可以将此服务器部署到任何云提供商(例如EC2、DigitalOcean、Heroku),以获取远程客户端的公共HTTP URL。

1.设置环境变量

部署环境必须具有以下环境变量:

  • SELLER_EMAIL:您的Shiprocket帐户电子邮件
  • SELLER_PASSWORD:您的Shiprocket帐户密码
  • MCP_TRANSPORT: HTTP
  • APP_PORT: 3000 (或您的提供商期望的任何端口)

2.启动服务器

npm run start:http

或使用提供的 Dockerfile.

3.连接到Claude AI自定义连接器

在Claude AI设置中,添加新 MCP连接器 使用已部署服务器的URL:

  • 统一资源定位符: https://your-deployed-app.com/mcp

本地HTTP测试

您还可以在本地运行HTTP服务器进行测试:

npm run build
npm run start:http

服务器将于启动 http://localhost:3000.测试运行状况端点:

curl http://localhost:3000/health

MCP工具

客户可以访问以下工具与Shiprocket进行交互:

  • estimated_date_of_delivery -了解更多关于任何地点的交货日期。
  • shipping_rate_calculator -检查可发货快递公司的费率和保险范围。
  • list_pickup_addresses -列出所有已配置的取货地址。
  • order_list -获取最近创建的订单
  • order_track -跟踪任何订单,以了解订单的当前状态。
  • order_ship -根据配置的规则或指定的名称将订单发送给任何可用的快递合作伙伴。
  • order_pickup_schedule -安排订单提货
  • generate_shipment_label -生成订单或装运的标签
  • order_cancel -通过提供订单ID取消订单
  • order_create -创建订单

示例:

  • “给我看看从德里到班加罗尔最快的快递”
  • “对于0.5公斤的货到付款包裹,从德里到班加罗尔的快递选项和交货时间是什么?”
  • “我的订单在哪里?”
  • “把包裹送到孟买需要多长时间?”