What is server-card.json, and how do agents find your MCP server?
server-card.json is a discovery document, conventionally at /.well-known/mcp/server-card.json, describing an MCP server before an agent connects to it: its name, its transport, and the tools it exposes. It solves the step most MCP implementations skip, which is that a server nobody can find is a server nobody uses.
Discovery is the part that gets forgotten
Teams building an MCP server tend to treat the connection as the product and hand out the URL manually. That works for a known integration and fails for the case that matters commercially: an agent arriving at your site and working out, unprompted, that you have capabilities worth using.
A server card is the equivalent of a service listing. It lets an agent decide whether to connect at all, which is cheaper for both sides than connecting to find out.
Where agents actually look
The well-known path is the primary place, but scanners also check server-card.json alongside your other discovery documents and look for a reference in llms.txt. Referencing your MCP server from the files an agent is already fetching costs nothing and removes a guess.
The same principle runs through all of this: an agent should not have to probe. Every path it has to guess is a failure mode you could have removed with a line of JSON.
Do you need an MCP server at all?
Most marketing sites do not, and WebMCP is the better answer for them: tools registered on the page itself, no server to host, authenticate or keep running. A separate MCP server earns its keep when the capability is substantial enough to exist independently of any one page, or when it needs to be callable without a browser.
If you are unsure, start with WebMCP. It is the lower-commitment version of the same idea and you can promote it later.
Does your site have this?
The free checker scores your site against MCP server card and everything else on this list, out of 100, in about ten seconds. It names what is missing rather than handing you a number.
Common questions
- Where does server-card.json go?
- Conventionally at /.well-known/mcp/server-card.json. Reference it from llms.txt and your resource catalog as well, because those are the files an agent is likely to fetch first.
- Do I need an MCP server or is WebMCP enough?
- For most websites WebMCP is enough and considerably less work: the tools live on the page, with no server to host or authenticate. A standalone MCP server is worth it when the capability needs to exist independently of a page or be callable without a browser.
Sources
- 01Model Context Protocol, modelcontextprotocol.io
The rest of the reference
- llms.txtWhat is llms.txt, and does it actually do anything?
- agent-card.jsonWhat is agent-card.json, and do you need one?
- WebMCPWhat is WebMCP? Tools on your web page, no server required
- ARD catalogWhat is an ARD catalog (ard.json)?
- Markdown twinsHow to serve markdown to AI agents (and why .md matters)
- robots.txt for AIHow to write robots.txt for AI crawlers
- pricing.mdWhat is pricing.md, and should you publish your prices?
- Web Bot AuthWhat is Web Bot Auth? Letting good agents identify themselves
- auth.mdWhat is auth.md, and what if nothing needs authentication?