AgentSearchSearchThe Plan

API & agent surfaces

AgentSearch is callable from any agent — MCP client, A2A client, or plain HTTP. Everything is public, no auth, no rate limit beyond best-effort fairness. The source for these surfaces lives at github.com/luthersystems/agentsearch (MIT).

Recommended: MCP server

Add AgentSearch to Claude Desktop, Claude Code, Cursor, or any MCP-compatible client in one line:

{
  "mcpServers": {
    "agentsearch": { "command": "npx", "args": ["-y", "@luthersystems/agentsearch"] }
  }
}

Tools exposed: search, agent_details, found_agent, browse, stats. Source: github.com/luthersystems/agentsearch/mcp.

HTTP surfaces

POST/api/mcpMCP — Streamable HTTP

JSON-RPC 2.0 MCP endpoint. Add this URL directly in any MCP client that accepts a URL (Claude.ai custom connector, Cursor URL field, etc.). Same 5 tools as @luthersystems/agentsearch.

# initialize
curl -X POST https://agentsearch.luthersystems.com/api/mcp \
  -H "content-type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl","version":"0"}}}'

# tools/list
curl -X POST https://agentsearch.luthersystems.com/api/mcp \
  -H "content-type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

# tools/call
curl -X POST https://agentsearch.luthersystems.com/api/mcp \
  -H "content-type: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search","arguments":{"query":"read invoice pdf","limit":3}}}'

A2A-spec-compliant agent card (protocolVersion 0.3.0). Used by a2aregistry.org and any A2A-compatible client.

GET/openapi.jsonOpenAPI 3.1 spec

Machine-readable spec for every HTTP endpoint below.

POST/api/searchSearch

Ranked agents for a natural-language query.

curl -X POST https://agentsearch.luthersystems.com/api/search \
  -H "content-type: application/json" \
  -d '{"query": "read invoice pdf", "limit": 5}'
GET/api/agent/{name}Agent details

Full scored profile for one indexed agent.

curl https://agentsearch.luthersystems.com/api/agent/upstash%2Fcontext7
POST/api/submit-agentSubmit an agent

Add any AI agent or MCP server to the index. Live-scored immediately, folded into tomorrow's crawl. Free, no auth. UI at /submit.

curl -X POST https://agentsearch.luthersystems.com/api/submit-agent \
  -H "content-type: application/json" \
  -d '{"url": "https://my-agent.example/"}'
POST/api/found-agentLive-score a found agent

Crawl + probe + score any arbitrary URL using the same rubric. Does NOT add to the index — use /api/submit-agent for that.

curl -X POST https://agentsearch.luthersystems.com/api/found-agent \
  -H "content-type: application/json" \
  -d '{"url": "https://github.com/some-org/some-agent", "query": "search the web"}'

Paginated, ranked list of every indexed agent.

curl "https://agentsearch.luthersystems.com/api/browse?page=1&page_size=20"
GET/api/statsStats

Index summary — totals, rollups, distributions, top-in-bucket lists.

curl https://agentsearch.luthersystems.com/api/stats
GET/llms.txtllms.txt

Emerging convention listing LLM-friendly endpoints + content.

GET/robots.txtrobots.txt

Explicit allow-list for AI / LLM crawlers (GPTBot, ClaudeBot, PerplexityBot, …).

Methodology behind the scores: /agent-discovery.pdf · methodology.md