protogrid

Search / dev.sarnai/agent-discovery-board

Agent Discovery Board by SarnAI

R0· no sign-in

Free directory of MCP servers and x402 APIs for AI agents. Find them, or list your own in one call.

v0.4.25 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality72needs work
Trust96of 100
Uptime, 30 days100%
Latency p50395 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "agent-discovery-board": {
      "type": "http",
      "url": "https://board.sarnai.dev/mcp"
    }
  }
}
claude mcp add --transport http agent-discovery-board https://board.sarnai.dev/mcp
[mcp_servers.agent-discovery-board]
url = "https://board.sarnai.dev/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "agent-discovery-board": {
      "type": "remote",
      "url": "https://board.sarnai.dev/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "agent-discovery-board": {
      "type": "http",
      "url": "https://board.sarnai.dev/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=agent-discovery-board&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYm9hcmQuc2FybmFpLmRldi9tY3AifQ%3D%3D"
}
{
  "servers": {
    "agent-discovery-board": {
      "type": "http",
      "url": "https://board.sarnai.dev/mcp"
    }
  }
}
{
  "mcpServers": {
    "agent-discovery-board": {
      "httpUrl": "https://board.sarnai.dev/mcp"
    }
  }
}
extensions:
  "agent-discovery-board":
    enabled: true
    name: "agent-discovery-board"
    type: streamable_http
    uri: "https://board.sarnai.dev/mcp"
    timeout: 300

Quality 72 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene93 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations11 of 11 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 6,100 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability25 · weight 15
  • warn
    stability.changes31 tool changes in 30 days
  • fail
    stability.rug_pull2 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

11 tools, about 6,100 tokens to load them all · tool set d589039e8fcd · tools last changed 2026-10-20 · checked 2026-10-20 15:57 UTC

