AgentTCDH
Provides registry discovery for the Cloudflare Docs MCP server, enabling consumers to discover its documentation capabilities and connection details before querying it directly.
Provides registry discovery for the official OpenAI documentation MCP server, letting consumers find its documentation capabilities and connection details before calling it directly.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AgentTCDHFind an MCP server for OpenAI docs and get its connection details"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AgentTCDH
One registry for MCP servers and A2A agents.
Agent & Tool Capability Discovery Hub is an open-source TypeScript service for managing agent and tool connection metadata in one place. Register a target once, let consumers discover its capabilities and connection details, and execute directly against the selected target.
Quickstart · Connect an agent · Reference · Verification · Contributing
Why AgentTCDH
Keep shared target registrations in one place as agents and tools change. Consumers query the same registry, so additions, updates, and removals become visible on their next lookup.
One catalog: remote MCP servers, local stdio MCP commands, and A2A agent endpoints.
Three discovery interfaces: MCP tools, A2A messages, and an HTTP API over the same registry.
Direct execution: consumers use returned connection details to call their selected tools or agent peers.
Persistent management: SQLite storage, CLI administration, metadata import/refresh, conditional updates, and JSON backups.
Related MCP server: Lab Registry Server
How it works
flowchart LR
Admin["Administrator"] -->|"Register / update"| Hub["AgentTCDH registry"]
Agent["Consuming agent"] -->|"Discover capabilities"| Hub
Hub -->|"Capabilities + connection details"| Agent
Agent -->|"Direct MCP call"| Tool["MCP server"]
Agent -->|"Direct A2A message"| Peer["A2A agent"]The consumer owns target selection, protocol clients, credentials, and execution permissions. The hub returns metadata; target connections and calls happen in the consumer's environment. Native tool mounting depends on the client. The registry searches keywords and filters; planning happens in the consuming agent.
Quickstart
Use Node.js 24 or newer and npm. Install from source:
git clone https://github.com/east-true/agent-tcdh.git
cd agent-tcdh
npm ci
npm run demoFor a published release, run the CLI without a source checkout:
npx --yes agent-tcdh@0.1.0 --help
npx --yes agent-tcdh@0.1.0 serveThe v0.1.0 release also provides a built tarball, checksums, and installation instructions. Source commands below use the repository checkout; an installed CLI uses agent-tcdh in place of npm run cli --.
The demo starts an isolated hub, registers three local targets, discovers them, and calls HTTP MCP, stdio MCP, and A2A targets directly. It checks execution receipts and cleans up. No account, API key, external service, or model is needed.
npm run demo -- --discovery a2a
npm run demo -- --serve--discovery a2a queries the hub over A2A. --serve keeps the demo available for manual connections. See the local demo guide.
Start a persistent registry
npm run build
npm startThe hub listens at http://127.0.0.1:3000. In another terminal, import the supplied public documentation registrations:
npm run cli -- registry import examples/public-docs-registry.json
npm run cli -- target list --tag public-docs
npm run cli -- target list --q OpenAI --protocol mcp
npm run cli -- target get openai-docsThe snapshot includes OpenAI Docs, Toss Payments Docs, Microsoft Learn, Cloudflare Docs, Context7, and DeepWiki. Import stores their observed metadata. Consumers establish connections when using a target; Toss's pinned npm command runs in the consumer environment.
These are working examples, not a provider allowlist. Register other MCP servers and A2A agents using the generic definition schema, or import their remote metadata.
MCP discovery
Connect your MCP client to http://127.0.0.1:3000/mcp.
Tool | Purpose |
| Search capabilities; filter by keyword, protocol, or tag; paginate results |
| Retrieve current capabilities, transport, address/command, and credential references |
Configure the hub once in your consumer, then ask it to discover suitable targets and connect directly. For example:
Find the official OpenAI documentation server in AgentTCDH. Retrieve its connection details and use its documentation search tool directly to answer my question.
The consumer needs permission and a way to call the discovered target. Recorded Codex runs used native MCP discovery and agent-written HTTP clients for execution. See Codex/OpenCode configuration and stdio setup and actual-agent verification.
A2A discovery
Agent peers can discover the hub through /.well-known/agent-card.json and query it through /a2a. The hub supports A2A 1.0 and 0.3 JSONRPC discovery with structured search_targets and get_target operations.
The selected target's protocol determines how the consumer executes it. A consumer can discover an MCP server through the hub's A2A interface, then call that server with MCP. See message formats and protocol versions.
Manage registrations
npm run cli -- target import https://mcp.example.com/mcp --id docs --protocol mcp --dry-run
npm run cli -- target import https://agent.example.com --id researcher --protocol a2a --dry-run
npm run cli -- target refresh openai-docs --dry-run
npm run cli -- target check openai-docs
npm run cli -- registry export backups/registry.jsonReplace example addresses with your own endpoints. Import/refresh inspect metadata. target check compares the registration with current remote metadata and reports drift; it does not verify execution. Stdio commands can be registered as JSON without launching them during registration.
The reference covers CRUD, disabling targets, search, authentication references, ETag concurrency protection, snapshots, and all CLI commands. The running hub exposes its OpenAPI specification at /openapi.json.
Storage, authentication, and deployment
The default SQLite registry lives at ~/.agent-tcdh/registry.sqlite, using the current user's home directory on each OS.
Setting | Purpose |
| Listener address; defaults to |
| Registry database location |
| Administrator Bearer token |
| Separate read-only discovery token; requires an administrator token |
| Consumer-facing URL advertised in the A2A card |
Use administrator credentials for registration changes and read credentials for discovery. Store provider credential references in registrations and resolve them in the consuming environment. With no hub tokens configured, the hub accepts anonymous requests.
For Docker, copy .env.example to .env, then run:
docker compose up --build -dCompose uses a non-root Linux container and a persistent registry volume. Local npm execution reads shell environment variables; Compose reads .env. See deployment, token roles, origins, and reverse proxies.
Verified behavior
Recorded verification on 2026-10-27:
Scope | Observed result | Evidence |
Native platforms | Linux x64, macOS Apple Silicon/Intel, and Windows x64 passed regression and isolated package checks | |
Public MCP services | Actual documentation calls succeeded for all six supplied providers through both hub discovery interfaces | |
Agent selection | Codex selected and executed 3 and 5 relevant MCP/A2A targets from 10 local candidates, with no unrelated execution attempts | |
Model-backed targets | Gemini CLI through an A2A test adapter and official TypeSafe Jev through an MCP test adapter each returned a real response |
Local fixtures, SDK-driven provider calls, actual model selection, and model-backed adapters are separate checks. The reports preserve their execution paths, failures, fixes, and limits. They do not establish automatic dynamic tool mounting or compatibility with every commercial agent.
Run checks
npm run check
npm run test:packageCI runs typecheck, regression, and package checks on all four native OS/architecture combinations, plus independent Linux container verification. See platform and shell-specific setup.
Public MCP verification is opt-in:
npm run test:public-mcpReal-agent/model checks are also opt-in and can consume model usage. See verification commands. The default suite and CI use local fixtures.
Documentation
Project documentation, comments, and application messages use English. Original provider metadata and intentional Unicode fixtures retain their original text.
License
This server cannot be deployed
Maintenance
Related MCP Connectors
Agent-native registry to discover APIs, MCP servers and CLIs, with live health checks.
AI agent registry — search, discover, register, and connect agents via MCP.
Search and browse every MCP server in the Model Context Protocol registry.
One search across every agent registry: 100K+ MCP/A2A/x402 services, signed receipts.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceProvides a unified registry for discovering and managing agents that implement the A2A (Agent-to-Agent) protocol, enabling registration, querying, and CRUD operations on agent metadata through both REST API and MCP tools.8 npm3MIT
- FlicenseAqualityBmaintenanceEnables MCP clients to discover and fetch skills, agents, commands, and hooks from the Gen-e2 Lab Registry, and check local inventory compliance against the registry.15-

coreason_mcp_registryofficial
FlicenseNot gradedqualityDmaintenanceEnables discovering and managing MCP servers through a registry, supporting listing, searching, and configuration.-
io.github.OnticX/open-mcpofficial
FlicenseAqualityDmaintenanceA registry that enables MCP clients to discover and install MCP servers.1-