Token导航 LogoToken导航TokenDH.com
Mock Ecom MCP Server logo
运维云端未说明官方级别未说明来源级核验

Mock Ecom MCP Server

MCP Server

一个通用的模拟MCP服务器,用于电商AI聊天机器人集成,支持多类别商品和食品配送服务。

工具数

28

提示词数

0

GitHub Stars

0

资源数

0
JavaClaude云端部署Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

arpanm

提供方

arpanm

最后核验

2026/5/17 20:21

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

模拟电子商务MCP服务器

通用型 模拟MCP(模型上下文协议)服务器 建于 Java 21+Spring Boot 3.3.6+Spring AI 1.0.0-M6.

一个使用此服务器的AI聊天机器人可以为跨平台的用户提供服务 杂货、时尚、电子、美容和家居 类别,以及 外卖 (旋转风格的餐厅)。暴露 40+MCP工具 任何兼容MCP的AI客户端(Claude、GPT、Gemini等)都可以发现和调用。

______________________________________________________________________

目录

  1. 需求
  2. 建筑
  3. 代码结构
  4. 本地运行时--快速入门
  5. Web UI——数据浏览器
  6. 本地端点
  7. 28种电子商务MCP工具
  8. 餐厅和Swiggy刮刀工具
  9. 种子数据管道
  10. LLM产品数据生成
  11. 测试用例
  12. 在本地运行测试
  13. 生产部署
  14. 连接MCP客户端
  15. 状态 & 全部

______________________________________________________________________

需求

功能需求

  • 暴露 28个MCP工具 通过HTTP/SSE实现AI聊天机器人集成
  • 支持 5个产品类别:杂货、时尚、电子、美容、家居
  • 完整的电子商务流程:搜索→ cart → 结账→ 支付→ 订单→ 装运→ 审查
  • 通过电话号码+平台密码进行基于会话的身份验证
  • 模拟数据生成——不需要真正的数据库种子;产品按需生成
  • 支持门票和愿望清单管理

非功能性需求

  • Java 21 最小
  • 用于本地/dev的内存H2数据库;PostgreSQL用于生产
  • 所有工具均以结构化JSON字符串进行响应
  • 会话TTL:24小时
  • 分页:默认10个项目,最多50个
  • 异步生成产品以避免阻止搜索响应

先决条件

工具版本
Java(JDK)21+
Maven3.8+
Docker+Docker Compose任何最新版本(用于prod模式)

______________________________________________________________________

建筑

┌─────────────────────────────────────────────────────────────┐
│                        MCP Client                           │
│          (Claude Desktop / VS Code / Custom App)            │
└─────────────────────┬───────────────────────────────────────┘
                      │  HTTP/SSE  (MCP Protocol)
                      ▼
┌─────────────────────────────────────────────────────────────┐
│              Spring Boot MCP Server  :8080                  │
│  ┌──────────────────────────────────────────────────────┐   │
│  │  MCP Tool Layer  (12 Tool Classes, 28 Tools)         │   │
│  │  ProductSearch · ProductDetail · Delivery · Auth     │   │
│  │  Cart · Address · Payment · Order · Shipment         │   │
│  │  Ticket · Review · Wishlist                          │   │
│  └──────────────────────┬───────────────────────────────┘   │
│  ┌──────────────────────▼───────────────────────────────┐   │
│  │  Service Layer  (12 Services)                        │   │
│  │  Auth · Product · Cart · Checkout · Order · Payment  │   │
│  │  Address · Delivery · Review · Ticket · Wishlist     │   │
│  │  MockDataGenerator                                   │   │
│  └──────────────────────┬───────────────────────────────┘   │
│  ┌──────────────────────▼───────────────────────────────┐   │
│  │  Repository Layer  (16 Spring Data JPA Repos)        │   │
│  └──────────────────────┬───────────────────────────────┘   │
│  ┌──────────────────────▼───────────────────────────────┐   │
│  │  Database: H2 (dev/test)  │  PostgreSQL (prod)       │   │
│  └──────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────┘

数据流——端到端购物之旅

Login (phone) → sessionId
  → searchProducts / filterProducts
    → addToCart (sessionId)
      → checkout (cartId, sessionId)
        → selectAddress (checkoutId, addressId, sessionId)
          → initiatePayment (checkoutId, method, sessionId)
            → orderId created automatically
              → getOrderDetails / getShipments
                → submitProductReview / createTicket

