_ registry / mcp + a2a streamable-http · checked 2h ago

io.apis/apis-io

listed under this name in a public catalogue; the server gives only its address, apis.io

https://apis.io

Registry code: 3076df0b171de388

api record

Discovery, and now management, over the APIs.io catalog: 146 tools, 36 guided prompts, and attachable resources. LIGHTER ENDPOINTS: this endpoint lists every tool (~48K tokens of tool definitions). If you only need one kind of work, connect to a task-scoped toolset instead — same tools, same auth, a fraction of the context: https://apis.io/mcp/discover (46 tools: read the catalog — search, providers, APIs, tags, taxonomy, estates, investors, the playground); https://apis.io/mcp/artifacts (31 tools: the artifact collections — OpenAPI, AsyncAPI, GraphQL, Arazzo, MCP, Postman, JSON Schema,…

endpoint
https://apis.io/mcp
door code
a0ad0c37f99f7057
protocol
streamable-http ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is io.apis/apis-io live?
Yes — it answered the hub's last check (checked 2h ago). It answered 100% of checks over the last 30 days.
Is io.apis/apis-io free to use?
Partly — some of its tools are open, others need a key or payment.
What tools does io.apis/apis-io have?
146 tools: get_provider_artifacts, get_region, get_api_artifacts, match_providers, get_api, get_provider_estate, get_country, get_area, ….
Is io.apis/apis-io safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 99.7%· all time 99.6%

latency
856ms

last good check

priced tools
15

of 146 tools

_ answered our checks, 90 days 959 checks · signed record
  • degraded → live
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • live → degraded· timeout after 20000ms
_ what it is for
used for
  • search a catalog of public apis
  • get details and ratings for an api provider
  • find which providers expose an operation
  • browse apis by industry or capability
takes → gives
text → data
tools
21 reads4 changes data
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
1

through this hub

