MCP Server Cards
An MCP server for generating, validating, and discovering MCP server cards — a standardized way to describe MCP servers so AI agents can automatically find and understand them.
What are Server Cards?
Server Cards are machine-readable JSON files that describe an MCP server's capabilities, similar to how robots.txt describes crawling rules or manifest.json describes web apps. They live at .well-known/mcp-server-card.json and contain:
- Name & Description — What the server does
- Tools — List of available tools with descriptions
- Author & Repository — Who built it, where to find the source
- Categories — Tags for discovery and search
- Pricing — Whether it's free, freemium, or paid
- Transport — Whether it uses stdio, HTTP, or both
- Auth — Whether authentication is required
Why Server Cards?
As the MCP ecosystem grows, agents need a way to discover and evaluate servers automatically. Server Cards solve this by providing:
- Automatic Discovery — Agents can check
.well-known/mcp-server-card.jsonon any domain - Standardized Metadata — Consistent format for comparing servers
- Capability Description — Agents know what tools are available before connecting
- Trust Signals — Author, repository, and pricing information
Installation
pip install agent-server-card-mcp
Usage
As MCP Server
{
"mcpServers": {
"server-cards": {
"command": "server-card-server"
}
}
}
With uvx
{
"mcpServers": {
"server-cards": {
"command": "uvx",
"args": ["agent-server-card-mcp"]
}
}
}
Available Tools
| Tool | Description |
|---|---|
generate_card |
Generate a .well-known/mcp-server-card.json for any MCP server |
validate_card |
Validate a server card against the JSON schema |
discover |
Try to discover a server card from a URL via .well-known |
search |
Search indexed server cards by keyword |
register |
Register a server card in the local index |
schema |
Get the full JSON schema for server cards |
Server Card Example
{
"name": "weather-mcp-server",
"description": "Provides real-time weather data and forecasts",
"version": "1.0.0",
"author": "WeatherCorp",
"repository": "https://github.com/example/weather-mcp",
"tools": [
{
"name": "get_weather",
"description": "Get current weather for a location"
},
{
"name": "get_forecast",
"description": "Get 7-day weather forecast"
}
],
"categories": ["weather", "climate", "data"],
"pricing": "free",
"auth_required": false,
"transport": "stdio"
}
Server Card Schema
Required fields:
name— Unique server namedescription— What the server doesversion— Semantic versiontools— Array of{name, description}objects
Optional but recommended:
author— Author or organizationrepository— Source code URLcategories— Tags for searchabilitypricing—free|freemium|paid|open-sourceauth_required— Booleantransport—stdio|http|both
How Discovery Works
- An agent wants to find MCP servers on
example.com - It requests
https://example.com/.well-known/mcp-server-card.json - If the file exists, the agent parses it and learns about available tools
- The agent can then decide whether to connect based on the metadata
This follows the same pattern as .well-known/openid-configuration for OAuth or .well-known/ai-plugin.json for ChatGPT plugins.
License
MIT
Metadata
Release files for agent-server-card-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| agent_server_card_mcp-0.1.0.tar.gz | 7.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agent_server_card_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 17.8 kB
Release files / agent_server_card_mcp-0.1.0.tar.gz
| Download URL | agent_server_card_mcp-0.1.0.tar.gz |
|---|---|
| Size | 7.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fb376cfb306468d8b11c81a256d141a6706d5df84221c87013796dc177d3cab0
|
|
BLAKE2b-256 checksum How to use checksums |
1b71b5ec38d5c5fa77b19ead4ea52d4d4165b8c90eafa86d281a650a6065ec02
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.3
|
Release files / agent_server_card_mcp-0.1.0-py3-none-any.whl
| Download URL | agent_server_card_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
41633afdab782e1aef89f959736062bfc03681fbae630ad23849d0348b1d19f7
|
|
BLAKE2b-256 checksum How to use checksums |
4c53830d69121544c37204bd5983bd20993de6ac0abf22b894b4d5c367e92c56
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.3
|