关键设计决策

  • 按需模拟数据 --产品是从搜索关键字+类别中确定地生成的;无需人工播种
  • SSE运输 --工具通过服务器发送事件公开,以提供实时流媒体支持
  • 内存中的H2 对于dev意味着零设置;模式在启动时创建,在退出时删除
  • 异步生成 --当搜索没有返回结果时,将在后台异步生成8个产品

______________________________________________________________________

代码结构

src/
├── main/java/com/mock/ecom/mcpserver/
│   ├── MockEcomMcpServerApplication.java   # Entry point (@EnableAsync)
│   ├── config/
│   │   ├── AppProperties.java              # App config (session TTL, secret, pagination)
│   │   ├── AsyncConfig.java                # Thread pool (5 core, 20 max, 100 queue)
│   │   └── McpToolsConfig.java             # Registers all 12 tool classes with MCP
│   ├── entity/                             # 16 JPA entities
│   │   ├── Customer, Session, Address
│   │   ├── Product, ProductAttribute
│   │   ├── Cart, CartItem, Checkout
│   │   ├── Order, OrderItem, Payment
│   │   ├── Shipment, Review
│   │   ├── Ticket, TicketComment, WishlistItem
│   ├── repository/                         # 16 Spring Data JPA repositories
│   ├── service/                            # 12 business services
│   │   ├── AuthService.java                # Session create/validate, customer lookup
│   │   ├── ProductService.java             # Search, filter, reviews, lazy generation
│   │   ├── MockDataGeneratorService.java   # Deterministic mock data for 5 categories
│   │   ├── CartService.java                # Add to cart, recalculate totals, checkout
│   │   ├── CheckoutService.java            # Checkout lifecycle
│   │   ├── OrderService.java               # Order creation and status transitions
│   │   ├── PaymentService.java             # Payment initiation and status
│   │   ├── AddressService.java             # Address CRUD
│   │   ├── DeliveryService.java            # Delivery estimate by pincode
│   │   ├── ReviewService.java              # Product and shipment reviews
│   │   ├── TicketService.java              # Support tickets and comments
│   │   └── WishlistService.java            # Wishlist add/view
│   └── tools/                              # 12 MCP tool classes
│       ├── ProductSearchTools.java         # Tools 1-4
│       ├── ProductDetailTools.java         # Tools 5-6
│       ├── DeliveryTools.java              # Tool 7
│       ├── AuthTools.java                  # Tool 8
│       ├── CartTools.java                  # Tools 9-10
│       ├── AddressTools.java               # Tools 11-12
│       ├── PaymentTools.java               # Tools 13-14
│       ├── OrderTools.java                 # Tools 15-19
│       ├── ShipmentTools.java              # Tool 20
│       ├── TicketTools.java                # Tools 21-24
│       ├── ReviewTools.java                # Tools 25-26
│       ├── WishlistTools.java              # Tools 27-28
│       └── ToolResponseHelper.java         # JSON serialization utility
└── main/resources/
    ├── application.yml                     # Dev profile (H2, port 8080)
    ├── application-test.yml                # Test profile (H2, separate DB)
    └── application-prod.yml                # Prod profile (PostgreSQL, env vars)

src/test/java/com/mock/ecom/mcpserver/
├── MockEcomMcpServerApplicationTests.java
└── integration/
    ├── EndToEndShoppingJourneyTest.java    # Full 28-tool flow
    ├── AuthAndCartFlowTest.java            # Tools 8-14
    ├── ProductToolsIntegrationTest.java    # Tools 1-7
    ├── OrderManagementTest.java            # Tools 15-20
    ├── TicketAndReviewTest.java            # Tools 21-26
    ├── WishlistTest.java                   # Tools 27-28
    └── MockDataGeneratorTest.java          # Data generation logic

实体关系

Customer ──── Product
Customer ──── Product
Cart ──── Checkout ──── Order ──── Product
Checkout ──, quantity=1, sessionId=)

______________________________________________________________________

餐厅和Swiggy刮刀工具

该服务器包括一个完整的Swiggy数据抓取器和餐厅查询层,增加了 12个新的MCP工具 用于食品配送用例。

它在创业中是如何运作的

