MCP Server
Connect to the Agent Community hosted MCP server — streamable HTTP endpoint, five tools for the member directory, community stats, and DMV .agent pre-registration.
Agent Community runs a hosted Model Context Protocol server so agent clients can search the member directory, look up organization profiles, read community stats, and pre-register a proposed .agent name — all without scraping HTML.
Endpoint & transport
- URL:
https://agentcommunity.org/mcp - Transport: streamable HTTP (
POSTwith a JSON-RPC 2.0 body) - State: stateless — no session is created or required between calls
- Auth: none. The server is fully anonymous.
- Protocol revision:
2025-06-18(older clients negotiating2025-03-26or2024-11-05are also accepted)
Discovery
- Manifest:
/.well-known/mcpand/.well-known/mcp.json— flat name/description/version/serverUrl fields plustransportandtools, mirroring the live server. - Server card:
/.well-known/mcp/server-card.json
Client config
Most MCP-aware clients accept a URL-based server entry in their config JSON:
{
"mcpServers": {
"agentcommunity": {
"url": "https://agentcommunity.org/mcp"
}
}
}No API key or environment variable is needed.
Handshake
A minimal curl example to confirm the server is reachable and list its tools:
curl -s -X POST https://agentcommunity.org/mcp \
-H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{}}'
curl -s -X POST https://agentcommunity.org/mcp \
-H "content-type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'Tools
| Tool | Description |
|---|---|
search_members | Search the member directory (organizations building for the agentic web). Returns up to 20 matching profiles with public profile URLs. |
get_member_profile | Get the canonical public profile URL for a member organization by slug. |
get_community_stats | Get live Agent Community statistics (total member count). |
register_agent | Pre-register a proposed .agent identity name at the Department of Machine Verification (DMV). |
verify_certificate | Offline check that a DMV certificate ID is well-formed (check digit passes) — does not confirm the certificate exists in the database. |
Tool annotations
Each tool advertises MCP spec annotations behavior hints so a host can decide whether to auto-approve or prompt. search_members, get_member_profile, get_community_stats, and verify_certificate are { readOnlyHint: true }. register_agent is { readOnlyHint: false, destructiveHint: false, idempotentHint: false, openWorldHint: true } — idempotentHint: false is intentional: identical-argument repeats without an Idempotency-Key header create additional registrations, so hosts should not silently retry it. Annotations are advisory only, not enforced by the server.
MCP Apps (interactive UI)
The server advertises a minimal MCP Apps (ext-apps extension) resources capability: one self-contained ui:// HTML resource, ui://agentcommunity/member-search.html, that renders search_members results as a linked list of member organizations. It's discoverable two ways:
resources/listreturns its descriptor (uri,mimeType: "text/html;profile=mcp-app",name).search_members's tool definition carries_meta.ui.resourceUripointing at it, so MCP Apps-aware hosts can preload the resource before the tool is even called.
resources/read with that uri returns the HTML in contents[0].text. It makes no external network requests — inline CSS/JS only — and renders whatever CallToolResult the host pushes via a ui/notifications/tool-result postMessage, per the ext-apps spec. Hosts without MCP Apps support are unaffected: tools/call on search_members still returns plain JSON text content either way.
register_agent — what it actually does
register_agent is the one tool with a real side effect: it creates a genuine DMV pre-registration, not a dry run. It's free and non-binding — the .agent TLD is pending ICANN approval, so a pre-registration is an expression of interest, not a domain grant. The certificate ID is recorded immediately, and a confirmation email is sent to the address you provide. Only call this tool when a user has explicitly asked to reserve or pre-register an agent name — don't call it speculatively.
Compatibility
The server tolerates a few older/stricter client behaviors beyond the 2025-06-18 spec's strict requirements:
- JSON-RPC batch arrays are accepted (
2025-03-26compat, capped at 20 items per batch) even though2025-06-18removed batching — some clients that negotiated2025-03-26still send arrays. An all-notification batch returns202with no body; an empty or oversized batch returns a JSON-RPC-32600error. - SSE responses: if a
POSTrequest'sAcceptheader includestext/event-streambut notapplication/json, the JSON-RPC response is returned as a singleevent: messageSSE frame instead of a plain JSON body. GETSSE stream:GET /mcpwithAccept: text/event-streamopens a keepalive event stream (no server-initiated messages — just periodic comments) rather than the405returned for a plainGET. Some clients probeGETbefore or aroundinitialize.
Rate limits
- General: 30
tools/callrequests/min/IP, across all tools. register_agent: an additional, tighter cap of 2 requests/min/IP, applied fail-closed — if the rate limiter itself errors, the call is rejected rather than allowed through. This reflects thatregister_agentproxies a real write to DMV, unlike the other four read-only tools.
An idempotent retry (same Idempotency-Key header, same caller IP, within 24 hours — see API Reference § Idempotency) replays the stored result and is not counted against the register_agent rate limit.
For DNS-based agent identity discovery, see AID — the Agent Identity & Discovery format. AID and this MCP server are complementary: AID lets an agent discover how to reach an organization's endpoints from its domain, while these MCP tools let an agent query the Agent Community directory itself.
See also the API Reference for the equivalent REST endpoints, rate-limit headers, and error model.