Find JSON mistakes and common setup issues before you open your MCP client. Review a sanitized mcpServers configuration in your browser, free and without signing in.
Remove real secrets before pasting. Your input is processed in this tab’s memory; it is not sent, logged, or saved by this tool. Nothing is executed or connected.
This tool checks JSON syntax, the mcpServers wrapper, entry objects, non-empty command and URL strings, string arrays for args, and string maps for env and headers. Diagnostics use entry numbers without repeating names or values. Numbering follows JavaScript property order: numeric index names first in ascending order, then other names in insertion order.
Explicit stdio, http, and sse types receive basic field checks. Missing remote types, mixed command/URL entries, variable URLs, other transports, and extra fields receive review notes. Extensions are not rejected just because the checker does not recognize them.
The synthetic example shows two shapes: a local executable with separate arguments and environment values, and a remote HTTP endpoint. Neither endpoint or executable is real. Replace example values only in your local client after reading its documentation.
| Result | Next check |
|---|---|
| Invalid JSON | Fix syntax locally, such as missing quotes or a trailing comma, then check again. Structural review has not run yet. |
| args is a string | Check your client’s documented format. For this checker’s array shape, put each argument in a separate string; do not paste one shell command into args. |
| Remote type review note | Compare the entry with your client’s transport documentation. A note calls for review; it does not make every unrecognized or omitted type an error. |
| No structural issue found | Run a separate, authorized connection test with synthetic data in your intended client or Inspector. This result does not establish connectivity or permission to use the server. |
Before: {"args":"--mode demo"}
After: {"args":["--mode","demo"]}MCP defines wire transports; it does not impose one settings-file format on every client. The current specification describes stdio and Streamable HTTP, with custom transports possible. A client’s legacy SSE label is not interchangeable with Streamable HTTP. This checker does not select or validate a protocol revision, handshake, session, or authentication flow.
Limits apply to the whole document before structural review. The root is nesting level zero; every JSON value, including objects and arrays, counts toward the 10,000-value budget. Rejected input produces no partial review copy. Clear all removes input, results, and copy feedback from the tab; it cannot remove a copy already placed on your clipboard.
It reviews JSON with a top-level mcpServers object and common command, args, env, url, headers, and type fields. Other client formats and extension fields may be valid but are outside this check. Check your client's documentation before applying any change.
No. Basic structure checked means only that the listed structural checks found no issues. This tool does not start a process, fetch a URL, resolve variables, authenticate, discover tools, or test a connection.
Remove credentials before pasting. Input stays in this tab's memory. The optional clipboard output is a non-runnable review that omits submitted names and values, not a repaired configuration. Inspect and sanitize any copy before sharing it.
Client rules differ. Claude Code requires an explicit remote type, while some clients infer a transport from the URL. A review note is a prompt to check the intended client, not a universal declaration that the entry is invalid.