订单组件操作
1CityDataInitializer用lat/lng(幂等)为印度50个主要城市播种
2SeedDataLoader如果 classpath:db/seed/seed-data.json 存在,餐厅桌子是空的,加载刮餐厅+菜单
3ProductSeedLoader如果 classpath:db/seed/products-seed.json 存在,产品表为空,加载70个预生成的产品
4SampleRestaurantDataSeeder如果餐厅桌子仍然是空的,则加载10个硬编码的演示餐厅作为后备
5ScraperAutoStartRunner如果 app.scraper.auto-start=true,异步启动实时抓取

餐厅查询工具(6个工具)

工具参数说明
listRestaurantCities--印度所有50个拥有餐厅数量和刮擦状态的城市
searchRestaurantscityName, cuisine, name, isPureVeg, page, pageSize按任意组合搜索;按评级排序的结果
getRestaurantBySwiggyIdswiggyId餐厅详细信息
getRestaurantMenuswiggyId按类别分组的完整菜单,包括项目价格(以印度卢比计)
searchMenuItemsquery, cityName, page, pageSize按名称查找城市中所有餐厅的菜肴
filterRestaurantMenuItemsswiggyId, isVeg, inStock按蔬菜/非蔬菜、可用性筛选餐厅菜单

刮板控制工具(6个工具)

工具参数说明
getScraperStatus--城市/餐厅/菜单计数;刮擦是否正在运行
startRestaurantScraping--对所有未被抓取的城市开始异步抓取(跳过已完成)
scrapeRestaurantsForCitycityName同步报废单个城市;返回新餐厅数量
startMenuScraping--为所有没有菜单的餐厅启动异步菜单抓取
scrapeRestaurantMenuswiggyId同步删除一家餐厅的菜单
exportSeedData--将所有数据导出到 ./seed-export/seed-data.json 为承诺

从Swiggy抓取实时数据

要求: 网络访问 www.swiggy.com.服务器必须在能够访问Swiggy的API的计算机上运行。

第1步-取消所有餐厅:

{ "name": "startRestaurantScraping", "arguments": {} }

监视器 getScraperStatus每个城市大约需要30-120秒(速率限制为1.5秒)。所有50个城市都需要1~2个小时。

步骤2–废弃菜单:

{ "name": "startMenuScraping", "arguments": {} }

数千家餐厅可能需要几个小时。两个刮刀都是 渐进的 –可以随时中断和恢复。

步骤3–检查进度:

{ "name": "getScraperStatus", "arguments": {} }

退货 totalCities, scrapedCities, totalRestaurants, restaurantsWithMenu以及奔跑的旗帜。

______________________________________________________________________

种子数据管道

种子数据管道允许您将抓取的数据提交到git,这样每次新部署都会满载启动,不需要重新抓取。

导出抓取的数据

刮完之后,打电话给 exportSeedData MCP工具:

{ "name": "exportSeedData", "arguments": {} }

这写道 ./seed-export/seed-data.json --一个包含所有餐厅及其完整菜单的便携式JSON文件。

提交种子文件

cp seed-export/seed-data.json src/main/resources/db/seed/seed-data.json
git add src/main/resources/db/seed/seed-data.json
git commit -m "chore: add scraped Swiggy restaurant seed data (N restaurants)"
git push

重建和部署

mvn clean package -DskipTests
java -jar target/mcp-server-1.0.0-SNAPSHOT.jar

在首次使用新数据库启动时, SeedDataLoader 检测种子文件并自动导入所有数据。 SampleRestaurantDataSeeder 当数据已经存在时跳过。

重新抓取后的增量更新

当你重新运行刮刀来挑选新餐厅时:

  • 城市: scrapeRestaurantsForCity Swiggy ID的更新——更新现有餐厅,插入新餐厅
  • 菜单: startMenuScraping 跳过以下餐厅 menuScraped = true;使用 scrapeRestaurantMenu 强制刷新一家餐厅
  • 重新抓取后,致电 exportSeedData 再次复制新文件,并提交

数据持久性(开发)

开发H2数据库持续存在 ./data/mockecomdb.* (基于文件的H2)。数据在服务器重启后仍然有效。这 ./data/ 目录是 .gitignored——仅出口 seed-data.jsonsrc/main/resources/db/seed/ 承诺。

______________________________________________________________________

LLM产品数据生成

服务器可以使用Anthropic LLM(Claude)来生成 按需提供真实的印度市场产品数据.当产品搜索或筛选器未返回现有结果,并且配置了Anthropic API密钥时,服务器调用 claude-haiku-4-5 生成产品,将其保存到数据库,并将其返回给调用者。

