MCP Playground

Test Model Context Protocol (MCP) servers live in your browser. Inspect protocol handshakes, send tools/call requests, and validate JSON-RPC 2.0 responses.

  • Free
  • No sign-in
  • Requests go straight from your browser

1 Build a request

Method
Request · JSON-RPC 2.0
{
  "jsonrpc": "2.0",
  "id": 3,
  "method": "tools/call",
  "params": {
    "name": "search_mcp_servers",
    "arguments": {
      "query": "postgres",
      "limit": 5
    }
  }
}

2 Response

Waiting for a request
Pick a method and press Send request. The raw JSON-RPC reply shows up here.

How the MCP Playground works

The playground sends JSON-RPC 2.0 requests straight from your browser to an MCP endpoint over HTTP and shows the raw response. It points at the AllMCPs MCP server by default, so you can try tools/list and tools/call without installing anything and see exactly what a client exchanges with a server.

To test your own remote server, change the endpoint URL. The server must accept cross-origin requests from the browser (CORS), and servers that require an initialize handshake, a session ID, or OAuth will reject bare requests — use the protocol inspector to decode those responses, or the official MCP Inspector for a full session.

Frequently asked questions

A browser console for sending Model Context Protocol requests such as tools/list and tools/call to a server and reading the JSON-RPC responses. It is useful for learning the protocol and checking what a remote server returns.

No. Browsers can only make HTTP requests, so the playground works with remote servers over HTTP. For local stdio servers, run the official MCP Inspector, which starts the server process and connects to it.

The request is sent from your browser, so the server has to allow cross-origin requests. Servers built for desktop clients often do not send CORS headers; that is expected and does not mean the server is broken.

Codes from -32700 to -32600 mean the request was malformed, -32601 means the method does not exist, -32602 means invalid parameters, and -32603 is an internal error. A tool that fails normally returns a result with isError set instead of a JSON-RPC error.