Minimal MCP HTTP server — a sanity check for your client → transport → server stack.
| Method | Path | Purpose |
|---|---|---|
| GET | / | Server info + tool listing (JSON). |
| GET | /health | Liveness probe (JSON). |
| POST | /mcp | JSON-RPC 2.0 endpoint. JSON by default; SSE when Accept: text/event-stream. |
| GET | /docs | This page. |
pingReturns 'pong'. Use this to verify the MCP client → transport → server pipeline is wired up end-to-end. Takes no arguments.Initialize handshake:
curl -s -X POST https://mcp-ping.mrashad.com/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'
List tools:
curl -s -X POST https://mcp-ping.mrashad.com/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'
Call ping:
curl -s -X POST https://mcp-ping.mrashad.com/mcp \
-H 'Content-Type: application/json' \
-d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"ping","arguments":{}}}'
id) produce no response entry and a 202 Accepted envelope.-32700, -32600, -32601, -32602, -32603.