运作原理

MCP call: searchProducts / filterProducts
    │
    ▼
productRepository.searchByQuery(...)  →  results found?
    │ no results                              │ yes
    ▼                                         ▼
LlmProductGeneratorService.isAvailable()?  return existing data
    │ yes (API key set)        │ no
    ▼                          ▼
callAnthropicAPI(...)     MockDataGeneratorService (deterministic fallback)
    │
    ▼
Parse JSON → save Products + ProductAttributes to DB
    │
    ▼
Return newly generated products to MCP caller

生成的产品是 持久化到数据库 立即,所以:

  • 对同一查询的后续调用返回已保存的产品(没有额外的API调用)
  • 数据可以导出为种子JSON并提交,以便新的部署开始完全加载

设置--启用LLM生成

选项A:环境变量(推荐)

export ANTHROPIC_API_KEY=sk-ant-your-key-here
mvn spring-boot:run

选项B:application.yml

app:
  llm:
    api-key: sk-ant-your-key-here
    model: claude-haiku-4-5-20251001   # default, any Claude model works
    enabled: true
注: API密钥故意不提交给git。始终通过环境变量或局部变量传递它 .env 文件已从版本控制中排除。

ANTHROPIC_API_KEY 未设置, LlmProductGeneratorService.isAvailable() 回报 false 服务器回退到 MockDataGeneratorService --从哈希种子生成的确定性模拟产品。不会抛出任何错误。

种子产品-Seed.json从LLM输出

通过MCP调用(或直接通过REST API)生成产品后,将其导出到种子文件:

{ "name": "exportProductSeedData", "arguments": {} }

这写道 ./seed-export/products-seed.json。将其复制到resources目录并提交:

cp seed-export/products-seed.json src/main/resources/db/seed/products-seed.json
git add src/main/resources/db/seed/products-seed.json
git commit -m "chore: add LLM-generated product seed data"
git push

在下一次新的部署中, ProductSeedLoader (@Order 3)在调用LLM之前自动加载文件。

加载产品种子的启动订单

订单组件操作
1CityDataInitializer用lat/lng(幂等)为印度50个主要城市播种
2SeedDataLoader负载 classpath:db/seed/seed-data.json (餐厅+菜单)如果DB为空
3ProductSeedLoader负载 classpath:db/seed/products-seed.json 如果产品表为空
4SampleRestaurantDataSeeder回退:如果仍为空,则加载10个硬编码的演示餐厅
5ScraperAutoStartRunner如果 app.scraper.auto-start=true,开始实时抓取

预加载种子数据

承诺 src/main/resources/db/seed/products-seed.json 包含 70产品 在所有类别中:

类别计数品牌
电子15三星、OnePlus、苹果、boAt、索尼、小米、惠普、戴尔、华硕、JBL、Realme、佳能
时尚15Fabindia、巴塔、李维斯、彪马、艾伦·索利、Manyavar、耐克、阿迪达斯、Fossil、W for Women
杂货15塔塔、财富、阿穆尔、Aashirvaad、MDH、Haldirams、雀巢、Dabur、Patanjali、Saffola
美丽13拉克梅、喜马拉雅、玛玛尔思、哇、欧莱雅、露得清、多芬、卡尼尔、妮维雅、李子
主页12威望、飞利浦、巴贾吉、大提琴、戈德雷、弥尔顿、索利莫、鸽子、尼尔卡马尔、蝴蝶

所有产品都使用现实的印度卢比定价,并提供有意义的折扣,并包括3-5个特定类别的属性(例如,电子产品的保修+RAM+处理器;杂货的保质期+FSSAI认证)。

环境变量摘要

变量默认值描述
ANTHROPIC_API_KEY*(空)*无烟煤API键。设置后,启用LLM产品生成。
app.llm.modelclaude-haiku-4-5-20251001用于生成的Claude模型(设置在 application.yml)
app.llm.enabledtrue主开关;着手 false 即使存在API密钥,也要强制使用模拟数据

______________________________________________________________________

测试用例

测试套件(7个文件,83个测试)

