Skip to main content

MCP Server for server card generation, validation and discovery — .well-known/mcp-server-card.json protocol

Project description

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:

  1. Automatic Discovery — Agents can check .well-known/mcp-server-card.json on any domain
  2. Standardized Metadata — Consistent format for comparing servers
  3. Capability Description — Agents know what tools are available before connecting
  4. 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 name
  • description — What the server does
  • version — Semantic version
  • tools — Array of {name, description} objects

Optional but recommended:

  • author — Author or organization
  • repository — Source code URL
  • categories — Tags for searchability
  • pricingfree | freemium | paid | open-source
  • auth_required — Boolean
  • transportstdio | http | both

How Discovery Works

  1. An agent wants to find MCP servers on example.com
  2. It requests https://example.com/.well-known/mcp-server-card.json
  3. If the file exists, the agent parses it and learns about available tools
  4. 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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

agent_server_card_mcp-0.1.0.tar.gz (7.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

agent_server_card_mcp-0.1.0-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file agent_server_card_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: agent_server_card_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 7.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.3

File hashes

Hashes for agent_server_card_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 fb376cfb306468d8b11c81a256d141a6706d5df84221c87013796dc177d3cab0
MD5 dda114dad169702d959dc581edc301c0
BLAKE2b-256 1b71b5ec38d5c5fa77b19ead4ea52d4d4165b8c90eafa86d281a650a6065ec02

See more details on using hashes here.

File details

Details for the file agent_server_card_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for agent_server_card_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 41633afdab782e1aef89f959736062bfc03681fbae630ad23849d0348b1d19f7
MD5 a93d886328d18793ec9377ff593e3c2e
BLAKE2b-256 4c53830d69121544c37204bd5983bd20993de6ac0abf22b894b4d5c367e92c56

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page