mcpField
W
WebMCP Demo Store

WebMCP Demo Store

Remote
demowithmcp.converso.workDeveloper Tools0Updated 1w ago

About WebMCP Demo Store

WebMCP Demo Store is a small store server and benchmark for agents, with plain-page and MCP-backed modes for comparing catalog access.

Key features

  1. 01Plain and WebMCP modes
  2. 02Product search and cart tools
  3. 03Chrome-native WebMCP support
  4. 04DOM and token benchmark
  5. 05Standard-library-only server

Use cases

  1. 01Compare page scraping with MCP calls
  2. 02Test agent workflows on a product catalog
  3. 03Measure task bytes and input tokens

MCP support

In WebMCP mode, the store exposes catalog and shopping operations through an MCP-over-HTTP `/mcp` endpoint. It also registers tools through Chrome's `document.modelContext` API.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://demowithmcp.converso.work/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

Details

From the project README

WebMCP Demo Store — one-file server, two modes, one benchmark

Listed on mcpservers.org

Same store, same tools, two delivery modes:

  • WebMCP mode — the page exposes its catalog through MCP tool calls (MCP-over-HTTP /mcp, plus Chrome-native document.modelContext), so an agent reads only what the task needs.
  • Plain mode — the same store as an ordinary website; the agent parses full HTML pages, as every agent must today.

Benchmark (150-product catalog, identical tasks): 79% less action bytes, 42% fewer input tokens, 8/8 tasks correct in both modes. DOM mode wins on small catalogs then collapses; WebMCP wins with age. Crossover report: report.html → WebMCP_Comparison_Report.pdf.

Run it

python3 server.py                    # plain mode      → http://localhost:9501
MCP=1 PORT=9502 python3 server.py    # WebMCP mode     → http://localhost:9502 + /mcp

stdlib-only (http.server, json, uuid, threading) — no pip install, no dependencies.

Live demos

Chrome-native WebMCP test (13 Oct 2026)

Chrome 154 + --enable-features=WebMCP exposes document.modelContext on HTTPS origins (about:blank excluded).

  • Registered the 5-tool store contract via the IMPERATIVE API (registerTool): search_products, add_to_cart, get_cart, checkout (server-backed; all fetches in-page).
  • Standard client flow verified: getTools() discovery → executeTool() calls → orders 1017/1018 placed, T2/T4/T8 picks correct (HP Pavilion 14, Razer DeathAdder, OnePlus 12R).
  • 154 build quirks found & worked around:
    1. executeTool(tool, args) requires args as a JSON string (object form throws "Failed to parse input arguments"); return values are JSON strings too — JSON.parse both sides.
    2. Tools can't be re-registered under the same name (InvalidStateError) — reload the page to reset.
    3. Flag/feature name: --enable-features=WebMCP works headless; docs' chrome://flags/#enable-webmcp-testing is the manual path. Note: API is document.modelContext (moved from navigator since July 2026 build).
  • Takeaway: the demo's tool contract is compatible with Chrome's native WebMCP, not just our JSON-RPC shim. When Chrome ships the client agent (Gemini-in-Chrome), the store is already agent-ready.

Repo layout

pathwhat
server.pythe whole thing: store + cart + orders + MCP transport (MCP=1) + static/report serving
catalog.json / catalog_10.json150-product / 10-product demo catalogs
compare.py, compare_llm.py, browser_llm.pybenchmark harnesses (DOM-mode agent, LLM-token accounting, browser-native flow)
make_report.pyregenerates the HTML/PDF reports from results.json / agg_150_vs_30.json
whitepaper.html, report*.html, *.pdf, chart_*.pngstrategy + evidence artifacts (launch deck included)
weekly_recap.pycounters + live-URL digest (used by the ops cron)

License

MIT.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.