文件涵盖的工具测试计数关键场景
MockEcomMcpServerApplicationTests--1成功加载Spring上下文
ProductToolsIntegrationTest1–7~20多类别搜索、分页、过滤器、交付时间
AuthAndCartFlowTest8–14~9登录有效/无效、购物车生命周期、结账、付款
OrderManagementTest15–20~15订单检索、取消、退货、OTP、发货跟踪
TicketAndReviewTest21–26~18工单创建(所有类型)、评论、产品和交付评论
WishlistTest27–28~10添加、查看、分页、防止重复
EndToEndShoppingJourneyTest1–28~10涵盖所有5个类别的完整购物之旅
MockDataGeneratorTest--~10类别检测、产品生成、属性生成

端到端流程(端到端购物旅程测试)

1.  serverToServerLogin        → sessionId
2.  searchProducts             → productId
3.  filterProducts             → filtered list
4.  getFilters                 → filter facets
5.  getSortOptions             → sort options
6.  getProductDetails          → product info
7.  getProductReviews          → reviews
8.  getDeliveryTime            → estimate
9.  addToWishlist              → wishlistItem
10. getWishlist                → wishlist
11. addToCart (x2 products)    → cartId
12. checkout                   → checkoutId
13. getAddresses               → addressId
14. selectAddress              → confirmed
15. initiatePayment (UPI)      → paymentId, orderId
16. getPaymentStatus           → SUCCESS
17. getOrderDetails            → order + items
18. getOrders                  → history
19. getShipments               → shipmentId
20. sendDeliveryOtp            → OTP sent
21. createTicket               → ticketId
22. getTickets                 → list
23. getTicketDetails           → ticket + comments
24. addTicketComment           → comment added
25. submitProductReview        → review saved
26. submitShipmentReview       → review saved

______________________________________________________________________

在本地运行测试

# Run all tests (uses test profile with separate H2 DB)
mvn test

# Run a specific test class
mvn test -Dtest=EndToEndShoppingJourneyTest

# Run a specific test method
mvn test -Dtest=ProductToolsIntegrationTest#testSearchProducts

# Run with verbose output
mvn test -Dsurefire.useFile=false

# Run tests + generate coverage report (if jacoco configured)
mvn verify

# Skip tests during build
mvn clean package -DskipTests

测试配置文件

测试使用 application-test.yml:

  • 在内存DB中分离H2: jdbc:h2:mem:testdb
  • 为每次测试运行创建新的架构(ddl-auto: create-drop)
  • NON_KEYWORDS=VALUE 添加以避免H2 SQL关键字冲突
  • 禁用SQL日志记录以获得更清晰的输出

CI(GitHub操作)

通过以下方式在每次推送/PR上自动运行测试 .github/workflows/build.yml:

  • Java 21(temurin),Maven缓存
  • mvn clean verify -Dspring.profiles.active=test
  • JAR工件上传成功

______________________________________________________________________

生产部署

Docker Compose(推荐)

# Build the JAR
mvn clean package -DskipTests

# Start app + PostgreSQL
docker-compose up --build -d

# View logs
docker-compose logs -f app

# Stop
docker-compose down

服务已启动:

  • 应用 --端口上的Spring Boot 8080,个人资料 prod
  • Postgres --PostgreSQL 16端口 5432,DB mockecomdb

PostgreSQL数据保存在Docker卷中 pgdata.

自定义环境变量

docker-compose up \
  -e DB_PASSWORD=supersecret \
  -e SERVER_PORT=9000 \
  --build

或者创建一个 .env 旁边的文件 docker-compose.yml:

DB_URL=jdbc:postgresql://myhost:5432/mydb
DB_USERNAME=myuser
DB_PASSWORD=mysecret
SPRING_PROFILES_ACTIVE=prod

手动JAR部署

# Build
mvn clean package -DskipTests

# Run with prod profile
java -jar target/mcp-server-1.0.0-SNAPSHOT.jar \
  --spring.profiles.active=prod \
  --server.port=8080 \
  --DB_URL=jdbc:postgresql://localhost:5432/mockecomdb \
  --DB_USERNAME=postgres \
  --DB_PASSWORD=postgres

Kubernetes/云

服务器是无状态的(数据库中的所有状态),因此可以水平扩展。关键考虑因素:

  • spring.jpa.hibernate.ddl-auto=update (已设置 application-prod.yml)
  • 使用托管PostgreSQL服务(RDS、Cloud SQL等)
  • 将环境变量挂载为Kubernetes的秘密
  • 活体探针: GET /actuator/health
  • 准备就绪探针: GET /actuator/health

______________________________________________________________________

连接MCP客户端

克劳德桌面

