# Mock MCP Servers — Free Public MCP Server URLs for Testing

> Six free hosted mock MCP servers with public URLs you can paste into any MCP client — echo, Bearer auth (401), deliberate errors, complex nested schemas, MCP Apps `ui://` resources, and a stateless 2026-07-28 server. No install, no sign-up, no API key.

**Source:** https://mcpplaygroundonline.com/mock-mcp-servers

---

## The endpoints

These are real, publicly reachable MCP servers. Paste them into Claude Desktop, Cursor, your own client, or curl. No account, no key, no rate-limit signup.

### Echo server

`https://mcpplaygroundonline.com/mcp-echo-server`

A single `echo` tool, no authentication. The simplest possible connectivity check. (Temporarily offline.)

### Auth server

`https://mcpplaygroundonline.com/mcp-auth-server`

Returns 401 with a `WWW-Authenticate` challenge until a Bearer token is supplied. Use it to exercise a client's auth flow.

### Error server

`https://mcpplaygroundonline.com/mcp-error-server`

Returns validation, not_found, rate_limit, timeout and five more error types on demand, so you can test how a client surfaces failures.

### Complex server

`https://mcpplaygroundonline.com/mcp-complex-server`

Four deeply-nested tool schemas. Use it to test tool selection and argument construction under realistic schema pressure.

### MCP Apps server

`https://mcpplaygroundonline.com/mcp-app-server`

Returns a `ui://` MCP Apps resource, for clients that render interactive tool output.

### Stateless 2026-07-28 server

`https://mcpplaygroundonline.com/mcp-stateless-server`

Multi Round-Trip Requests and signed `requestState` from the 2026-07-28 revision.

## Protocol revision pinning

Every endpoint above serves **both** the stateless 2026-07-28 revision and the 2025-era `initialize` handshake, negotiated normally.

To force one, append a query parameter:

- `?rev=2026-07-28` — pin the stateless revision
- `?rev=2025-11-25` — pin the session-based revision

Pinning is how you test rejection paths: point a 2025-only client at a `?rev=2026-07-28` endpoint and confirm it fails the way you expect, rather than failing silently.

## What each one is for

- Building a client and need a known-good target → **echo**
- Implementing OAuth/Bearer flows → **auth** (returns a real `WWW-Authenticate` challenge)
- Testing how your UI surfaces failures → **error** (nine error types on demand)
- Testing tool selection and argument construction → **complex** (deeply nested schemas)
- Rendering interactive tool output → **MCP Apps** (`ui://` resource)
- Migrating to the 2026 spec → **stateless** (Multi Round-Trip Requests, signed `requestState`)

To drive these from a UI instead of your own code, use the [MCP Test Client](https://mcpplaygroundonline.com/mcp-test-client).

---

_Canonical page: https://mcpplaygroundonline.com/mock-mcp-servers_

_MCP Playground (mcpplaygroundonline.com) is a free, browser-based toolkit for the Model Context Protocol: test any remote MCP server, run evals that prove an AI agent can use its tools, build reusable agents across 70+ models, and audit servers for security issues. No install, no local Node, free to start._
