mcp-a2a-documentation
Search and retrieve Agent2Agent (A2A) protocol documentation using full-text search and section filtering.
README
MCP A2A Documentation Server
An MCP (Model Context Protocol) server that provides search and retrieval tools for the Agent2Agent (A2A) protocol documentation. This server enables AI assistants like Claude to search and read A2A documentation directly from the upstream repository.
Source
This server indexes documentation from the a2aproject/A2A repository's docs/ directory, which powers a2a-protocol.org.
Features
- Full-text search using SQLite FTS5 with BM25 ranking and Porter stemming
- Section filtering to narrow search results by documentation category (
root,topics,tutorials,sdk) - Sparse checkout for efficient cloning of only the required
docs/directory - Docker support for portable deployment across projects
- STDIO transport for seamless MCP client integration
Quick Start
Using the Container Image (Recommended)
The martoc/mcp-a2a-documentation container image is published to Docker Hub with the documentation index pre-built. Available for linux/amd64 and linux/arm64.
# Pull and run the server
docker run -i --rm martoc/mcp-a2a-documentation:latest
Building Locally with Docker
# Build the Docker image (includes pre-indexed documentation)
make docker-build
# Test the server
make docker-run
Using uv (Local Development)
# Initialise the environment
make init
# Build the documentation index
make index
# Run the server
make run
Container Image
The martoc/mcp-a2a-documentation container image is published to Docker Hub. It includes the pre-built documentation index so the server is ready to use immediately.
| Property | Value |
|---|---|
| Registry | Docker Hub |
| Image | martoc/mcp-a2a-documentation |
| Platforms | linux/amd64, linux/arm64 |
| Base image | python:3.12-slim |
| Index | Pre-built at image build time from the main branch of a2aproject/A2A |
# Pull the latest image
docker pull martoc/mcp-a2a-documentation:latest
# Run the MCP server
docker run -i --rm martoc/mcp-a2a-documentation:latest
Configuration
Claude Code / Claude Desktop
Add to your .mcp.json or global settings to use the published container image:
{
"mcpServers": {
"a2a-documentation": {
"command": "docker",
"args": ["run", "-i", "--rm", "martoc/mcp-a2a-documentation:latest"]
}
}
}
For local development without Docker:
{
"mcpServers": {
"a2a-documentation": {
"command": "uv",
"args": ["run", "mcp-a2a-documentation"],
"cwd": "/path/to/mcp-a2a-documentation"
}
}
}
MCP Tools
| Tool | Description |
|---|---|
search_documentation |
Search A2A documentation by keyword query with optional section filter |
read_documentation |
Retrieve the full content of a specific documentation page |
search_documentation
Search A2A protocol documentation using full-text search with stemming support.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query |
string | Yes | - | Search terms (supports stemming) |
section |
string | No | None | Filter by section (root, topics, tutorials, sdk) |
source |
string | No | None | Filter by source (a2a) |
limit |
integer | No | 10 | Maximum results (1-50) |
Available sections: root (specification, community, roadmap, partners, etc.), topics (core protocol concepts), tutorials (the Python quickstart), sdk (SDK overview).
read_documentation
Retrieve the full content of a documentation page.
| Parameter | Type | Required | Description |
|---|---|---|---|
path |
string | Yes | Source-prefixed path to the document (e.g., a2a/topics/what-is-a2a.md). This path is returned by search_documentation. |
CLI Commands
# Build/rebuild the documentation index
uv run a2a-docs-index index
uv run a2a-docs-index index --rebuild
uv run a2a-docs-index index --branch main
# Show index statistics
uv run a2a-docs-index stats
Development
make init # Initialise development environment
make build # Run full build (lint, typecheck, test)
make test # Run tests with coverage
make format # Format code
make lint # Run linter
make typecheck # Run type checker
Documentation
- USAGE.md - Detailed usage instructions
- CODESTYLE.md - Code style guidelines
- CLAUDE.md - Claude Code instructions
Licence
This project is licensed under the MIT Licence - see the LICENSE file for details.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。