Connect · one URL · works with any MCP client

Connect AI2Web to your assistant.

Every AI-ready site exposes one agent entry point: its /ai2w/mcp endpoint. Add that URL to Claude, ChatGPT, Grok or any Model Context Protocol client and the site's actions become tools the assistant can call. No vendor has to adopt ai2w first.

On this page

The one endpoint

An AI2Web manifest advertises an mcp transport. That endpoint speaks the Model Context Protocol over Streamable HTTP, so any MCP-capable assistant can connect to it as a remote server.

Try it with the public demo store:

https://store.ai2web.dev/ai2w/mcp

To find the endpoint for any site, read its manifest at /ai2w and look under transports.mcp.endpoint. If a site is AI-ready, that is the only URL you need.

Claude

Verified live on 2026-07-16 against store.ai2web.dev/ai2w/mcp: initialize, tools list and a tool call all succeeded (transcript below). The in-product connector screen changes over time; confirm the current path in your account.

Claude apps and web. Open Settings → Connectors → Add custom connector, then paste the /ai2w/mcp URL as a remote MCP server. Once added, the site's actions appear as tools in a conversation.

Claude Code. Add it from the terminal:

claude mcp add --transport http ai2web-store https://store.ai2web.dev/ai2w/mcp

Then ask, for example, "check stock for SKU DEMO-001" and the assistant calls the check_stock tool.

ChatGPT

Same endpoint, same protocol. ChatGPT connects to remote MCP servers over Streamable HTTP; the demo endpoint was verified with that transport on 2026-07-16.

On plans that expose connectors and developer mode, add a custom connector / MCP server and paste the /ai2w/mcp URL. ChatGPT lists the site's tools and calls them during a chat. Availability of custom connectors depends on your ChatGPT plan; confirm the current option in Settings → Connectors.

Grok

Two paths, one endpoint.

In the assistant. Where Grok supports remote MCP connectors, add the /ai2w/mcp URL as a custom server.

Via the API. xAI's API is OpenAI-compatible, so you can attach the same endpoint as a remote MCP tool through the Responses API's remote-MCP support, pointing the server URL at /ai2w/mcp. The model then calls the site's tools as part of its response.

Any MCP client

The endpoint is a standard Streamable HTTP MCP server, so anything that speaks MCP can use it, not just the assistants above.

Two transport details worth knowing when you build or debug a client:

Discovery, the manifest, and the same actions are also available over plain REST for clients that do not speak MCP. See the transports section of the docs.

How this was verified

These steps are not asserted. This exact exchange was reproduced against the live demo store on 2026-07-16. You can run it yourself.

1. Initialize (returns a session id)

curl -sD - -o /dev/null -X POST https://store.ai2web.dev/ai2w/mcp \
  -H "accept: application/json, text/event-stream" \
  -H "content-type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize",
       "params":{"protocolVersion":"2025-06-18","capabilities":{},
       "clientInfo":{"name":"demo","version":"1.0"}}}'

# response headers include:  mcp-session-id: <id>
# body: {"result":{"protocolVersion":"2025-06-18",
#   "serverInfo":{"name":"ai2w:Example Store","version":"0.1"}, ...}}

2. List the tools

curl -s -X POST https://store.ai2web.dev/ai2w/mcp \
  -H "accept: application/json, text/event-stream" \
  -H "content-type: application/json" \
  -H "mcp-session-id: <id>" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

# tools: check_stock, track_order, report_issue, start_return,
#        request_refund, check_return_status, ask_store_agent

3. Call a tool

curl -s -X POST https://store.ai2web.dev/ai2w/mcp \
  -H "accept: application/json, text/event-stream" \
  -H "content-type: application/json" \
  -H "mcp-session-id: <id>" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call",
       "params":{"name":"check_stock","arguments":{"sku":"DEMO-001"}}}'

# result: {"sku":"DEMO-001","available":true,"price":"20.00",
#          "currency":"GBP","delivery":"2-4 working days"}

Destructive tools such as request_refund return a preview to approve first; nothing changes state without confirmation. That safe-action model is described in the security section of the docs.