MCP-REG-001
server.json present and valid against the registry schema
“Validates `server.json` against schema” — spec anchor
How to fix this
Make sure `server.json` validates against the registry's schema before publishing. `mcp-publisher publish` checks this as its first step, so a malformed file fails immediately rather than after an upload attempt.
Example: failing and passing
{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "weather",
"description": "Weather forecasts for any city.",
"version": "1.0.0",
"remotes": [{ "type": "streamable-http", "url": "https://mcp.example.com/mcp" }]
}{
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "com.example/weather",
"description": "Weather forecasts for any city.",
"version": "1.0.0",
"remotes": [{ "type": "streamable-http", "url": "https://mcp.example.com/mcp" }]
}How the validator checks this
This rule is catalogued from the specification but is not yet checked automatically. No probe emits a finding for it, so it never appears in a report as pass, warn or fail. It is documented here because it is a real requirement of the specification — it is simply not one this validator can confirm for you yet.
Check your own server against MCP-REG-001
The validator does not check MCP-REG-001 automatically yet, so confirm it by hand against the examples above. It does check 73 of the 79 rules — validate a server to see those.
Background on this topic: how to publish to the official registry.
Other Registry readiness rules
- MCP-REG-002Namespace ownership is verifiable (GitHub or DNS TXT)
- MCP-REG-003version is present and valid semver
- MCP-REG-004Declared remote endpoint matches the probed URL