Tool changes

  • register_mechangedinput schema
  • find_agentschangedinput schema
  • ask_sarnaichangeddescription, input schema
    before

    Answers a question about SarnAI's products (the Agent Discovery Board, the Agent Output Verifier, Agent Scores) by quoting their published documents verbatim, each passage with its source, section and link; no model writes anything. A 'what is' question gets the defining passage first; price and free-path questions get a direct answer. A question that names a listed service (by name or endpoint) is answered with that listing and describe_listing / how_to_pay ready to call. A question about neither gets status not_found, a short welcome saying what the board covers, and find_agents ready to call. status: answered, partial (needs more than one word in common), not_found (never guessed) or not_available. Deterministic. Free, no payment or account required.

    after · 99% of words in common

    Answers a question about SarnAI's products (the Agent Discovery Board, the Agent Output Verifier, AI Agent Scores) by quoting their published documents verbatim, each passage with its source, section and link; no model writes anything. A 'what is' question gets the defining passage first; price and free-path questions get a direct answer. A question that names a listed service (by name or endpoint) is answered with that listing and describe_listing / how_to_pay ready to call. A question about neither gets status not_found, a short welcome saying what the board covers, and find_agents ready to call. status: answered, partial (needs more than one word in common), not_found (never guessed) or not_available. Deterministic. Free, no payment or account required.

  • register_mechangeddescriptionmeaning changed
    before

    Get a service listed on the Agent Discovery Board, or find the listing to claim. By default it only validates: result.errors names each problem with a fix, normalized_listing is what would be stored, missing_value lists what would make you findable, claim_instead says if the endpoint is already listed. submit: true creates it with the same checks and per-client limit as POST /listings and returns listing_id. No wallet is needed. Smallest working call: {"name": "Invoice Checker", "description": "Checks an invoice's totals against its line items and returns pass or fail.", "endpoint_url": "https://api.example.com/mcp", "submit": true}. It goes live immediately, marked unclaimed. Want to edit it later? Claim it with your domain or repository, or add a wallet address as submitted_by to own it from the start. New listings rank after probed ones until a health probe passes. Free, no payment or account required.

    after · 31% of words in common

    Register, list, submit or publish your own AI agent, MCP server or x402 API in the SarnAI directory: free, no wallet, no account. By default it checks your listing and shows what would be stored and what is missing; with submit: true it goes live at once, marked unclaimed until you prove you own the domain or repository. Example: {"name": "Weather MCP", "description": "Current weather and forecasts for any city.", "endpoint_url": "https://api.example.com/mcp", "submit": true}

  • how_to_paychangeddescription
    before

    How a listing is paid for, step by step, and what it costs: per payment type (free, x402, mpp, ap2, acp, l402, api_key, subscription, unknown) ordered steps and the cost (amount, asset, network, USD for recognised stablecoins); with `payer` (an object, {"networks": ["eip155:8453"], "assets": ["0x..."]}, not a string) the cheapest option you can use; and a `call` recipe (method, input fields, example where known). Steps the board cannot state are marked documented: false. Give listing_id, or target 'verifier' for the Agent Output Verifier's live price, free paths (MCP and REST, launch terms) and the Agent Scores lookup (its price, and whether an AI agent with no history is answered free). It only explains; it never pays. Deterministic. Free, no payment or account required.

    after · 100% of words in common

    How a listing is paid for, step by step, and what it costs: per payment type (free, x402, mpp, ap2, acp, l402, api_key, subscription, unknown) ordered steps and the cost (amount, asset, network, USD for recognised stablecoins); with `payer` (an object, {"networks": ["eip155:8453"], "assets": ["0x..."]}, not a string) the cheapest option you can use; and a `call` recipe (method, input fields, example where known). Steps the board cannot state are marked documented: false. Give listing_id, or target 'verifier' for the Agent Output Verifier's live price, free paths (MCP and REST, launch terms) and the AI Agent Scores lookup (its price, and whether an AI agent with no history is answered free). It only explains; it never pays. Deterministic. Free, no payment or account required.

  • find_agentschangeddescriptionmeaning changed
    before

    Finds services on the Agent Discovery Board for a need. Say it in plain words in `need` (e.g. 'a free MCP server that checks invoices under $0.05') and/or give filters; fixed rules turn connection, payment, price and task words into filters and `interpretation` shows which. Matches whose name or opening describes the need come first; for a verification need, services with a template and a passing probe come first; a rarer word weighs more. `relaxations` says what dropping a constraint would give. Returns up to `limit` compact matches (a service two sources list is one match: also_listed_as) and next_actions with ids filled in. Stale listings are hidden unless include_stale. Deterministic. Free, no payment or account required.

    after · 20% of words in common

    Search the SarnAI directory of MCP servers, x402 APIs and AI agents: one search across the MCP Registry, x402 Bazaar and Agentic.Market instead of each registry or marketplace. Describe what you need in plain words (e.g. "web search", "invoice extraction") and get up to 5 matching services (up to 10 with limit), each with its endpoint, its price and its last health check, and the ready-to-run call one step away (describe_listing, in next_actions). Use it to find, discover or compare a tool, API, MCP server, x402 service or AI agent. Free, no key.

  • how_to_paychangeddescription
    before

    How a listing is paid for, step by step, and what it costs: per payment type (free, x402, mpp, ap2, acp, l402, api_key, subscription, unknown) ordered steps and the cost (amount, asset, network, USD for recognised stablecoins); with `payer` (an object, {"networks": ["eip155:8453"], "assets": ["0x..."]}, not a string) the cheapest option you can use; and a `call` recipe (method, input fields, example where known). Steps the board cannot state are marked documented: false. Give listing_id, or target 'verifier' for the Agent Output Verifier's live price, free paths (MCP and REST, launch terms) and what is paid only (Agent Scores). It only explains; it never pays. Deterministic. Free, no payment or account required.

    after · 94% of words in common

    How a listing is paid for, step by step, and what it costs: per payment type (free, x402, mpp, ap2, acp, l402, api_key, subscription, unknown) ordered steps and the cost (amount, asset, network, USD for recognised stablecoins); with `payer` (an object, {"networks": ["eip155:8453"], "assets": ["0x..."]}, not a string) the cheapest option you can use; and a `call` recipe (method, input fields, example where known). Steps the board cannot state are marked documented: false. Give listing_id, or target 'verifier' for the Agent Output Verifier's live price, free paths (MCP and REST, launch terms) and the Agent Scores lookup (its price, and whether an AI agent with no history is answered free). It only explains; it never pays. Deterministic. Free, no payment or account required.

  • ask_sarnaichangedinput schema
  • register_mechangedinput schema
  • prepare_verificationchangeddescription, input schema
    before

    Prepares the exact call to the Agent Output Verifier for one output: `request_body` (once) with the verifier's field names, and `send` with the free paths (MCP, and REST when the verifier says so) and the paid path, read from the verifier's live documents. Give listing_id (its template) or an inline output_schema. It evaluates nothing itself and never sends the request. Deterministic. Free, no payment or account required.

    after · 87% of words in common

    Prepares the exact call to the Agent Output Verifier for one output: `request_body` (once) with the verifier's field names, and `send` with the free paths (MCP, and REST when the verifier says so) and the paid path, read from the verifier's live documents. Give listing_id (its template) or an inline output_schema. A template over 3 KB is a placeholder in request_body unless inline_template. It evaluates nothing itself and never sends the request. Deterministic. Free, no payment or account required.

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 96 / 100

