# MCP quickstart — grokzilla.shop

Remote MCP server for the public x402 skill catalog. Pay-per-call tools use x402 (USDC on Base, `eip155:8453`). Discovery tools are free. This server does not pay and does not hold a wallet key.

## URL

Streamable HTTP (stateless JSON, no session):

`https://grokzilla.shop/mcp`

Add that URL to an MCP client as a Streamable HTTP server. Example:

```json
{
  "mcpServers": {
    "grokzilla-micro-pay": {
      "url": "https://grokzilla.shop/mcp"
    }
  }
}
```

## What you get

- `list_skills` and `get_skill` are free and read-only.
- One paid tool per public catalog skill (22 on this process). Tool name is the skill id with `-` replaced by `_`.
- Price is the same amount the HTTP route returns in its 402 challenge. Descriptions include the catalog price and "via x402".
- Live payTo in this process: `0xc22f9CAEBAc37fE72D5142f35f21f6696Ea9Ef69`.
- Asset: USDC `0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913`.

| MCP tool | price | HTTP |
|----------|-------|------|
| `osint_graph` | $0.01 | `POST /api/skills/osint-graph` |
| `seo` | $0.012 | `POST /api/skills/seo` |
| `ai_detector` | $0.01 | `POST /api/skills/ai-detector` |
| `json_flatten` | $0.006 | `POST /api/skills/json-flatten` |
| `json_sort` | $0.003 | `POST /api/skills/json-sort` |
| `text_diff` | $0.006 | `POST /api/skills/text-diff` |
| `url_normalize` | $0.005 | `POST /api/skills/url-normalize` |
| `html_clean` | $0.008 | `POST /api/skills/html-clean` |
| `json_schema_validate` | $0.006 | `POST /api/skills/json-schema-validate` |
| `keyword_extract` | $0.008 | `POST /api/skills/keyword-extract` |
| `token_count` | $0.004 | `POST /api/skills/token-count` |
| `sha256` | $0.003 | `POST /api/skills/sha256` |
| `uuid_mint` | $0.003 | `POST /api/skills/uuid-mint` |
| `slugify` | $0.003 | `POST /api/skills/slugify` |
| `pii_redact` | $0.003 | `POST /api/skills/pii-redact` |
| `csv_normalize` | $0.003 | `POST /api/skills/csv-normalize` |
| `base64` | $0.003 | `POST /api/skills/base64` |
| `epoch_convert` | $0.003 | `POST /api/skills/epoch-convert` |
| `url_to_markdown` | $0.003 | `POST /api/skills/url-to-markdown` |
| `token_risk` | $0.005 | `POST /api/skills/token-risk` |
| `json_repair` | $0.0041 | `POST /api/skills/json-repair` |
| `cron_next` | $0.0031 | `POST /api/skills/cron-next` |

## Clients that do not speak x402

`initialize` and `tools/list` work. A paid `tools/call` returns `isError: true` and a PaymentRequired object in `structuredContent` (x402 version 2, scheme exact). The skill handler does not run. Stop there. The server will not complete the call for you.

## Clients that speak x402

Python `x402.mcp` and TypeScript `@x402/mcp` read that challenge, sign an exact USDC payment on Base, and retry `tools/call` with `_meta["x402/payment"]`. The server verifies and settles through its facilitator, then runs the same handler as the HTTP route and returns `_meta["x402/payment-response"]`.

The HTTP `x-master-token` bypass does not apply to MCP.

## curl

After `initialize`, send the notification `notifications/initialized` (HTTP 202), then `tools/list`.

```bash
curl -sS https://grokzilla.shop/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"0.0.1"}}}'
```

```bash
curl -sS https://grokzilla.shop/mcp \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
```

## Also

- Manifest: [https://grokzilla.shop/.well-known/x402](https://grokzilla.shop/.well-known/x402)
- Catalog: [https://grokzilla.shop/api/catalog](https://grokzilla.shop/api/catalog)
- llms.txt: [https://grokzilla.shop/llms.txt](https://grokzilla.shop/llms.txt)
- Try (does not pay): [https://grokzilla.shop/try](https://grokzilla.shop/try)
- Server card: [https://grokzilla.shop/.well-known/mcp/server-card.json](https://grokzilla.shop/.well-known/mcp/server-card.json)
- MCP discovery index: [https://grokzilla.shop/.well-known/mcp](https://grokzilla.shop/.well-known/mcp)
- Registry manifest: [https://grokzilla.shop/.well-known/mcp/server.json](https://grokzilla.shop/.well-known/mcp/server.json)
- Agent card: [https://grokzilla.shop/.well-known/agent-card.json](https://grokzilla.shop/.well-known/agent-card.json)