calls served
1

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 146 tools
15 paid33 open6 auth-required 92 never probed 54 of 146 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • insights_dimensions 0.05 USDC paid 43h ago

    Cross-section ranking of the 40 tracked investment dimensions (AI, cloud, governance, security, …) by how many profiled companies show signal. Understanding plan. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 22 lines
  • insights_industries reads 0.05 USDC paid 41h ago

    UNDERSTANDING — the demand-side industry rollup: the sectors the profiled companies fall into. Each row carries TWO counts and they answer different questions: `company_count` is the research roster, `profiled_count` is how many of those you can actually read back via find_company_insights(industry:) — size a cohort on profiled_count. The counterpart to find_industries, which counts SUPPLY (providers publishing APIs into a vertical) — this counts DEMAND (companies buying into it). Comparing the two is how you find a sector with buyers and no sellers. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 22 lines
  • find_estates 0.01 USDC paid 7d ago

    UNDERSTANDING — Browse corporate estates — one COMPANY whose API surface is spread across many provider records (Amazon 237, Salesforce 27, Cisco 37). Ranked by member count. Use this when two slugs look like separate vendors and you need to know whether they are one company. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 26 lines
  • agent_readiness_dimensions 0.01 USDC paid 9d ago

    UNDERSTANDING — diffusion: for each agent-readiness dimension, how many scored providers satisfy it, out of how many, as a share. The denominator every "the agent web is/is not here yet" claim needs and almost never has. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 22 lines
  • insights_adoption 0.05 USDC paid 45h ago

    Services, tools, or standards ranked by how many companies adopt them across the profiled set. Understanding plan. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "type": {
          "enum": [
            "service",
            "tool",
            "standard"
          ],
          "type": "string",
          "default": "service",
          "description": "What to rank by adoption: \"service\" (default), \"tool\" or \"standard\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 32 lines
  • find_vcs reads 0.01 USDC paid 5d ago

    UNDERSTANDING — Find venture-capital firms by name, thesis tags, or category. Each carries a network-matched, rated portfolio graph. Sort by portfolio_on_network (default), portfolio_total, portfolio_rating, or name. Understanding plan. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "portfolio_on_network",
            "portfolio_total",
            "portfolio_rating",
            "name"
          ],
          "type": "string",
          "description": "Order: portfolio_on_network, portfolio_total, portfolio_rating or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "category": {
          "type": "string",
          "description": "Firm category, e.g. \"Venture Capital\"."
        }
      }
    }
    arguments 47 lines
  • my_workspace 0.01 USDC paid 20h ago

    UNDERSTANDING — the workspace root: which plan you are on, how many saved searches and lists you hold, and where each lives. Answers "what do I have here and what can I afford" in one call, so an agent need not probe. NOT the same as the account (login, API key, usage, billing), which is https://apis.io/api/v1/auth/me. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • list_lists 0.01 USDC paid 36h ago

    UNDERSTANDING — List the lists/shortlists you own. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • find_scopes reads 0.01 USDC paid 6d ago

    OAuth scope catalogs across the catalog. The OAuth scopes an API defines. Understanding plan. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "scope_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or scope_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 68 lines
  • find_security 0.01 USDC paid 6d ago

    Security artifacts across the catalog. Authentication, domain security, VDP, trust center. Understanding plan. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "scheme_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or scheme_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 68 lines
  • get_rating_rubric 0.01 USDC paid 2d ago

    UNDERSTANDING — the rubric: bands, facet weights, trend thresholds, so an agent can interpret any score. Moved behind the paywall with the ratings data on 2026-08-31. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • list_saved_searches 0.01 USDC paid 33h ago

    UNDERSTANDING — List the saved searches you own (name, criteria, when last run, how many matches are tracked). Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • my_checks 0.01 USDC paid 24h ago

    INFLUENCE — the check requests you filed, newest first. Requires a key or login — an anonymous caller has no identity to scope a list to, and should read a single request with check_status instead. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • insights_overview 0.05 USDC paid 38h ago

    UNDERSTANDING — the Insights root: how many companies are profiled, over how many quarters, and the top investment dimensions across the whole set. Read this FIRST — it tells you the size and vintage of the corpus before you draw a conclusion from any single company in it. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • list_watches reads 0.01 USDC paid 29h ago

    INFLUENCE — the listings you are watching, with the events registered for each and when you started. The read half of watch_listing: call it before registering another, so you neither duplicate a watch nor assume one is in place that never took. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • apis_io_search open 8d ago

    START HERE. Federated overview of the APIs.io catalog for a query: the top matching APIs, providers, AND tags in one call, each with its total match count. Filter by tags, artifact types, industry, region, rating band. `limit` is per section. To page/sort the full list of ONE type, use find_apis / find_providers / find_tags; for one entity, get_api / get_provider.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "area": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Area slugs, e.g. [\"security\"]."
        },
        "band": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "exemplar | strong | developing | thin | minimal."
        },
        "sort": {
          "enum": [
            "relevance",
            "composite",
            "name",
            "created",
            "modified",
            "api_count",
            "demand"
          ],
          "type": "string",
          "description": "Default: relevance with `q`, else composite."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 5,
          "maximum": 25,
          "minimum": 1,
          "description": "Top matches to return per section (apis/providers/tags)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "region": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Region slugs, e.g. [\"north-america\"]."
        },
        "return": {
          "enum": [
            "apis",
            "providers",
            "tags"
          ],
          "type": "string",
          "description": "Return only this kind of match. Default: every kind."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "industry": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Industry slugs, e.g. [\"fintech\"]."
        },
        "min_score": {
          "type": "number",
          "description": "Minimum Kin Score composite (0-100), e.g. 60."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs to restrict all three sections to, e.g. [\"stripe\"]."
        },
        "artifact_types": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Artifact types required, e.g. [\"OpenAPI\"]."
        }
      }
    }
    arguments 104 lines
  • get_prices open 9d ago

    What one call costs on the pay-as-you-go plan, by cost band. FREE — and deliberately so: an agent that learns a price only when it is refused has already been refused by its own wallet. Call this BEFORE budgeting a run of paid tools. Returns the bands (free catalog reads, single-entity synthesis, cross-catalog synthesis, per-row bulk) and every priced resource key. Under an Understanding or Influence subscription these calls are included in the plan; these prices are what per-call access costs. The same map prices x402 payments and the x-price-usd header, so all three agree.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 9 lines
  • find_tags open 5d ago

    Paginated, sortable list of tags in the taxonomy. Filter by `axis` to separate MARKETS (a business someone is in) from CAPABILITIES (the name of a resource in somebody's OpenAPI) — the single most useful distinction in the vocabulary, and a coin flip without it. A tag can carry more than one axis, so axis=market means market is ONE of its axes. Use apis_io_search first for a cross-type overview.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "axis": {
          "type": "string",
          "description": "market | capability | persona | posture. Comma-separated for more than one."
        },
        "band": {
          "type": "string",
          "description": "canonical | established | emerging | niche | stale | posture."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "composite",
            "name",
            "created",
            "modified",
            "api_count",
            "demand"
          ],
          "type": "string",
          "description": "Default: relevance with `q`, else composite."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only these top-level keys, e.g. [\"slug\",\"score\"]."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "min_api_count": {
          "type": "integer",
          "minimum": 0,
          "description": "Only tags applied to at least this many APIs."
        }
      }
    }
    arguments 68 lines
  • find_industries reads open 7d ago

    Browse industry verticals; sort by provider/API count.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "type": "string",
          "description": "Order: name, api_count, provider_count or composite, e.g. \"provider_count\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 30 lines
  • find_regions reads open 6d ago

    Browse geographic regions; sort by provider/API count. Returns the 18 regions themselves. The collection also holds region x industry crossover pages (nordics-healthcare and 1,097 more); those are excluded unless you ask for them with type.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "type": "string",
          "description": "Order: name, api_count, provider_count or composite, e.g. \"provider_count\"."
        },
        "type": {
          "enum": [
            "region",
            "region-industry",
            "all"
          ],
          "type": "string",
          "default": "region",
          "description": "Which record kind to list. `region` (default) is the dimension itself; `region-industry` is the crossover pages; `all` is both."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 40 lines
  • find_countries open 8d ago

    Browse the country dimension — the finest of the four place taxonomies, and the one a buyer usually names ("who is in Germany"). Peer to find_industries / find_regions / find_areas. Search by text; sort by provider count. Membership is derived and known to be partial: read a count as a floor, not a census.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "type": "string",
          "description": "Order, e.g. \"name\" or \"provider_count\"."
        },
        "type": {
          "enum": [
            "country",
            "country-industry",
            "all"
          ],
          "type": "string",
          "default": "country",
          "description": "Which record kind to list. `country` (default) is the dimension itself — the 27 countries the catalog covers; `country-industry` is the crossover pages (\"Education & EdTech in China\"); `all` is both."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 40 lines
  • find_regulations open 6d ago

    Browse the laws, statutes and accreditations the catalog tracks, each joined to the countries, regions and industries it binds. Filter by scope=horizontal to get the regimes that reach a provider with NO industry tag at all, which is the question tags alone cannot answer; or by kind (regulation/statute/accreditation/regulator-guidance) or jurisdiction. A null company_count means the job-corpus pass has not run for that name — it is NOT a measured zero.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "kind": {
          "type": "string",
          "description": "Kind of regime: regulation, statute, accreditation or regulator-guidance."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "scope": {
          "type": "string",
          "description": "Regulation scope; \"horizontal\" returns regimes that bind regardless of industry."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "jurisdiction": {
          "type": "string",
          "description": "Case-insensitive substring of the jurisdiction, e.g. \"EU\" or \"United States\"."
        }
      }
    }
    arguments 38 lines
  • find_extensions open 7d ago

    Browse every OpenAPI `x-` specification extension harvested across the catalog, with the provenance the OpenAPI Initiative registry does not carry: who publishes it, in how many documents, where in the document it appears, and what shape the value takes. Search by key or purpose; sort by occurrences.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "type": "string",
          "description": "Order: occurrences or documents (largest first), or name, e.g. \"occurrences\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_pipeline": {
          "type": "boolean"
        }
      }
    }
    arguments 33 lines
  • find_tag_groups open 6d ago

    START HERE for capability-map questions. The 1,500+ tag groups the catalog computes — sets of tags that demonstrably travel together across providers (Cards, Logistics, Wealth Management, Observability), the layer between a single tag and a coarse facet. Every response carries a `coverage` block: about a quarter of the vocabulary is in NO group, and any count taken from here should be read against `ungrouped_share`. Pass exclude=cross_cutting,sparse to drop the groups that are plumbing rather than markets.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Substring match on group name, slug or member tag."
        },
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "basis": {
          "enum": [
            "cooccurrence",
            "facet"
          ],
          "type": "string",
          "description": "cooccurrence groups are evidence-based; facet groups are a weaker fallback bucket for tags with no co-occurrence edge."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "exclude": {
          "type": "string",
          "description": "Comma-separated: cross_cutting (plumbing every provider has), sparse (a chain label propagation strung together, not a cluster). Use both when drawing a capabilities map."
        },
        "min_tags": {
          "type": "integer",
          "description": "Only groups holding at least this many tags."
        }
      }
    }
    arguments 39 lines
  • find_openapis open 7d ago

    OpenAPI specifications across the catalog. The REST contract. get_openapi returns one API's primary spec with optional inlined body. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • find_asyncapis open 8d ago

    AsyncAPI (event-driven) specifications across the catalog. Event/streaming APIs. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "version": {
          "type": "string",
          "description": "AsyncAPI spec version — the `asyncapi:` declaration, e.g. 2.6.0 or 3.0.0."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "info_version": {
          "type": "string",
          "description": "The document's OWN version from info.version, set by whoever wrote the spec. Absent on 70% of them."
        }
      }
    }
    arguments 75 lines
  • find_channels open 8d ago

    AsyncAPI event channels across the catalog. Individual event channels (topics/streams). Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "version": {
          "type": "string",
          "description": "AsyncAPI spec version the channel is defined in, e.g. 2.6.0 or 3.0.0."
        },
        "protocol": {
          "type": "string",
          "description": "Transport the channel runs over: ws, http, sse, kafka, mqtt, amqp, nats, grpc… Empty where the document never says, which is most of them."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 75 lines
  • find_graphql open 7d ago

    GraphQL schemas across the catalog. GraphQL type systems. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • find_arazzo open 8d ago

    Arazzo workflows across the catalog. Multi-step API workflows chaining operations. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • find_mcp open 7d ago

    MCP servers across the catalog. Model Context Protocol servers a provider offers to agents. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "install_method": {
          "type": "string",
          "description": "How the server is delivered: \"Hosted endpoint\", \"GitHub repo\", \"Documentation link\"."
        }
      }
    }
    arguments 71 lines
  • find_skills open 6d ago

    Agent Skills across the catalog. Packaged agent skills. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • find_plans open 7d ago

    Pricing plans across the catalog. An API's pricing tiers. meta says who wrote the file (method), when it was read (provenance_date), who the page prices for (audience), how (pricing_basis), and whether a price is stale. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "plan_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or plan_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "method": {
          "type": "string",
          "description": "Who wrote the file: \"searched\" (transcribed from the provider's page), \"probed\" (read live), \"generated\" (API Evangelist sweep, unverified), \"unmarked\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "audience": {
          "type": "string",
          "description": "Who the pricing page prices for: \"developer-api\" (API or platform usage), \"business-product\" (the product the API comes with), \"consumer\" (a fee schedule), \"unclear\"."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "pricing_basis": {
          "type": "string",
          "description": "How it is priced: \"per-call\", \"per-seat\", \"ad-valorem\", \"flat-platform\", \"tiered-subscription\", \"usage-other\", \"negotiated\", \"free\", \"none\"."
        }
      }
    }
    arguments 80 lines
  • find_rate_limits open 7d ago

    Rate-limit policies across the catalog. Declared throttling policies. meta carries method, provenance_date, the exhaustion status and the response headers that signal limit state. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "limit_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or limit_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "method": {
          "type": "string",
          "description": "Who wrote the file: \"searched\", \"probed\", \"generated\" (unverified sweep output), \"unmarked\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 72 lines
  • find_sla open 7d ago

    Service levels (SLA4OAI) across the catalog. Uptime a provider promises on its SLA page and reports on its status page, kept separate, quoted from its own pages. APIs.io runs no monitors, so nothing is measured or verified. method "generated" marks a synthetic base with no uptime figure, which is not a statement by the provider. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "method": {
          "type": "string",
          "description": "Who wrote the file: \"searched\" (quoted from the provider's pages) or \"generated\" (synthetic base, no uptime figure)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 71 lines
  • find_finops open 7d ago

    FinOps / billing models across the catalog. How usage is metered and billed. meta carries the billing model (pricing category), method, provenance_date, primary_unit (what the provider bills by) and `template: true` on sweep output that restates the FinOps framework without a unit, meters or a pricing category. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "method": {
          "type": "string",
          "description": "Who wrote the file: \"searched\", \"probed\", \"generated\" (unverified sweep output), \"unmarked\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "billing_model": {
          "type": "string",
          "description": "Pricing category substring, e.g. \"subscription\", \"usage\", \"prepaid\", \"take rate\"."
        }
      }
    }
    arguments 75 lines
  • find_collections open 8d ago

    Postman / Open collections across the catalog. Runnable request collections. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "item_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or item_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 68 lines
  • find_json_structures open 7d ago

    JSON Structures across the catalog. Data structures behind an API. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "property_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or property_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "struct_type": {
          "type": "string",
          "description": "Root type: object, array, datetime, …"
        }
      }
    }
    arguments 72 lines
  • find_examples reads open 7d ago

    Example payloads across the catalog. Real request/response examples. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "key_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or key_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 68 lines
  • find_apis_json open 8d ago

    APIs.json indexes across the catalog. The APIs.json discovery documents themselves. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • find_apis open 8d ago

    Paginated, sortable list of APIs across providers — filter by tag, provider, artifact type, industry, region, or rating band. `q` is lexical over the API's own name and description; include=["via_provider"] adds APIs of providers whose name matched (the union apis_io_search counts). Use apis_io_search first for a cross-type overview. Parameter reference: apis://docs/tools/find_apis.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "area": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Area slugs, e.g. [\"security\"]."
        },
        "band": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "exemplar | strong | developing | thin | minimal."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "composite",
            "name",
            "created",
            "modified",
            "api_count",
            "demand"
          ],
          "type": "string",
          "description": "Default: relevance with `q`, else composite."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only these top-level keys, e.g. [\"slug\",\"score\"]."
        },
        "public": {
          "type": "boolean",
          "description": "Callable with no signup (onboarding=open)."
        },
        "region": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Region slugs, e.g. [\"north-america\"]."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "via_provider"
            ]
          },
          "description": "via_provider: also return APIs of providers whose name matched `q`. Needs `q`."
        },
        "pricing": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "free | freemium | free-trial | paid | enterprise, e.g. [\"free\"]."
        },
        "resolve": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "default": "on",
          "description": "on (default) uses a tag `q` names; off = text only."
        },
        "try_now": {
          "type": "boolean",
          "description": "Usable at no cost right now (free/trial + self-serve/open)."
        },
        "industry": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Industry slugs, e.g. [\"fintech\"]."
        },
        "min_score": {
          "type": "number",
          "description": "Minimum Kin Score composite (0-100), e.g. 60."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "onboarding": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "open (no key) | self-serve | approval."
        },
        "provenance": {
          "enum": [
            "modeled",
            "unpublished",
            "published",
            "documented"
          ],
          "type": "string",
          "description": "modeled | unpublished | published | documented, e.g. \"documented\". Omit for all. Meanings: apis://docs/tools/find_apis."
        },
        "artifact_types": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Artifact types required, e.g. [\"OpenAPI\"]."
        },
        "onboarding_descriptor": {
          "type": "boolean"
        }
      }
    }
    arguments 170 lines
  • find_rules open 6d ago

    Spectral governance rulesets across the catalog. API design/linting rulesets. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "rule_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or rule_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 68 lines
  • find_json_ld open 7d ago

    JSON-LD contexts across the catalog. Linked-data vocabularies. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "class_count",
            "property_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or class_count / property_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 69 lines
  • get_playground_apis open 3d ago

    Curated APIs that are SAFE TO EXPERIMENT WITH — no key (or an instant, free, self-serve key), no cost, and no real-world side effects. Free, and deliberately so: this is where you start if you are new here. Every entry carries an `example_request` URL that returned HTTP 200 to an unauthenticated GET on the date shown, so it can be called immediately with no setup. Use this when you are new to this catalog, learning what an API call feels like, testing a tool-use loop, or need a harmless endpoint to demonstrate something. Defaults to the `starter` set; pass grouping="deep-archive" for institutional/OAI-PMH repositories.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "tag": {
          "type": "string",
          "description": "Filter by subject tag, e.g. weather, books, energy."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 50,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "access": {
          "enum": [
            "no-key",
            "instant-key"
          ],
          "description": "no-key = callable right now; instant-key = free self-serve key."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "grouping": {
          "enum": [
            "starter",
            "deep-archive"
          ],
          "description": "starter (default) is the good-first-experience set."
        }
      }
    }
    arguments 34 lines
  • find_providers open 7d ago

    Paged, sortable, filterable provider list. Size filters need Understanding. Reference: apis://docs/tools/find_providers.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "area": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Area slugs, e.g. [\"security\"]."
        },
        "band": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "exemplar | strong | developing | thin | minimal."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "composite",
            "name",
            "created",
            "modified",
            "api_count",
            "demand"
          ],
          "type": "string",
          "description": "Default: relevance with `q`, else composite."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "facet": {
          "type": "string",
          "description": "Facet, e.g. governance; needs min_facet."
        },
        "group": {
          "enum": [
            "estate"
          ],
          "type": "string",
          "description": "estate: one row per estate."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "trend": {
          "type": "string",
          "description": "up | down | flat since last scoring."
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only these top-level keys, e.g. [\"slug\",\"score\"]."
        },
        "public": {
          "type": "boolean",
          "description": "Callable with no signup (onboarding=open)."
        },
        "region": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Region slugs, e.g. [\"north-america\"]."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "country": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Country slugs, e.g. [\"united-kingdom\"]."
        },
        "pricing": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "free | freemium | free-trial | paid | enterprise, e.g. [\"free\"]."
        },
        "resolve": {
          "enum": [
            "on",
            "off"
          ],
          "type": "string",
          "default": "on",
          "description": "on (default) uses a tag `q` names; off = text only."
        },
        "try_now": {
          "type": "boolean",
          "description": "Usable at no cost right now (free/trial + self-serve/open)."
        },
        "api_tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tags on its APIs, e.g. [\"webhook\"]."
        },
        "industry": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Industry slugs, e.g. [\"fintech\"]."
        },
        "platform": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Vendor slugs, e.g. [\"mintlify\"]."
        },
        "max_score": {
          "type": "number",
          "description": "Maximum composite, e.g. 60."
        },
        "min_facet": {
          "type": "number",
          "description": "Minimum `facet` score, e.g. 70."
        },
        "min_score": {
          "type": "number",
          "description": "Minimum Kin Score composite (0-100), e.g. 60."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "min_acting": {
          "type": "integer",
          "description": "Minimum write operations, e.g. 5."
        },
        "onboarding": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "open (no key) | self-serve | approval."
        },
        "size_basis": {
          "type": "string",
          "description": "Size source, e.g. sec-edgar."
        },
        "size_status": {
          "type": "string",
          "description": "probed | unprobed (use probed for small firms)."
        },
        "revenue_band": {
          "type": "string",
          "description": "Revenue band(s), e.g. \"$1-10M\"."
        },
        "platform_area": {
          "type": "string",
          "description": "Platform area, e.g. hosting."
        },
        "publishes_api": {
          "type": "boolean",
          "description": "true = publishes an API."
        },
        "accepts_writes": {
          "type": "boolean",
          "description": "true = has write operations; false = read-only."
        },
        "artifact_types": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Artifact types required, e.g. [\"OpenAPI\"]."
        },
        "employees_band": {
          "type": "string",
          "description": "Size band(s), e.g. \"1-10,11-50\"."
        },
        "exclude_operator": {
          "type": "boolean"
        },
        "include_narrower": {
          "type": "boolean",
          "description": "With `tags`: add narrower-tag members."
        },
        "onboarding_descriptor": {
          "type": "boolean"
        }
      }
    }
    arguments 234 lines
  • find_json_schemas open 7d ago

    JSON Schemas across the catalog. Standalone data schemas. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • find_agents open 8d ago

    FREE, no account — the A2A agent registry: agents that registered THEMSELVES by serving an agent card and calling register_agent. Each row carries the card URL, the operator, and the last verification of the card (grade, protocol version, transport). This is the door an unattended agent can walk through unaided; the others need a person or a voucher.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 22 lines
  • find_areas reads open 8d ago

    Browse the API Evangelist areas taxonomy (authentication, webhooks, payments, …) — curated, scored provider indexes. Search by text; sort by provider count.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against name and description, e.g. \"payments\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "type": "string",
          "description": "Order: name, api_count, provider_count or composite, e.g. \"provider_count\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 30 lines
  • find_overlays open 4d ago

    OpenAPI Overlays across the catalog. Documents applied on top of an API contract to add or change what it says. meta says who wrote it (authorship: provider / derived / generated / unmarked), whether the provider hosts it (provider_hosted — the only kind the Kin Score credits), what the actions touch (purpose), the action counts and the contract it extends. Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name",
            "action_count",
            "target_count"
          ],
          "type": "string",
          "description": "Order: relevance / provider / name, or action_count / target_count (largest first)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "purpose": {
          "type": "string",
          "description": "What the actions touch: \"phrasing\" (x-apievangelist-phrasing per operation), \"servers\", \"documentation\", \"security\", \"removal\", \"update\"."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        },
        "authorship": {
          "type": "string",
          "description": "Who wrote the overlay: \"provider\" (published or hosted by the provider), \"derived\" (API Evangelist, from the provider's contracts), \"generated\" (API Evangelist tooling — most are conversational phrasing), \"unmarked\" (no record; never presented as the provider's)."
        }
      }
    }
    arguments 77 lines
  • find_ratings auth-required 6d ago

    Ranked ratings leaderboard — filter by band, score range, trend, or facet threshold. Sort by composite (default), delta (biggest gainers), or any quality facet (governance, security, …) to rank providers by that dimension. Each row also carries agent_readiness {score, band} and front_door_ai {band, band_label, score} — the two standalone layers, never part of the composite. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "band": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Rating bands: exemplar, strong, developing, thin, minimal, e.g. [\"strong\",\"exemplar\"]."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "composite",
            "delta",
            "agent_readiness",
            "front_door_ai",
            "discoverability",
            "contract_quality",
            "contract_governance",
            "operational_transparency",
            "developer_ergonomics",
            "access_clarity",
            "governance",
            "commercial_clarity"
          ],
          "type": "string",
          "description": "Leaderboard order; default composite. agent_readiness and front_door_ai rank the two standalone layers; providers with no reading sort last."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs the provider carries, e.g. [\"payments\"]."
        },
        "facet": {
          "type": "string",
          "description": "Facet to threshold with min_facet: discoverability, contract_quality, contract_governance, operational_transparency, developer_ergonomics, access_clarity."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "trend": {
          "type": "string",
          "description": "Week-over-week movement: \"rising\" (+5 or more), \"falling\" (-5 or more) or \"flat\" (within 5)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "max_score": {
          "type": "number",
          "description": "Only ratings at or below this composite. Pair with min_score for a range."
        },
        "min_facet": {
          "type": "number",
          "description": "Minimum score on `facet` (0-100); ignored without `facet`. E.g. 70."
        },
        "min_score": {
          "type": "number",
          "description": "Minimum Kin Score composite (0-100), e.g. 60."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Restrict to these provider slugs — the ratings of a named set."
        }
      }
    }
    arguments 81 lines
  • find_cohorts auth-required 8d ago

    START HERE for market-level questions. Every scored population of providers in the catalog — tags, industries, regions, areas and VC portfolios — as one browsable index. Filter by kind, minimum population, or promotion tier (report/brief/data). Then call cohort_stats for the distribution, cohort_rankings for the leaderboard. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Substring match on cohort name or slug."
        },
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Restrict to one roster source."
        },
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "tier": {
          "enum": [
            "report",
            "brief",
            "data"
          ],
          "type": "string",
          "description": "Promotion tier: report (100+, report-grade), brief (25+), data (everything else)."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "min_providers": {
          "type": "integer",
          "description": "Only cohorts with at least this many providers. 25+ is brief-grade, 100+ report-grade."
        }
      }
    }
    arguments 47 lines
  • deprecated_operations auth-required 8d ago

    UNDERSTANDING — every provider publishing at least one operation marked deprecated in its own OpenAPI, ranked by how many. The lifecycle view of the catalog: 8,297 deprecated operations across 681 providers, which nothing could see before, because a provider's own deprecated filter needs you to already suspect that provider. Drill in with get_provider_operations(deprecated=true). Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 22 lines
  • find_capabilities reads auth-required 8d ago

    START HERE for "what can a business do with these APIs". The business-capability model — 333 top-level capabilities across 28 industries — with how many catalog providers reach each one. Defaults to capabilities the catalog actually reaches; pass all=true for the whole model INCLUDING the ones with no coverage, which is a real answer rather than a gap: most of what an enterprise does runs on internal systems that publish no API. Free. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Match against name, BC id or industry."
        },
        "all": {
          "type": "boolean",
          "description": "Include capabilities with zero catalog coverage (default false)."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "industry": {
          "type": "string",
          "description": "e.g. \"Banking & Capital Markets\", \"Software & Technology\"."
        }
      }
    }
    arguments 34 lines
  • find_company_insights auth-required 8d ago

    Browse profiled companies (Fortune 1000) by name or industry; ranked by overall technology-readiness signal. `industry` takes an insights industry NAME from insights_industries (e.g. "Industrial") — a different vocabulary from the catalog industry slugs find_providers uses — and matches every roster a company sits on, not just its primary. Understanding plan. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against company name, e.g. \"stripe\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "industry": {
          "type": "string",
          "description": "Industry slug to narrow to, e.g. \"artificial-intelligence\"."
        }
      }
    }
    arguments 30 lines
  • find_agent_readiness auth-required 8d ago

    UNDERSTANDING — the agent-readiness leaderboard across the whole catalog. Rank providers by agent readiness, and filter to those that DO satisfy (has) or do NOT satisfy (missing) specific dimensions — e.g. has="mcp_server,protected_resource_metadata" is the OAuth-capable MCP cohort, missing="agent_card" is the addressable market for a fix. Returns agent score + band alongside the Kin Score. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "has": {
          "type": "string",
          "description": "Comma-separated dimensions the provider MUST satisfy (ANDed), e.g. mcp_server,idempotency."
        },
        "band": {
          "type": "string",
          "description": "Restrict to one or more agent-readiness bands."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "agent_readiness"
          ],
          "type": "string",
          "description": "Ranked by agent readiness, highest first."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "missing": {
          "type": "string",
          "description": "Comma-separated dimensions the provider must NOT satisfy (ANDed) — the gap view."
        },
        "min_score": {
          "type": "number",
          "description": "Minimum agent-readiness score, 0-100."
        }
      }
    }
    arguments 45 lines
  • get_provider_artifacts unknown 2d ago

    Every artifact a provider publishes — provider-level (MCP, security, scopes, rules, agentic-access) and per-API (OpenAPI, Arazzo, overlays, reference docs) — grouped by type with counts. by_type_counts is the full summary; pass `type` (e.g. OpenAPI, MCP) to scope the artifacts list to one type, since an unfiltered provider can be 250+ entries.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "type": {
          "type": "string",
          "description": "Return only artifacts of this type (synonym-aware: MCP matches MCPServer)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 20 lines
  • get_region unknown 27h ago

    One region: metadata + a top sample of its member providers (ranked, with the total). Use find_providers?region=slug for the full list, or view=full here. Results carry `next`: the sub-resources that exist for this entity and the exact tool call that retrieves each, computed from this record. Pass include_next=false to omit it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Region slug, as find_regions returns it, e.g. \"north-america\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Top members to show."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 37 lines
  • get_api_artifacts unknown 4d ago

    One API's artifacts grouped by type (by_type_counts is the full summary); pass `type` to scope the list to one type (synonym-aware: MCP matches MCPServer), include=["content"] to inline the bodies.

    mcp-tool

    {
      "type": "object",
      "required": [
        "aid"
      ],
      "properties": {
        "aid": {
          "type": "string",
          "description": "API id in the form provider:api-slug, as find_apis returns it, e.g. \"stripe:stripe-api\"."
        },
        "type": {
          "type": "string",
          "description": "Return only artifacts of this type."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        }
      }
    }
    arguments 29 lines
  • match_providers unknown 5h ago

    UNDERSTANDING — The supply↔demand join: apis.io providers whose product appears in a company's adopted stack, ranked by rating. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Company (provider) slug, as find_company_insights returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_api reads unknown 4d ago

    Full detail for one API by aid (provider:api-slug); set include=["content"] to inline artifact bodies. Results carry `next`: the sub-resources that exist for this entity and the exact tool call that retrieves each, computed from this record. Pass include_next=false to omit it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "aid"
      ],
      "properties": {
        "aid": {
          "type": "string",
          "description": "API id in the form provider:api-slug, as find_apis returns it, e.g. \"stripe:stripe-api\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        },
        "artifact_types": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only return artifacts of these types, e.g. [\"OpenAPI\"]."
        }
      }
    }
    arguments 37 lines
  • get_provider_estate unknown 2d ago

    Which corporate estate a provider belongs to, if any. Answers 200 with estate:null when the provider stands alone — that is a measured absence, not a missing record.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_country unknown 3d ago

    One country: metadata, counts, and a top sample of member providers (with the total). Use find_providers?country=slug for the full ranked list, or view=full here.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Country slug, as find_countries returns it, e.g. \"united-kingdom\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Top members to show."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 37 lines
  • get_area unknown 4d ago

    One area: metadata, its dedicated site link, and a top sample of member providers (with the total). Use find_providers?area=slug for the full list, or view=full here. Results carry `next`: the sub-resources that exist for this entity and the exact tool call that retrieves each, computed from this record. Pass include_next=false to omit it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Area slug, as find_areas returns it, e.g. \"security\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Top members to show."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 37 lines
  • get_provider_rating reads unknown 2d ago

    One provider's full rating breakdown (composite, band, trend, six facets), with the two standalone readings beside it: agent_readiness {score, band} and front_door_ai (Front Door AI Index — 1-6 band, raw count, density, tier split, probe date; score is null when the provider does not own its front-door host). Null means no reading, not a zero. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_tag_group unknown 12h ago

    One tag group: its member tags and the full provider roster resolved from the catalog, each with Kin Score and agent readiness. Filter the roster by industry, region, country or area. Free; the DISTRIBUTION over the roster (`stats`) needs Understanding. Note `source_provider_count` vs `provider_count` — the first comes from an index that caps band membership at 1,000, the second is resolved live and is the complete number.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "area": {
          "type": "string",
          "description": "Narrow the roster to one or more area slugs (comma-separated)."
        },
        "slug": {
          "type": "string",
          "description": "Tag group slug, e.g. cards, logistics, wealth-management."
        },
        "region": {
          "type": "string",
          "description": "Narrow the roster to one or more region slugs (comma-separated)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "country": {
          "type": "string",
          "description": "Narrow the roster to one or more country slugs (comma-separated)."
        },
        "industry": {
          "type": "string",
          "description": "Narrow the roster to one or more industry slugs (comma-separated)."
        }
      }
    }
    arguments 32 lines
  • tag_group_tags unknown 9d ago

    The member tags of one tag group, each joined to its catalog record — provider count, api count, tag quality band and composite. Use it to see what a group is actually made of before trusting the group as a market. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Tag group slug, as find_tag_groups returns it, e.g. \"company\"."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 26 lines
  • cohort_stats reads unknown 5d ago

    UNDERSTANDING — the DISTRIBUTION for a whole market: Kin Score mean/median/min/max/stdev, agent-readiness spread, band split, per-facet averages, and artifact adoption rates. This is the market-stats sheet from a Trend Report, computed live. Always carries a `coverage` block saying how much of the roster is actually scored AND how deeply we enriched it (`enrichment_depth`: mean catalog_gap and median artifact directories). Read that before quoting the mean anywhere: cohort enrichment depth spans ~42 points of catalog_gap across the catalog, so part of any cohort number is our coverage rather than the market. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 28 lines
  • cohort_scores unknown 5d ago

    UNDERSTANDING — facet-level scores for every member of a cohort, each with the cohort average and the delta against it. A 60 in governance means nothing until you know the market sits at 45; this is the endpoint that says so. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 38 lines
  • cohort_failures unknown 6d ago

    UNDERSTANDING — what a whole market gets WRONG: the agent-readiness checks its members most commonly fail, ranked by what fixing each would move the cohort mean. The inverse of gap_analysis, which says where a market is under-served; this says where it is failing the rubric. Turns "fix your OpenAPI" into "this industry does not publish OpenAPI", which is the shape of a finding worth publishing. Named checks only — facet rollups cannot name the checks underneath them. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 41 lines
  • cohort_capabilities unknown 6d ago

    UNDERSTANDING — what every member of a cohort actually publishes: artifact counts by type plus the agent-readiness dimensions each one satisfies. The capability matrix behind a market report. Large cohorts come back in byte-budgeted chunks: while `complete` is false, call again with `cursor` set to `next_cursor`; the last page has `complete: true` and a null `next_cursor`. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "cursor": {
          "type": "integer",
          "minimum": 0,
          "description": "Resume offset from a previous response's next_cursor. Omit for the first page; keep calling while next_cursor is not null."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 33 lines
  • compare_cohorts unknown 5d ago

    UNDERSTANDING — two markets side by side on one rubric: "is US payments further along than UK banking?" Returns both distributions plus the deltas on score, agent readiness, every facet and every adoption rate. A question a written report cannot answer, because a report only ever covers one market. CHECK `depth_confounded` FIRST: when the higher-scoring cohort is also the one we enriched more deeply, the delta reflects our own coverage as much as the markets, and `depth_note` says by how much. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "a",
        "b"
      ],
      "properties": {
        "a": {
          "type": "string",
          "description": "First cohort as <kind>:<slug>, e.g. \"tag:payments\"."
        },
        "b": {
          "type": "string",
          "description": "Second cohort as <kind>:<slug>, e.g. \"industry:banking\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 21 lines
  • get_agent_readiness unknown 4d ago

    EXPLORE — the agent-readiness dimensions and standalone score for ONE provider (spec presence, MCP server, auth clarity, idempotency, error semantics, rate-limit signal, well-known catalog, consent identity, dry-run…). A STANDALONE score, not a slice of the composite. For the same question across the catalog — who is agent-ready, which dimensions have actually diffused — use find_agent_readiness (Influence). Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_capability unknown 4d ago

    One business capability: its definition, its sub-capabilities, the external authorities it cites, WHICH catalog providers reach it with their ratings, and what it COSTS — `economics` carries how many suppliers publish a price and how opaque the market is (free), and for Understanding the entry-cost (USD/month) and marginal-cost (USD per unit, by unit) quartiles, take rate, pricing-basis mix, delivery mix and open-source alternatives, every figure graded A–D by how it was read. Accepts a slug or a BC id (e.g. "payments-card-management" or "BC-1340"). The per-tag edges WITH their evidence are get_capability_edges (Understanding). Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "capability"
      ],
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "capability": {
          "type": "string",
          "description": "Slug or BC id."
        }
      }
    }
    arguments 16 lines
  • get_provider_evidence unknown 2d ago

    How a provider's score was established, part by part: first-party (they published it), verified (we fetched and confirmed it), or derived (we inferred it). Free — the basis for a claim should never sit behind the claim. Call this before disputing or quoting a score.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • find_artifacts unknown 5d ago

    Find artifacts of ANY one type across the catalog — the cross-type entry point. Each type also has a dedicated find_<type> tool (find_mcp, find_rules, find_scopes, …) with sorts and filters unique to that type; prefer those when you know the type. Types: mcp, skills, rules, arazzo, plans, rate-limits, finops, collections, asyncapis, graphql, json-ld, channels, examples, json-schemas, json-structures, openapis, postman, apis-json. PRO: scopes, security. include=["content"] inlines bodies.

    mcp-tool

    {
      "type": "object",
      "required": [
        "type"
      ],
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text matched against artifact name and description, e.g. \"refunds\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs the artifact's API carries, e.g. [\"payments\"]."
        },
        "type": {
          "type": "string",
          "description": "Artifact collection to browse — plural: openapis, asyncapis, arazzo, postman, collections, graphql, json-schemas, json-structures, json-ld, rules, examples, finops, plans, rate-limits, apis-json, mcp, skills, channels, scopes, security. E.g. \"openapis\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 56 lines
  • gap_analysis unknown 4d ago

    UNDERSTANDING — For each provider: high-value artifacts it lacks (MCP, Arazzo, Rules, Skills…), what its peers commonly publish but it lacks, and its score vs the peer median — plus stack-level gaps across the set. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "providers"
      ],
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "min_share": {
          "type": "number",
          "description": "Peer-share threshold for a gap (0–1, default 0.25)."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs (1+). Multiple = treat as a stack."
        }
      }
    }
    arguments 23 lines
  • recommend_stack unknown 9d ago

    Design an API stack — the best-rated catalog provider per capability, assembled into a stack. The Understanding preview is the top pick per capability; the full answer adds alternatives, per-pick artifact gaps, and an exportable APIs.json + Arazzo hint. Decompose the domain into capabilities first, then pass them here. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "capabilities"
      ],
      "properties": {
        "region": {
          "type": "string",
          "description": "Optional region slug to prefer, e.g. europe."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The capabilities the stack needs, e.g. [\"payments\",\"email\",\"identity\",\"observability\"]."
        }
      }
    }
    arguments 23 lines
  • find_similar_providers unknown 4d ago

    Providers similar to a given one (alternatives) by shared tags, areas, industry, region, and artifact coverage. Products under the same owner (a sister, not a rival) are left out of the ranking and listed in meta.query.family; include_family=true ranks them in, flagged same_estate.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_family": {
          "type": "boolean",
          "description": "Rank same-owner products in with the rivals (flagged same_estate) instead of listing them in meta.query.family."
        }
      }
    }
    arguments 27 lines
  • find_rating_movers unknown never probed

    UNDERSTANDING — The biggest rating movers (up and down) since the previous scoring build. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • story_leads unknown 9d ago

    OWNER — The weekly "what's worth writing" rollup: ranked story leads from the demand map crossed with rating movement — unmet demand (searched, no result), risers/fallers, and hot-but-thin capabilities. Each lead is a headline, its signal, and a suggested angle. include=["raw"] appends the underlying demand report. Not purchasable: owner-only, at any price.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "raw"
            ]
          },
          "description": "Pass [\"raw\"] to include the raw demand and movement rows behind each lead."
        }
      }
    }
    arguments 18 lines
  • what_can_i_fix unknown 9d ago

    INFLUENCE — the ranked, gated punch list for one provider you own. Every agent-readiness check with points still on the table (exact — these are real per-check results, each with what satisfies it), plus the Kin Score facets ranked by weight x headroom rather than by lowest score. `do_first` is the headline and prefers a BAND GATE over any amount of points, because points cannot clear a gate. Use readiness_gates for the gate detail and simulate_fixes to price a plan before committing to it. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • simulate_fixes unknown 9d ago

    INFLUENCE — project a set of fixes onto a provider's agent-readiness score and band before doing the work. Re-applies the band gate to the PROJECTED state, so it will tell you when buying points still leaves you demoted. Kin Score facets are refused rather than estimated: several checks behind them are count-based across a provider's APIs, so a single claimed fix has no computable composite value. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug",
        "fixes"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "fixes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Agent-readiness dimension ids to assume fixed, e.g. [\"idempotency\",\"mcp_server\"]. what_can_i_fix lists the available ones."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 24 lines
  • plan_goal unknown 3d ago

    INFLUENCE — turn a goal into a grounded plan. Splits it into the smallest sub-goals an API call could satisfy, maps it onto a market outcome (Turbo EA value stream -> stages -> capabilities), and picks one real, phrased operation per sub-goal from the catalog — never an operation that is not in it. Name providers to stay within them, or leave them out to search every phrased provider. Returns coverage per sub-goal (covered / unmatched / unphrased / gap), any prebuilt cross-provider Arazzo composition for the outcome, and a bundle whose compose link feeds compose_goal. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "goal"
      ],
      "properties": {
        "goal": {
          "type": "string",
          "description": "What the agent should accomplish, in plain language, e.g. \"charge a customer and text them a receipt\"."
        },
        "stream": {
          "type": "string",
          "description": "Optional value stream id or name to force, e.g. \"Order-to-Cash\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Optional provider slugs to stay within, e.g. [\"stripe\",\"twilio\"]."
        }
      }
    }
    arguments 27 lines
  • generate_artifact unknown never probed

    INFLUENCE — REQUEST an artifact you are being marked down for not having: apis-json, agent-card, mcp (one tool per operation you already publish), arazzo, rules (a Spectral ruleset scoped to your own failing checks), scopes and security (read out of your own OpenAPI), api-onboarding (an AOD 0.1 onboarding descriptor drafted from your listing, gaps named). Returns 202 — a person generates it against your live surface, checks it, and sends it to you. Nothing is published on your behalf either way: your score moves when YOU commit the file. Omit `artifact` to list what can be made. Priced B4 (human work) — included in Influence; otherwise $49.00 as a one-off with its own receipt, never from a prepaid balance. If this is your own company and our data about it is wrong, report_correction is free. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "artifact": {
          "enum": [
            "apis-json",
            "agent-card",
            "mcp",
            "arazzo",
            "rules",
            "scopes",
            "security",
            "api-onboarding"
          ],
          "type": "string",
          "description": "Which artifact to request: apis-json, agent-card, mcp, arazzo, rules, scopes, security or api-onboarding. Omit to request the full set."
        }
      }
    }
    arguments 30 lines
  • check_status reads unknown 6d ago

    INFLUENCE — the status of a check request by id: queued, in_review, running, done, rejected or needs_info, with any notes shared by the reviewer. The id identifies the request, but the Influence plan is now required to read it back. To report an error for free, use report_correction or open an issue on the provider's api-evangelist repo. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "The check id request_check returned (or my_checks lists)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • register_agent unknown never probed

    FREE, no account — register yourself in the A2A agent registry. Serve an agent card at /.well-known/agent-card.json on a host you control, then call this with its URL (or just the host). The card must be fetchable and pass the three A2A 1.0.0 hard checks: capabilities is an object, protocolVersion is present, skills is an array. 202 queues it for review; 422 says exactly which check failed. The card IS the evidence, so there is no form, no account, and nothing to wait for from us.

    mcp-tool

    {
      "type": "object",
      "required": [
        "card_url"
      ],
      "properties": {
        "role": {
          "enum": [
            "consumer",
            "provider",
            "both"
          ],
          "type": "string",
          "description": "Optional: whether the agent calls APIs (consumer), fronts one (provider), or both. Left out, it is inferred: a card host that serves /.well-known/api-onboarding is a provider."
        },
        "contact": {
          "type": "string",
          "description": "Optional: an email for questions about the registration."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "card_url": {
          "type": "string",
          "description": "Your agent card URL, or the host that serves it."
        },
        "operator": {
          "type": "string",
          "description": "Optional: who runs the agent."
        }
      }
    }
    arguments 33 lines
  • report_gap unknown never probed

    FREE, no account — tell the catalog what you looked for and could not find. The consumer door (roadmap#166): a gap report is how the catalog learns what to add next, and a person reads the queue. One required field.

    mcp-tool

    {
      "type": "object",
      "required": [
        "looked_for"
      ],
      "properties": {
        "found": {
          "enum": [
            "nothing",
            "wrong thing",
            "listed but unusable"
          ],
          "type": "string",
          "description": "What the search turned up: \"nothing\", \"wrong thing\" or \"listed but unusable\"."
        },
        "contact": {
          "type": "string",
          "description": "Optional email if you want to hear when the catalog can answer this."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "provider": {
          "type": "string",
          "description": "Optional slug, when the gap is about an existing listing."
        },
        "looked_for": {
          "type": "string",
          "description": "What you were looking for, in your own words."
        },
        "needed_for": {
          "type": "string",
          "description": "Optional: the task you needed it for."
        }
      }
    }
    arguments 37 lines
  • export_dataset reads unknown never probed

    LICENCE (sold on the Influence plan) — the WHOLE dataset, not a 100-row page: `ratings` (every rated provider with facets, trend, rubric + provenance), `providers` (the catalog with coverage + score), or `history` (every provider's full score time series — parallel date/composite/agent_readiness arrays across every scored build the catalog retains, with a movement summary per provider). `history` is the one nobody can reconstruct after the fact: it is the only record of what the catalog looked like on those dates. For media outlets and analysts licensing the data to publish rankings and trends. Every dataset exceeds one response, so they arrive in byte-budgeted chunks: while `complete` is false, call again with `cursor` set to `next_cursor` and concatenate `data`; the last page has `complete: true` and a null `next_cursor`. Attribute to apis.io and cite the rubric. Priced B3 (bulk export) — $0.002 per row, $0.50 minimum per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "cursor": {
          "type": "integer",
          "minimum": 0,
          "description": "Resume offset from a previous response's next_cursor. Omit for the first page; keep calling while next_cursor is not null."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "dataset": {
          "enum": [
            "ratings",
            "providers",
            "history"
          ],
          "type": "string",
          "default": "ratings",
          "description": "Which dataset to export: \"ratings\" (default), \"providers\" or \"history\"."
        },
        "co_brand": {
          "type": "string",
          "description": "Optional partner name for a co-branded license — stamps the attribution the license carries."
        }
      }
    }
    arguments 28 lines
  • export_stack unknown never probed

    UNDERSTANDING — Export a designed capability stack as an adoptable APIs.json document (with an Arazzo hint) the team can commit. Priced B3 (bulk export) — $0.002 per row, $0.50 minimum per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "capabilities"
      ],
      "properties": {
        "region": {
          "type": "string",
          "description": "Optional region slug to prefer."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The capabilities the stack needs, e.g. [\"payments\",\"email\",\"identity\"]."
        }
      }
    }
    arguments 23 lines
  • get_company_insight reads unknown 3d ago

    UNDERSTANDING — Full demand-side profile for one company: 40-dimension readiness scores, adopted stack, and per-quarter history. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Company (provider) slug, as find_company_insights returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • find_investors unknown 4d ago

    UNDERSTANDING — The reverse portfolio edge: which VC firms in the network back a given provider/company (by slug). The investor COUNT is free; the named firms need Understanding. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • enrich_provider unknown 5d ago

    One call, pick your field groups — resolves a slug OR any identifier and returns exactly the groups you ask for, instead of chaining get_provider + get_provider_rating + get_provider_artifacts + get_provider_onboarding. Groups: profile, onboarding, artifacts, rating, insights. Understanding plan — the base groups moved with the rest of the discovery layer on 2026-08-31. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Provider slug OR any identifier resolve() accepts."
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Field groups: profile, onboarding, artifacts, rating, security, insights. Default: profile+onboarding+artifacts+rating."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • run_saved_search unknown never probed

    UNDERSTANDING — Re-run one of your saved searches against the live catalog and return current matching providers. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Saved search id, as save_search returns it or list_saved_searches lists it."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • saved_search_net_new unknown 30d ago

    UNDERSTANDING — What is NEW for a saved search since you last checked: providers that newly match your criteria. Advances the delta cursor, so each call reports only what changed since the previous call. The agent-native version of the demand report. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Saved search id, as save_search returns it or list_saved_searches lists it."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • delete_saved_search unknown never probed

    UNDERSTANDING — Delete a saved search you own. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "Saved search id to delete, as list_saved_searches lists it."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_list reads unknown 3d ago

    UNDERSTANDING — Get a list you own, with each member resolved to its current name, band, and score. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "List id, as create_list returns it or list_lists lists it."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • add_to_list changes data unknown never probed

    UNDERSTANDING — Add providers/APIs (by slug or aid) to one of your lists. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id",
        "members"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "List id, as create_list returns it or list_lists lists it."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "members": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs and/or API aids to add, e.g. [\"stripe\",\"adyen:checkout-api\"]."
        }
      }
    }
    arguments 24 lines
  • submit_feedback unknown never probed

    Report something wrong with a result: wrong data, a filter that did not filter, a ranking that put off-topic results first, a number you could not reproduce, or an answer that was useless for your task. Free, and the fastest way to get a defect fixed — this is read by a human. Say what you expected as well as what you got.

    mcp-tool

    {
      "type": "object",
      "required": [
        "problem"
      ],
      "properties": {
        "tool": {
          "type": "string",
          "description": "Optional name of the tool that produced it."
        },
        "about": {
          "type": "string",
          "description": "Optional slug, aid or tag the report concerns."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "problem": {
          "type": "string",
          "description": "What was wrong. Be specific — the tool you called, the arguments, and what came back."
        },
        "expected": {
          "type": "string",
          "description": "What you expected instead."
        },
        "severity": {
          "enum": [
            "wrong",
            "misleading",
            "unhelpful"
          ],
          "type": "string",
          "description": "wrong = factually incorrect; misleading = correct but reads as something else; unhelpful = right and useless."
        }
      }
    }
    arguments 37 lines
  • report_correction changes data unknown never probed

    Report that the catalog has a provider WRONG — a wrong website, a wrong logo, APIs that are not theirs, a count that does not match what they ship, a score computed from any of those. Free, always: correcting our own error is never a paid feature. Read by a human. If you are the provider, say so — it does not gate anything, it tells us how fast to move.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug",
        "wrong"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "The provider slug the record is filed under."
        },
        "field": {
          "type": "string",
          "description": "Optional field name: website, image, api_count, tags, score, access_model, apis."
        },
        "wrong": {
          "type": "string",
          "description": "What is incorrect. Name the field if you can."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "correct": {
          "type": "string",
          "description": "What it should say instead."
        },
        "evidence": {
          "type": "string",
          "description": "A URL that shows it — your own docs, your own site. This is what makes a correction actionable rather than a claim."
        },
        "relationship": {
          "enum": [
            "provider",
            "customer",
            "observer"
          ],
          "type": "string",
          "description": "Your relationship to the provider. Never gates the report; it sets priority."
        }
      }
    }
    arguments 42 lines
  • get_country_leaders unknown 3d ago

    UNDERSTANDING — Top-rated providers in one country. Membership is derived and partial, so read the ranking as "the best of what we have placed there", not a national league table. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Country slug, as find_countries returns it, e.g. \"united-kingdom\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • get_regulation reads unknown 17h ago

    One regulation: what it is, its jurisdiction and scope, a link to the law itself, and reaches[] — the country, region and industry cohorts this regime binds. Use reaches[] to go straight to the affected members with find_providers.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Regulation slug, as find_regulations returns it, e.g. \"21-cfr-part-11\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • readiness_gates unknown 2h ago

    INFLUENCE — what blocks the next agent-readiness band, GATES BEFORE POINTS. Some bands are unreachable on score alone: agent-native requires idempotency AND a stable error envelope regardless of how many points a provider collects. Returns the points gap and the unmet gate requirements separately, each priced, plus a verdict saying whether clearing the gate also closes the gap — the case a points-arithmetic answer gets wrong every time. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_provider_capabilities unknown 2d ago

    What one provider publishes, counted by artifact type, with the agent dimensions it satisfies. Free — it is a fact about their own public surface. NOTE: this is artifact counts, NOT business capabilities — for what the vendor lets a business DO, call get_provider_business_capabilities. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_openapi unknown 2d ago

    An API's primary OpenAPI reference (url) — the top agent intent; set include=["content"] to inline the spec body.

    mcp-tool

    {
      "type": "object",
      "required": [
        "aid"
      ],
      "properties": {
        "aid": {
          "type": "string",
          "description": "API id in the form provider:api-slug, as find_apis returns it, e.g. \"stripe:stripe-api\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        }
      }
    }
    arguments 25 lines
  • get_extension unknown 3d ago

    One OpenAPI specification extension: its publishers, occurrence and document counts, where it appears, and the value shapes observed. CHECK is_api_evangelist BEFORE treating a key as provider-originated — some of these are published by API Evangelist, not by a vendor.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Extension key as find_extensions returns it, e.g. \"x-nullable\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 30 lines
  • get_vc unknown 10h ago

    UNDERSTANDING — One VC firm: identity, fund facts, and portfolio summary (totals, band distribution, average rating). Pass view=full to inline the whole portfolio. Understanding plan. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "VC firm slug, lowercase and hyphenated, as find_vcs returns it."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 25 lines
  • get_estate unknown 3d ago

    UNDERSTANDING — One estate: the owning provider, the full member roster with per-member API counts and bands, and the estate-wide rating. Use get_provider_estate(slug) to go the other way, from a provider to the company that owns it. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Estate slug — the owning company the estate is rooted at, as find_estates returns it, e.g. \"cisco\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 21 lines
  • get_cohort unknown 3d ago

    One cohort: its identity, its population, and the full member roster with each provider's Kin Score and agent readiness. Understanding plan. The analysis parts (stats/rankings/scores/capabilities) are Understanding too — they moved down from Influence on 2026-09-01. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 28 lines
  • get_capability_edges unknown 4d ago

    UNDERSTANDING — the evidence behind a capability. Every edge that lands on it: the provider, the tag, the exact OpenAPI file, a calibrated confidence, and the QUOTED FRAGMENT OF THE PROVIDER'S OWN CONTRACT that justifies the claim. Only edges at confidence >= 0.7 whose evidence was found verbatim in the source contract are published, so an edge here is checkable rather than asserted. This is what you cite when someone asks "says who?". Understanding plan. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "capability"
      ],
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "capability": {
          "type": "string",
          "description": "Slug or BC id."
        }
      }
    }
    arguments 16 lines
  • whats_changed unknown 9d ago

    UNDERSTANDING — What changed in the catalog since a date: providers added/updated, plus rating movement measured FROM THAT DATE — each provider's current score against its score at the first scored snapshot on or after `since`, with `was` and `compared_to` on every row. `basis` says whether the answer came from the recorded history or (when no snapshot covers the date) from last-build trend. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "since"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "since": {
          "type": "string",
          "description": "YYYY-MM-DD."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • get_rating_history unknown 31h ago

    UNDERSTANDING — A provider's REAL score time series: one point per scored build (composite + agent readiness on each date), plus a summary of the movement over the window — first/last, net change, direction, and the largest single-build jump with the date it happened. Not an implied previous point; these are the recorded snapshots. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • compose_goal unknown 3d ago

    INFLUENCE — hypermedia for a goal across providers: affordances with full href, HTTP method, safety and idempotence from RFC 9110 semantics, path parameters marked ready or needed against your state, the contract location for the full request schema, matching Arazzo workflows with their next step, and each provider's rate limits, pricing, MCP server and terms. POST back state.done and state.have via the replan link to get what is possible now. Pass operations from a plan_goal bundle, or a goal to rank within the providers. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "providers"
      ],
      "properties": {
        "goal": {
          "type": "string",
          "description": "The goal, ranked within the providers when operations is not given."
        },
        "limit": {
          "type": "integer",
          "description": "Affordances to return when ranking a goal (1-20, default 8)."
        },
        "state": {
          "type": "object",
          "description": "What is done and what you hold: {\"done\":[\"stripe:POST /v1/payment_intents\"],\"have\":{\"AccountSid\":\"AC...\"}}."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\",\"twilio\"]."
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Operation ids from a plan_goal bundle, e.g. [\"stripe:POST /v1/payment_intents\"]."
        }
      }
    }
    arguments 38 lines
  • correct_facts changes data unknown never probed

    INFLUENCE — propose corrections to what we say about you: name, description, url, industries, tags. Returns 202 and is applied by a person — an API that let an owner rewrite their own description unreviewed would be a marketing surface, not a catalog. Score and band are not owner-settable and are ignored. Priced B4 (human work) — included in Influence; otherwise $49.00 as a one-off with its own receipt, never from a prepaid balance. If this is your own company and our data about it is wrong, report_correction is free. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "The provider's correct website, e.g. \"https://example.com\"."
        },
        "name": {
          "type": "string",
          "description": "The provider name as it should read, e.g. \"Acme Payments\"."
        },
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs that should apply, e.g. [\"payments\",\"payouts\"]."
        },
        "contact": {
          "type": "string",
          "description": "Optional email address we can reply to about this request, e.g. \"[email protected]\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "industries": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Industry slugs that should apply, e.g. [\"financial-services\"]."
        },
        "description": {
          "type": "string",
          "description": "The description as it should read — one or two sentences."
        }
      }
    }
    arguments 46 lines
  • vc_portfolio unknown 9d ago

    UNDERSTANDING — A VC firm's portfolio companies, each matched to the network and rated. Filter publishes_api=true (companies that actually ship an API — about 37% of any book), in_network=true, band, or min_score; sort by score (default), api_count, or name. The demand-side view of who a fund has backed. Understanding plan. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "band": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "exemplar | strong | developing | thin | minimal."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "VC firm slug, lowercase and hyphenated, as find_vcs returns it."
        },
        "sort": {
          "enum": [
            "score",
            "api_count",
            "name"
          ],
          "type": "string",
          "description": "Order: score, api_count or name."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "min_score": {
          "type": "number",
          "description": "Only companies whose Kin Score composite is at or above this, 0-100."
        },
        "in_network": {
          "type": "boolean",
          "description": "Only portfolio companies that resolve to a provider on the network."
        },
        "is_provider": {
          "type": "boolean",
          "description": "Only portfolio companies with a provider profile on the network. Nearly every row qualifies (a profile is created for each portfolio company), so this barely narrows anything — use publishes_api instead."
        },
        "publishes_api": {
          "type": "boolean",
          "description": "Only portfolio companies that publish an API indexed on the network — the real rate is about 37% of a book, not 100%. This is the filter you want for \"how much of this fund ships an API\"."
        }
      }
    }
    arguments 61 lines
  • resolve reads unknown 9d ago

    Resolve ANY identifier — website URL, domain (stripe.com), or GitHub org (github.com/stripe) — to the apis.io provider it belongs to. Use this when you have a URL, not a slug. Understanding plan. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "identifier"
      ],
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "identifier": {
          "type": "string",
          "description": "A domain, URL, or github.com/<org>."
        }
      }
    }
    arguments 16 lines
  • delete_list unknown never probed

    UNDERSTANDING — Delete a list you own. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "List id to delete, as list_lists lists it."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • find_postman unknown never probed

    Postman collections across the catalog. Postman-format collections (by reference). Filter by q / tags / providers; include=["content"] inlines bodies. Use find_artifacts for cross-type search.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "sort": {
          "enum": [
            "relevance",
            "provider",
            "name"
          ],
          "type": "string",
          "description": "Order: relevance (catalog order), provider, or name."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs, e.g. [\"stripe\"]."
        }
      }
    }
    arguments 67 lines
  • get_provider_apis unknown 2d ago

    Every API one provider publishes, as a page you can filter — the provider's own catalog rather than the whole network's. Prefer this over find_apis with a `providers` filter when you already know the company: it is the endpoint the provider page itself is built from, so `meta.total` is that provider's real API count. Filter by `tags` (with `match`), require `artifact_types`, or pass include=["content"] to inline artifact bodies.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only these top-level keys, e.g. [\"slug\",\"score\"]."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include": {
          "type": "array",
          "items": {
            "enum": [
              "content"
            ]
          },
          "description": "Pass [\"content\"] to inline each artifact's body instead of just its URL."
        },
        "artifact_types": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Only APIs carrying these artifact types, e.g. [\"OpenAPI\"]."
        }
      }
    }
    arguments 68 lines
  • cohort_rankings unknown 6d ago

    UNDERSTANDING — the leaderboard for a market, on TWO axes: rank by Kin Score composite AND rank by agent readiness. The two orders differ, and the gap between a provider's two ranks is usually the story. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 38 lines
  • find_operations reads unknown 4d ago

    UNDERSTANDING — CATALOG-WIDE operation search: which providers expose a path matching your terms. "Who has a POST /refunds" had no answer before this — tags are what a company says about itself, a path is what its API accepts. Terms match path SEGMENTS (all must appear), so q="payment intents" finds /payments/v1/intents. Add method to narrow by verb, deprecated=true for the retiring ones. One row per real operation: a provider's spec is split per tag, so the same call can live in several of its documents, and `apis` lists them all. Reads matching providers' surfaces up to max_providers (cap 100) and tells you in `meta.query.truncated` when more matched than were read. Priced per result — $0.005 per request plus $0.0002 per record returned (less past 100), capped at $0.50 a request, under pay-as-you-go; included in Understanding and Influence. Estimate first at /api/v1/prices/estimate. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "q"
      ],
      "properties": {
        "q": {
          "type": "string",
          "description": "Path words, all of which must appear, e.g. \"refunds\" or \"payment intents\"."
        },
        "page": {
          "type": "integer",
          "default": 1,
          "minimum": 1,
          "description": "Page number, 1-based (default 1)."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "method": {
          "enum": [
            "GET",
            "POST",
            "PUT",
            "PATCH",
            "DELETE",
            "HEAD",
            "OPTIONS"
          ],
          "type": "string",
          "description": "Only operations with this HTTP method, e.g. \"POST\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "deprecated": {
          "type": "boolean",
          "description": "Only operations the provider marked deprecated."
        },
        "max_providers": {
          "type": "integer",
          "description": "How many matching providers to read (default 40, cap 100)."
        }
      }
    }
    arguments 50 lines
  • cohort_history unknown 6d ago

    UNDERSTANDING — the SET-LEVEL time series: how a whole market's Kin Score and agent readiness moved, build by build. There was a per-provider series and a whole-dataset licence and nothing between them, so "how has banking moved over six months" had no answer. Returns the MEAN over members present on each date plus members_scored beside it — membership changes as the catalog grows, and a move you cannot attribute to scores rather than population is not a finding. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "kind",
        "slug"
      ],
      "properties": {
        "kind": {
          "enum": [
            "tag",
            "industry",
            "region",
            "area",
            "vc"
          ],
          "type": "string",
          "description": "Cohort kind: tag, industry, region, area or vc — says what `slug` names."
        },
        "slug": {
          "type": "string",
          "description": "Slug of the cohort within `kind` — a tag, industry, region, area or VC slug, e.g. \"payments\" with kind \"tag\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 28 lines
  • get_provider_schema unknown 47h ago

    Every JSON Schema a provider publishes — the data shapes their API works in, in one list, without walking their artifacts. Free.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "q": {
          "type": "string",
          "description": "Substring match on schema name or slug."
        },
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 30 lines
  • find_similar_apis unknown 4d ago

    APIs similar to a given one ("more like this") by shared tags.

    mcp-tool

    {
      "type": "object",
      "required": [
        "aid"
      ],
      "properties": {
        "aid": {
          "type": "string",
          "description": "API id in the form provider:api-slug, as find_apis returns it, e.g. \"stripe:stripe-api\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • compare_providers unknown 5d ago

    UNDERSTANDING — Compare 2+ providers side by side: composite/band, per-facet leaders, an artifact-coverage matrix, and each provider's economics — audience, pricing basis, delivery, graded entry cost (USD/month) and marginal cost (USD per unit), with the plan and the quoted figure behind each number and the date it was read; `cheapest_entry` names the cheapest published way in. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "providers"
      ],
      "properties": {
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "providers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs to compare (2+)."
        }
      }
    }
    arguments 19 lines
  • company_gaps unknown 5d ago

    UNDERSTANDING — A company's weakest investment dimensions — where it is thin and a vendor could sell in. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Company (provider) slug, as find_company_insights returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_tag unknown 15h ago

    One tag: its metadata, neighbor tags, and a top sample of its providers and APIs (with totals). `provider_count` counts companies that classify THEMSELVES here; `api_provider_count` counts the ones reached only through an API or operation tag — the two are disjoint, and a tag with no providers and many APIs names a resource, not a market. `age` summarises when the members were created (created_last_30d/90d, the largest same-day batch, and how much of the first page by composite is under 30 days old) — a high first_page share means the top of the tag is new listings, and find_providers(tags, sort:"created") lists them newest first. Use find_apis?tags=slug / find_providers?tags=slug for the full ranked list, or view=full here. Results carry `next`: the sub-resources that exist for this entity and the exact tool call that retrieves each, computed from this record. Pass include_next=false to omit it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Tag slug, as find_tags returns it, e.g. \"payments\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Top members to show per list."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 37 lines
  • get_provider_onboarding unknown 2d ago

    A getting-started view for a provider — website, portal, signup, docs, authentication, base URLs, and first steps assembled from its registered links.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_provider reads unknown 2d ago

    Full detail for one provider: profile, rating, and the APIs it publishes. The heavy `collections` and `common` sections are omitted by default (their counts are still reported) — pass view=full for the whole document, or fields=["common"] for a section. Narrow for cheap reads: fields=["score"] returns just the rating. Relative artifact URLs are resolved to absolute, fetchable ones. Results carry `next`: the sub-resources that exist for this entity and the exact tool call that retrieves each, computed from this record. Pass include_next=false to omit it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "fields": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Return exactly these top-level keys (slug and name always included); overrides view."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 37 lines
  • get_industry_leaders unknown 3d ago

    UNDERSTANDING — Top-rated providers in an industry vertical. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Industry slug, as find_industries returns it, e.g. \"artificial-intelligence\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • get_provider_tools unknown 40h ago

    Every MCP tool a provider ships, with the operation each one wraps and its auth. Reports provenance per tool: `first-party` means the provider publishes that server, `derived` means API Evangelist generated a candidate tool list from their OpenAPI because no hosted server was found. Filter with provenance=first-party for a true picture — counting derived tools as the provider's own overstates MCP adoption badly. A server whose tools could not be enumerated (auth-gated) is reported in coverage.not_enumerable rather than silently counted as zero.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "provenance": {
          "enum": [
            "first-party",
            "derived"
          ],
          "type": "string",
          "description": "Restrict by who authored the tool list."
        }
      }
    }
    arguments 34 lines
  • get_provider_facets reads unknown 2d ago

    UNDERSTANDING — one provider's score broken into its facets (discoverability, contract quality, governance, operational transparency, developer ergonomics, commercial clarity) plus any regulatory regime that applies. The composite is one number; these are the parts a team can actually act on. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • claim_listing unknown never probed

    INFLUENCE — ask to claim a listing as yours. Returns 202 with a token and the hosts it will be checked against: publish it as a DNS TXT record, or as a file at /.well-known/apis-io-challenge, and leave it up. A PERSON verifies it and emails you — there is nothing else to call. Track it with check_status. Priced B4 (human work) — worked by a person, no charge. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • submit_artifact changes data unknown never probed

    INFLUENCE — tell us about an artifact you publish, rather than waiting for us to find it. Returns 202; a person fetches it, checks it and re-runs the pipeline against it. Track it with check_status. Priced B4 (human work) — included in Influence; otherwise $49.00 as a one-off with its own receipt, never from a prepaid balance. If this is your own company and our data about it is wrong, report_correction is free. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug",
        "type",
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "Public URL of the artifact you publish, e.g. \"https://example.com/openapi.yaml\"."
        },
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "type": {
          "type": "string",
          "description": "e.g. OpenAPI, AsyncAPI, MCP."
        },
        "contact": {
          "type": "string",
          "description": "Optional email address we can reply to about this request, e.g. \"[email protected]\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 30 lines
  • dispute_finding unknown never probed

    INFLUENCE — "you say we lack X, here it is." Send the claim in words and a URL that evidences it. Returns 202; a person fetches your evidence, checks it against what we hold, and emails you either way. Open to any paying caller — you should not have to prove ownership before you can tell us our data is wrong. Priced B4 (human work) — included in Influence; otherwise $49.00 as a one-off with its own receipt, never from a prepaid balance. If this is your own company and our data about it is wrong, report_correction is free. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug",
        "claim"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "claim": {
          "type": "string",
          "description": "The finding you dispute and why, e.g. \"We do publish an OpenAPI at /openapi.json\"."
        },
        "contact": {
          "type": "string",
          "description": "Optional email address we can reply to about this request, e.g. \"[email protected]\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "evidence_url": {
          "type": "string",
          "description": "URL that shows the finding is wrong, e.g. \"https://example.com/openapi.json\"."
        }
      }
    }
    arguments 29 lines
  • set_visibility unknown never probed

    INFLUENCE — ask to be shown less, or not at all. `restricted` keeps a name, a description and a link to your own site, unrated and out of every ranked view; `delisted` removes you entirely. Returns 202 and is applied by a person: it strips artifacts, pages and rollups across the network, which is not something to do irreversibly on one API call. Priced B4 (human work) — worked by a person, no charge. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug",
        "visibility"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "reason": {
          "type": "string",
          "description": "Why you are changing visibility — read by the person who works the request."
        },
        "contact": {
          "type": "string",
          "description": "Optional email address we can reply to about this request, e.g. \"[email protected]\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "visibility": {
          "enum": [
            "restricted",
            "delisted"
          ],
          "type": "string",
          "description": "\"restricted\" (name, description and link only, unrated) or \"delisted\" (removed from the catalog)."
        }
      }
    }
    arguments 33 lines
  • watch_listing unknown never probed

    INFLUENCE — be told when a listing you care about moves: score changes, band changes, agent-band changes, or a check closing. REQUIRES a destination: `contact` (an email address), `callback_url` (an https endpoint that receives signed JSON), or both. The first pass after registering records where the provider stands and sends nothing, so the first notification you get is about a real move. `agent_band` is the one worth having — it carries the gate that caused the change, which a provider cannot compute about themselves. Re-registering the same slug REPLACES its event set rather than adding a second watch. list_watches shows what you hold; unwatch_listing removes one. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug of the listing, as find_providers returns it, e.g. \"stripe\"."
        },
        "events": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "score, band, agent_band, check. Defaults to all four."
        },
        "contact": {
          "type": "string",
          "description": "Email address for notifications."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "callback_url": {
          "type": "string",
          "description": "HTTPS endpoint for signed webhook delivery."
        }
      }
    }
    arguments 31 lines
  • unwatch_listing unknown never probed

    INFLUENCE — stop watching a listing. Takes effect immediately and removes the registration outright; there is no paused state. Removing a watch that was never registered is not an error. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug of the listing, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • save_search unknown never probed

    UNDERSTANDING — Persist the current search criteria as a named saved search you own, so you can re-run it and get net-new results later. Criteria use the same filters as apis_io_search. Requires an apis.io API key. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "q": {
          "type": "string",
          "description": "Free text over name + description, e.g. \"sms\"."
        },
        "area": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Area slugs, e.g. [\"security\"]."
        },
        "band": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "exemplar | strong | developing | thin | minimal."
        },
        "name": {
          "type": "string",
          "description": "Name for the saved search, e.g. \"EU payments, strong+\"."
        },
        "tags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Tag slugs, e.g. [\"payments\"]. On providers: what the company does (see api_tags)."
        },
        "match": {
          "enum": [
            "any",
            "all"
          ],
          "type": "string",
          "default": "any",
          "description": "How `tags` combine: any (default) or all."
        },
        "region": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Region slugs, e.g. [\"north-america\"]."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "industry": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Industry slugs, e.g. [\"fintech\"]."
        },
        "min_score": {
          "type": "number",
          "description": "Minimum Kin Score composite (0-100), e.g. 60."
        },
        "artifact_types": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Artifact types required, e.g. [\"OpenAPI\"]."
        }
      }
    }
    arguments 75 lines
  • get_industry unknown 3d ago

    One industry: metadata + a top sample of its member providers (ranked, with the total). Use find_providers?industry=slug for the full list, or view=full here. Results carry `next`: the sub-resources that exist for this entity and the exact tool call that retrieves each, computed from this record. Pass include_next=false to omit it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Industry slug, as find_industries returns it, e.g. \"artificial-intelligence\"."
        },
        "view": {
          "enum": [
            "summary",
            "full"
          ],
          "type": "string",
          "default": "summary",
          "description": "summary (default, lean) or full."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Top members to show."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "include_next": {
          "type": "boolean",
          "default": true,
          "description": "Set false to omit the `next` affordance block."
        }
      }
    }
    arguments 37 lines
  • get_application_blueprint unknown 7d ago

    The blueprint for one application category (for example crm-sales): which catalog providers its leading apps integrate with, by stack layer and capability, each row graded declared, observed or inferred, with its sources and MCP status. Use shared-layer as the category for the providers most categories share. Understanding. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "category"
      ],
      "properties": {
        "layer": {
          "type": "string",
          "description": "Keep one stack layer."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "category": {
          "type": "string",
          "description": "Category id, or shared-layer."
        },
        "min_tier": {
          "enum": [
            "inferred",
            "declared",
            "observed"
          ],
          "type": "string",
          "description": "Weakest evidence tier to keep."
        }
      }
    }
    arguments 29 lines
  • get_area_leaders unknown 4d ago

    UNDERSTANDING — Top-rated providers in a curated API Evangelist area. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Area slug, as find_areas returns it, e.g. \"security\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • request_check unknown never probed

    INFLUENCE — ask APIs.io to (re)check something. Use it when a listing is wrong or stale, when a score looks incorrect, or to get a company profiled that is not in the catalog yet. A check can target a PROVIDER (the default) or a slice of the catalog: an `industry`, a `tag`, an `area`, or a company's `estate` — for an industry roster missing an obvious member, a tag that has drifted, or an area whose ranking looks wrong. This does NOT score anything on the spot: a check means re-running the enrichment pipeline against the live surface, which a person does by hand. You get a request id back immediately; poll check_status with it, and if you supply a contact email you are notified when the status changes. A slug we do not already hold is never refused — for ANY target type it is queued as a request to ADD that thing, whether that is a company nobody has catalogued, a new industry, or an estate nobody here has thought of. Near matches come back alongside it in `did_you_mean`, so a typo is visible without the request being dropped. Priced B4 (human work) — included in Influence; otherwise $99.00 as a one-off with its own receipt, never from a prepaid balance. If this is your own company and our data about it is wrong, report_correction is free. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "url": {
          "type": "string",
          "description": "The company or developer-portal URL — use this when there is no listing yet. Providers only; a url cannot name an industry."
        },
        "kind": {
          "enum": [
            "recheck",
            "profile",
            "correction"
          ],
          "type": "string",
          "description": "recheck an existing listing, profile a new company, or correct a specific fact."
        },
        "slug": {
          "type": "string",
          "description": "The target slug — a provider (e.g. stripe), or an industry/tag/area/estate slug when target_type says so."
        },
        "notes": {
          "type": "string",
          "description": "What is wrong, or what to look at. The more specific, the faster it is worked."
        },
        "contact": {
          "type": "string",
          "description": "Email to notify when the status changes. Optional; without it there is nothing to notify, so keep the id."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "target_type": {
          "enum": [
            "provider",
            "industry",
            "tag",
            "area",
            "estate"
          ],
          "type": "string",
          "description": "What `slug` names. Defaults to provider. `estate` is named for the company the estate roots at (e.g. cisco)."
        }
      }
    }
    arguments 45 lines
  • create_list unknown never probed

    UNDERSTANDING — Create a named, persistent list (a shortlist / stack you own) of providers or APIs. Requires an apis.io API key. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string",
          "description": "Name for the list, e.g. \"Payments shortlist\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "members": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Provider slugs and/or aids to seed the list."
        }
      }
    }
    arguments 23 lines
  • get_region_leaders unknown 22h ago

    UNDERSTANDING — Top-rated providers in a region. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Region slug, as find_regions returns it, e.g. \"north-america\"."
        },
        "limit": {
          "type": "integer",
          "default": 25,
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 23 lines
  • get_provider_business_capabilities unknown 2d ago

    UNDERSTANDING — what ONE vendor's published APIs let a business DO, rolled up by capability, with the tag-level evidence under each. Answers "what is this vendor actually for" from its own contracts rather than its marketing. NOT get_provider_capabilities, which is artifact counts and agent-readiness dimensions and is free. Understanding plan. Priced B1 (single-entity synthesis) — $0.01 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        }
      }
    }
    arguments 16 lines
  • get_provider_operations unknown 2d ago

    Every operation a provider exposes, across all of its OpenAPIs — method, path, operationId, summary, which API it belongs to, and whether it is deprecated. The shortcut for "what can I actually call here?", which otherwise means fetching and parsing every one of their specs. Where the provider publishes agentic-access, each operation also carries its action class and CONSEQUENCE (read vs something that moves money) — filter on those to find the safe surface before letting an agent loose on it.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "q": {
          "type": "string",
          "description": "Substring match on summary, path, or operationId."
        },
        "api": {
          "type": "string",
          "description": "Restrict to one API, by aid or api slug."
        },
        "page": {
          "type": "integer",
          "description": "Page number, 1-based (default 1)."
        },
        "path": {
          "type": "string",
          "description": "Substring match on the operation path."
        },
        "slug": {
          "type": "string",
          "description": "Provider slug — lowercase, hyphenated, as find_providers returns it, e.g. \"stripe\"."
        },
        "limit": {
          "type": "integer",
          "maximum": 100,
          "minimum": 1,
          "description": "Results per page, 1-100 (default 25)."
        },
        "method": {
          "enum": [
            "GET",
            "POST",
            "PUT",
            "PATCH",
            "DELETE",
            "HEAD",
            "OPTIONS"
          ],
          "type": "string",
          "description": "Restrict to one HTTP method."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "consequence": {
          "type": "string",
          "description": "Agentic consequence, e.g. \"read\". Only matches operations with agentic-access profiled."
        },
        "action_class": {
          "type": "string",
          "description": "Agentic action class, e.g. \"connected\"."
        }
      }
    }
    arguments 59 lines
  • industry_gap_analysis unknown 7h ago

    UNDERSTANDING — Valuable artifact types (MCP, Arazzo, Rules, Skills…) commonly missing across a whole industry — where the vertical is under-served. Priced B2 (cross-catalog synthesis) — $0.05 per call under pay-as-you-go; included in Understanding and Influence. See apis://prices.

    mcp-tool

    {
      "type": "object",
      "required": [
        "slug"
      ],
      "properties": {
        "slug": {
          "type": "string",
          "description": "Industry slug, as find_industries returns it, e.g. \"artificial-intelligence\"."
        },
        "context": {
          "type": "string",
          "description": "Optional: one sentence on why you are asking. Never used to rank; read only if a result is wrong."
        },
        "min_share": {
          "type": "number",
          "description": "Coverage threshold below which a type counts as an industry gap (0–1, default 0.5)."
        }
      }
    }
    arguments 20 lines
_ try it over mcp through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 3076df0b171de388.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/3076df0b171de388/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/3076df0b171de388/badge.svg)](https://brick.blue/agent/3076df0b171de388?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we knowoff the mcp door
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
1
ok
1
failed
0
success rate
100%
median latency
2,697ms
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

1 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.