provenance85
liveness100
freshness100
hygiene100

+repository +dns-namespace +website +reachable +uptime-100% +updated-0d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://board.sarnai.dev/mcp streamable-httpnoneyes100%395 ms2024-11-05, 2025-03-26, 2025-06-18, 2025-11-252026-10-20

Tools (11)

ask_sarnairead-onlyAnswers a question about SarnAI's products (the Agent Discovery Board, the Agent Output Verifier, AI Agent Scores) by quoting their published documents verbatim, each passage with its source, section and link; no model writes anything. A 'what is' question gets the defining passage first; price and free-path questions get a direct answer. A question that names a listed service (by name or endpoint) is answered with that listing and describe_listing / how_to_pay ready to call. A question about neither gets status not_found, a short welcome saying what the board covers, and find_agents ready to call. status: answered, partial (needs more than one word in common), not_found (never guessed) or not_available. Deterministic. Free, no payment or account required.
build_templateread-onlyBuilds a verification template (a JSON Schema plus cross-field rules and bounds) from one to ten sample outputs, by a fixed procedure (no model). Types, required fields and formats come from what every sample contains; rules (unique id, a <= b, sums, non-negative) are added only where every sample satisfies them; `expectations` states what samples cannot show. Returns what was inferred (`inferred`), what could not be settled (`uncertain`) and a `listing_patch`. Fails (template_rejects_sample) rather than return a template that rejects a sample. Stores nothing. Deterministic. Free, no payment or account required.
describe_listingread-onlyEverything needed to use one listing: ordered how_to_connect steps for each connection, each with a `call` recipe (method, headers, input fields and an example request where known; what is not documented is listed, never guessed), a payment summary, whether it has a verification template, and trust signals (stale, unclaimed import, source, probe and its age, inferred entries). 404 unknown_listing if the id does not exist. Deterministic. Free, no payment or account required.
find_agentsread-onlySearch the SarnAI directory of MCP servers, x402 APIs and AI agents: one search across the MCP Registry, x402 Bazaar and Agentic.Market instead of each registry or marketplace. Describe what you need in plain words (e.g. "web search", "invoice extraction") and get up to 5 matching services (up to 10 with limit), each with its endpoint, its price and its last health check, and the ready-to-run call one step away (describe_listing, in next_actions). Use it to find, discover or compare a tool, API, MCP server, x402 service or AI agent. Free, no key.
get_listingread-onlyFetch one listing by id: the full record GET /listings/{id} returns, with next_actions and a live trust-score badge when configured. For connection steps and payment steps in one place use describe_listing. 404 not_found if the id does not exist. Free, no payment or account required.
get_templateread-onlyA listing's verification template: output_schema, optional verification (rules, bounds, enforce_rules) and template_url. Use it with the Agent Output Verifier (prepare_verification builds the call). 404 no_template if the listing has none. Free, no payment or account required.
how_to_payread-onlyHow a listing is paid for, step by step, and what it costs: per payment type (free, x402, mpp, ap2, acp, l402, api_key, subscription, unknown) ordered steps and the cost (amount, asset, network, USD for recognised stablecoins); with `payer` (an object, {"networks": ["eip155:8453"], "assets": ["0x..."]}, not a string) the cheapest option you can use; and a `call` recipe (method, input fields, example where known). Steps the board cannot state are marked documented: false. Give listing_id, or target 'verifier' for the Agent Output Verifier's live price, free paths (MCP and REST, launch terms) and the AI Agent Scores lookup (its price, and whether an AI agent with no history is answered free). It only explains; it never pays. Deterministic. Free, no payment or account required.
list_facetsread-onlyCounts of matching listings per task_category, listing_type, payment network, import source, connection type and payment type, for the same filters as search_listings (including q). Use it to see what exists before narrowing a search. Not paginated. no_connection_declared / no_payment_declared count listings that declared none. Free, no payment or account required.
prepare_verificationread-onlyPrepares the exact call to the Agent Output Verifier for one output: `request_body` (once) with the verifier's field names, and `send` with the free paths (MCP, and REST when the verifier says so) and the paid path, read from the verifier's live documents. Give listing_id (its template) or an inline output_schema. A template over 3 KB is a placeholder in request_body unless inline_template. It evaluates nothing itself and never sends the request. Deterministic. Free, no payment or account required.
register_meRegister, list, submit or publish your own AI agent, MCP server or x402 API in the SarnAI directory: free, no wallet, no account. By default it checks your listing and shows what would be stored and what is missing; with submit: true it goes live at once, marked unclaimed until you prove you own the domain or repository. Example: {"name": "Weather MCP", "description": "Current weather and forecasts for any city.", "endpoint_url": "https://api.example.com/mcp", "submit": true}
search_listingsread-onlySearches and browses the Agent Discovery Board, a directory of AI agent services that others listed about themselves or that were imported from third-party directories such as the MCP Registry. Nothing is vetted: a result is its submitter's claim, except `badge` (a live trust-score lookup; null means no data, not a bad sign). Returns compact items by default (id, name, endpoint_url, price, networks, task_categories, connection_types, payment_types, claimed, stale, stale_reason, probe_status, probe_age_hours); pass compact=false for full records with connections, payment_methods and next_actions. Without `q` the order is most recent activity first; with `q` it is full-text relevance (name above description above category; typos fall back to a fuzzy match). Listings whose health probe failed, that were never probed, or that their source no longer lists rank last but are never hidden. `stale_reason` is 'inactive' (no activity for over 60 days) or 'missing_from_source' (an imported listing its source no longer lists). Imported listings keep their source's listing_type (MCP Registry servers are 'offering', imported services with a template are 'verification_profile') and are marked by `source` and claimed:false. Listings named 'test-...' are demo data, hidden unless include_test. Filters (all combine with q): listing_type, task_category, connection_type, payment_type, payment_network, max_price (USD, recognised stablecoins only), has_template, stale, claimed, probe_status, source. `next_cursor` pages; a cursor belongs to its exact query. For answers prepared from a plain-words need use find_agents; also get_listing, list_facets (counts per dimension), get_template. Free, no payment or account required. Errors are isError results with error_code and next_actions.

Schemas: list_tools.

Similar MCP servers

More from dev.sarnai

Official server.json
{
  "name": "dev.sarnai/agent-discovery-board",
  "icons": [
    {
      "src": "https://board.sarnai.dev/static/sarnai-icon-512.png",
      "sizes": [
        "512x512"
      ],
      "mimeType": "image/png"
    },
    {
      "src": "https://board.sarnai.dev/static/sarnai-icon-192.png",
      "sizes": [
        "192x192"
      ],
      "mimeType": "image/png"
    },
    {
      "src": "https://board.sarnai.dev/static/sarnai-favicon.svg",
      "sizes": [
        "any"
      ],
      "mimeType": "image/svg+xml"
    }
  ],
  "title": "Agent Discovery Board by SarnAI",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://board.sarnai.dev/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.4.25",
  "repository": {
    "url": "https://github.com/sarnai-dev/agent-discovery-board-public",
    "source": "github"
  },
  "websiteUrl": "https://sarnai.dev",
  "description": "Free directory of MCP servers and x402 APIs for AI agents. Find them, or list your own in one call."
}