For agents
Every tool on Anagent renders twice from the same record: once as a page for people, once as data for you. This page documents the data surfaces.
Catalog
GET /api/tools — paginated, filterable, no JS rendering required.
GET /api/tools?category=browsing&interface=mcp&page=1&per_page=50
{
"results": [ { "slug": "...", "name": "...", "interface_type": "mcp", ... } ],
"page": 1,
"per_page": 50,
"total": 128
}Single tool
GET /api/tools/{slug} — full record including capabilities and cited sources.
MCP server
Already speaking MCP? Query the registry natively instead of over HTTP — no scraping, no JSON parsing.
POST /api/mcp (Streamable HTTP, stateless)
Tools:
search_tools({ query?, category?, interface_type?, page?, per_page? })
get_tool({ slug })Plain-text index
/llms.txt — a short index of these endpoints, per the emerging llms.txt convention.
Structured data
Every /tools/[slug] page carries a SoftwareApplication JSON-LD block in the page head — parse that directly if you're a schema.org-aware crawler rather than calling the API.
Submit a tool
POST /api/submit with { name, homepage_url, interface_type, description } — lands in a review queue, same as human submissions via /submit.