编辑 ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "mock-ecom": {
      "url": "http://localhost:8080/sse",
      "type": "sse"
    }
  }
}

重新启动克劳德桌面。您将看到28个可用工具。

克劳德代码(CLI)

# Add MCP server
claude mcp add mock-ecom --transport sse http://localhost:8080/sse

# List configured servers
claude mcp list

# Remove
claude mcp remove mock-ecom

或编辑 ~/.claude/settings.json:

{
  "mcpServers": {
    "mock-ecom": {
      "type": "sse",
      "url": "http://localhost:8080/sse"
    }
  }
}

VS代码(复制/继续/临床)

添加到您的VS代码 settings.json:

{
  "mcp": {
    "servers": {
      "mock-ecom": {
        "type": "sse",
        "url": "http://localhost:8080/sse"
      }
    }
  }
}

自定义MCP客户端(Python)

from mcp import ClientSession
from mcp.client.sse import sse_client

async with sse_client("http://localhost:8080/sse") as (read, write):
    async with ClientSession(read, write) as session:
        await session.initialize()
        tools = await session.list_tools()
        result = await session.call_tool("searchProducts", {
            "query": "laptop",
            "page": 0,
            "pageSize": 10
        })

自定义MCP客户端(JavaScript/TypeScript)

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { SSEClientTransport } from "@modelcontextprotocol/sdk/client/sse.js";

const transport = new SSEClientTransport(
  new URL("http://localhost:8080/sse")
);
const client = new Client({ name: "my-client", version: "1.0.0" }, {});
await client.connect(transport);

const result = await client.callTool("serverToServerLogin", {
  phone: "9999999999",
  platform: "WEB",
  secret: "mock-platform-secret-key"
});

正在验证连接

# Test SSE endpoint is alive
curl -N http://localhost:8080/sse

# Health check
curl http://localhost:8080/actuator/health

______________________________________________________________________

状态 & 全部

当前状态:✅ 工作

功能状态
28个MCP工具通过SSE暴露✅ 完成
模拟数据生成(5类)✅ 完成
通过Anthropic API生成LLM产品✅ 完成
70个产品种子文件(共5个类别)✅ 完成
新部署时自动加载产品种子✅ 完成
基于H2文件的开发数据库(在重新启动后持续存在)✅ 完成
PostgreSQL生产支持✅ 完成
基于会话的身份验证✅ 完成
完整的购物流程(搜索→ 顺序)✅ 完成
支持票和评论✅ 完成
产品和装运审核✅ 完成
愿望清单✅ 完成
Swiggy餐厅摩天大楼(50个城市)✅ 完成
餐厅+菜单种子数据管道✅ 完成
React Web UI(餐厅+产品浏览器)✅ 完成
用于所有数据(餐厅、产品、统计数据)的REST API✅ 完成
83次集成测试✅ 完成
Docker+Docker组合✅ 完成
GitHub操作CI✅ 完成
一个命令本地启动脚本✅ 完成

TODO/未来增强功能

优先级项目
通过可配置网关添加真正的OTP交付(短信/电子邮件)
添加地址创建工具(当前地址是自动生成的)
添加产品图片上传支持
中等添加优惠券/折扣码工具
中等添加产品库存管理工具
中等添加管理工具(更新订单状态、解决工单)
中等基于JWT的身份验证作为平台秘密的替代方案
中等REST端点的Swagger/OpenAPI文档
为产品搜索结果添加Redis缓存
添加Elasticsearch以获得更好的全文搜索
多语言/多货币支持
MCP工具调用的速率限制
订单状态更改的Webhook通知
将订单导出为PDF/CSV

已知限制

  • 无法通过MCP工具创建地址(可以使用自动生成的模拟地址)
  • 支付处理完全模拟(UPI/CARD/NETBANKING/WALLET总是成功,COD总是成功)
  • 生成交付OTP,但实际上并没有发送到任何地方
  • 产品图片来源于 picsum.photos (外部依赖性)
  • H2数据 持续 在开发模式下跨重启(基于文件的数据库 ./data/).删除 ./data/ 重置。
  • Live Swiggy抓取需要无限制的互联网访问 www.swiggy.com;沙盒/受限环境必须使用提交的种子文件

______________________________________________________________________

文档

目录标签

目录标签

JavaClaude云端部署电商本地部署AI聊天机器人模拟服务器食品配送

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

api-key

工具数量(toolCount,工具数)

28

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明api-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP