Find publisher documentation via llms.txt, with source links, evidence and check dates.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Start optional ownership management or recovery for a domain you control. Returns an expiring fresh public proof token and a private claim_secret shown once. Keep the secret private; publish only the verification snippet, then call verify_domain with claim_id and claim_secret. Existing keys remain valid until fresh proof succeeds. No backlink is required: DNS, meta tag and well-known file methods are supported.
A domain name such as example.com (no scheme, no path).
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Tool list last changed Oct 23, 2026.
Start optional ownership management or recovery for a domain you control. Returns an expiring fresh public proof token and a private claim_secret shown once. Keep the secret private; publish only the verification snippet, then call verify_domain with claim_id and claim_secret. Existing keys remain valid until fresh proof succeeds. No backlink is required: DNS, meta tag and well-known file methods are supported.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}Validate a site's llms.txt: reachability, HTML-instead-of-text, redirects to other domains, H1 title, summary, sections, links, link health, llms-full.txt and charset. Returns each check with what to fix and the file preview. Ownership management is optional and does not affect validation.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}Directory-wide counts for Agent Web Map: domains tracked, valid llms.txt files, listed, verified, pending.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Explore relationships between publisher headings. Edges count distinct listed sites sharing both labels. Pass section keys to return related labels and a bounded page of publishers; no sections returns aggregate clusters only. Discovery is monitored without automatic usage quotas.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records. |
| action | string | Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions. |
| country | string | Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served. |
| per_page | integer | |
| sections | array | Publisher section keys from list_sections; discovered dynamically from indexed headings. |
| connections | any | Semantic adds inferred heading similarity as separate semantic_edges; original shared-heading counts remain unchanged. |
Draft an llms.txt for a site from its own homepage, sitemap and page titles. Takes 10-30 seconds. The owner reviews it and publishes it at /llms.txt. Ownership management is optional and uses a separate fresh challenge.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}List topic taxonomy and counts by inferred category and agentic label, unclassified sites and publisher-declared MCP endpoints. Categories describe topics; capabilities are separate explicit publisher declarations. Counts can overlap. Use category or capability filters with resolve, search_llms_registry or list_domains. An MCP declaration does not prove availability.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}List country codes and names with valid listed-site counts, plus the unknown count. Use country=FR or country=unknown with resolve, search_llms_registry, list_domains, list_sections and explore_sections. Owner-declared or site-published addresses are preferred; domain/hosting inference is a labeled fallback. Publisher and hosting countries are separate fields; none independently verifies headquarters.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Ranked listing of the directory (verified first, then authority). Use verified_only to get only owner-verified sites.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records. |
| action | string | Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions. |
| detail | string | Compact consumer fields by default; full adds owner profile, claims and listing metadata. |
| agentic | string | Filter by what an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people). |
| country | string | Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served. |
| category | string | Filter by inferred topic ID from list_categories. Topics describe publisher metadata, not capabilities or correctness. |
| per_page |
Discover publisher section labels across the indexed corpus, distinct-site counts, newly observed labels, conservative emerging signals and seven-day membership changes. Emerging requires ten estimated domain-name families, excludes known templates/duplicates and waits three days; this measures index observations, not adoption. Labels come from headings, not a fixed taxonomy. Heading presence describes content and does not certify a capability. Partial coverage and baseline status are reported.
| Argument | Type | Description |
|---|---|---|
| q | string | |
| page | integer | Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records. |
| sort | any | |
| action | string | Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions. |
| country | string | Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served. |
| per_page | integer | |
| sections |
Look up a domain: source URLs, summary, authority, ownership verification, inferred country, last check and owner-stated terms. Compact by default; detail=full adds profile, nested files, badge and ownership claim instructions.
| Argument | Type | Description |
|---|---|---|
| detail | string | Compact consumer fields by default; full adds owner profile, claims and listing metadata. |
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"detail": {
"enum": [
"compact",
"full"
],
"type": "string",
"default": "compact",
"description": "Compact consumer fields by default; full adds owner profile, claims and listing metadata."
},
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}Return our validated copy of a listed site's llms.txt as text, with its source URL, check date and content hash. No second fetch needed, and it works when the publisher blocks automated clients. A site not cached yet is fetched once on demand.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}Verified owner only. Re-validate and update the directory listing now (once per 10 minutes). This crawl can change listing and ownership verification state. Review the result and return to the owner dashboard for activity and history.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
| api_key* | string | The owner API key issued by verify_domain (awm_key_...). |
{
"type": "object",
"required": [
"domain",
"api_key"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
},
"api_key": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "The owner API key issued by verify_domain (awm_key_...)."
}
},
"additionalProperties": false
}Submit a public domain or announce a file update to queue a live crawl, including previously invalid tracked domains. Same-domain requests are coalesced with a ten-minute cooldown. Existing listings stay visible until checked; queueing does not guarantee listing or prove ownership. Returns reason and optional retry_after, plus verification instructions. Verified owners get: See your website in the map: Review your indexed topics, nearby publishers sharing headings, measured listing exposure and map snapshots in a private report for your website.; Control what agents see: Edit your listing description, tags, public contact details and additional llms.txt paths. Publish your terms for automated access, attribution and pricing.; Make your profile eligible for search: A valid, listed, unblocked, verified profile can appear in our publisher sitemap and become eligible for search-engine visibility. Search engines decide what to index and rank.; Appear in our llms-full.txt: Eligible verified publishers are listed by name, with their file links and summaries, in the service overview agents can read.; Review discovery activity: Your private dashboard shows measured web, REST and MCP requests, documentation selections, publisher-link clicks and daily activity. Counts include bots and repeats; they do not identify unique agents or confirm publisher page reads.; Check file health: Review validation results, request a fresh check on demand and follow your directory score history.; Show confirmed ownership: Your listing carries a domain-ownership signal. Default Browse places verified listings first; task searches prioritize relevance. Verification confirms domain control, not content quality or endorsement..
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}Start here to find documentation for a domain or development task. Returns specific page URLs with publisher excerpts, matching evidence, owner-stated terms, freshness and alternatives. A named publisher stays scoped to its valid documentation or known replacement. No usable publisher or insufficient relevance returns no_match with best=null. Strong requires page-purpose evidence and publisher fit, not ownership verification. Weak matches are fallback candidates: refine the query or search elsewhere. Use max_age to mark stale root checks, refresh to validate the source live, and detail=full for owner metadata. Reads need no key.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of documentation sources. |
| query* | string | A domain or development task, e.g. "modelcontextprotocol authorization". |
| action | string | Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions. |
| detail | string | Compact consumer fields by default; full adds owner profile, claims and listing metadata. |
| agentic | string | Filter by what an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people). |
| country |
Owner only. Replace the API key and invalidate all existing browser owner sessions. Keep the new key; it is shown once. Does not require changing the existing ownership proof.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
| api_key* | string | The owner API key issued by verify_domain (awm_key_...). |
{
"type": "object",
"required": [
"domain",
"api_key"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
},
"api_key": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "The owner API key issued by verify_domain (awm_key_...)."
}
},
"additionalProperties": false
}Search domains and indexed documentation links by words and meaning. Relevance ranks before authority and ownership verification, with keyword fallback if semantic search is unavailable. Compact results omit owner claims by default; use detail=full for profile metadata.
| Argument | Type | Description |
|---|---|---|
| page | integer | Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records. |
| query* | string | Search terms, e.g. "payments api docs". |
| action | string | Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions. |
| detail | string | Compact consumer fields by default; full adds owner profile, claims and listing metadata. |
| agentic | string | Filter by what an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people). |
| country | string | Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served. |
Find related listed publishers by vector similarity to a known domain. Returns compact profiles, cosine similarity and actual shared section keys. Similarity is not affiliation, endorsement or proof of equivalent capabilities. Uses stored vectors without a paid call per request; unavailable or stale embeddings produce an empty result with a reason.
| Argument | Type | Description |
|---|---|---|
| limit | integer | |
| action | string | Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions. |
| domain* | string | A domain name such as example.com (no scheme, no path). |
| country | string | Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served. |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"limit": {
"type": "integer",
"default": 12,
"maximum": 50,
"minimum": 1
},
"action": {
"enum": [
"read_docs",
"search_content",
"call_api",
"buy",
"book",
"download_data",
"contact_support"
],
"type": "string",
"description": "Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions."
},
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
},
"country": {
"type": "string",
"pattern": "^(?:[A-Za-z]{2}|[Uu][Nn][Kk][Nn][Oo][Ww][Nn])$",
"description": "Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served."
}
},
"additionalProperties": false
}Verified owner only. Review measured website, REST and MCP requests, daily activity, documentation selections, publisher clicks, file health and the last 30 score snapshots. Counts include bots, tests and repeated requests; they do not identify unique agents or confirm publisher page reads.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
| api_key* | string | The owner API key issued by verify_domain (awm_key_...). |
{
"type": "object",
"required": [
"domain",
"api_key"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
},
"api_key": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "The owner API key issued by verify_domain (awm_key_...)."
}
},
"additionalProperties": false
}Verified owner only. Control the listing profile (description, tags, nested llms.txt paths, contact, owner-declared publisher_country) and terms for agents (agent_terms: automated_access = one of welcome | limited | ask | not_allowed: may agents use the site automatically?; rate_limit = short text, e.g. "60 requests/minute"; attribution = one of required | appreciated | none; attribution_text = how to credit the site (≤200 chars); pricing = one of free | freemium | paid; pricing_url = where prices are published; terms_url = the full terms for automated use; notes = anything else an agent should know (≤500 chars)). Omit a field to leave it unchanged; pass null to clear it.
| Argument | Type | Description |
|---|---|---|
| tags | array | Lowercase slugs, e.g. ["developer-tools", "docs"]. |
| domain* | string | A domain name such as example.com (no scheme, no path). |
| api_key* | string | The owner API key issued by verify_domain (awm_key_...). |
| contact | string | null | |
| agent_terms | object | null | Terms for automated use, shown to every agent that looks the site up. |
| description | string | null | |
| nested_llms_txt |
Describe optional ownership management and its four proof methods. Call begin_ownership_claim to obtain a fresh expiring proof and a private claim secret. No ownership claim is needed for discovery.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
{
"type": "object",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
}
},
"additionalProperties": false
}Complete the fresh challenge from begin_ownership_claim using its private claim credentials. Checks the published proof and consumes the challenge once, returning the owner API key shown once. Public or legacy proof tokens alone cannot issue keys. Recovery replaces previous credentials and sessions. Rate limited: 10 attempts per domain per hour.
| Argument | Type | Description |
|---|---|---|
| domain* | string | A domain name such as example.com (no scheme, no path). |
| claim_id* | string | |
| claim_secret* | string |
{
"type": "object",
"required": [
"domain",
"claim_id",
"claim_secret"
],
"properties": {
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
},
"claim_id": {
"type": "string",
"maxLength": 100,
"minLength": 1
},
"claim_secret": {
"type": "string",
"maxLength": 200,
"minLength": 1
}
},
"additionalProperties": false
}| include_sites |
| boolean |
| False returns only aggregate connections and counts, without individual publisher records. |
| section_match | any |
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records."
},
"action": {
"enum": [
"read_docs",
"search_content",
"call_api",
"buy",
"book",
"download_data",
"contact_support"
],
"type": "string",
"description": "Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions."
},
"country": {
"type": "string",
"pattern": "^(?:[A-Za-z]{2}|[Uu][Nn][Kk][Nn][Oo][Ww][Nn])$",
"description": "Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served."
},
"per_page": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1
},
"sections": {
"type": "array",
"items": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"maxItems": 5,
"description": "Publisher section keys from list_sections; discovered dynamically from indexed headings.",
"uniqueItems": true
},
"connections": {
"enum": [
"shared",
"semantic"
],
"default": "shared",
"description": "Semantic adds inferred heading similarity as separate semantic_edges; original shared-heading counts remain unchanged."
},
"include_sites": {
"type": "boolean",
"default": true,
"description": "False returns only aggregate connections and counts, without individual publisher records."
},
"section_match": {
"enum": [
"all",
"any"
],
"default": "all"
}
},
"additionalProperties": false
}| integer |
| sections | array | Publisher section keys from list_sections; discovered dynamically from indexed headings. |
| capability | string | Filter to sites explicitly publishing an MCP endpoint link. Publisher declaration alone does not prove availability. |
| section_match | any |
| verified_only | boolean | Only domains whose owner has verified them. |
| include_unlisted | boolean | Also return low-authority (unlisted) entries. Requires an operator-approved discovery client key with unlisted permission. |
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records."
},
"action": {
"enum": [
"read_docs",
"search_content",
"call_api",
"buy",
"book",
"download_data",
"contact_support"
],
"type": "string",
"description": "Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions."
},
"detail": {
"enum": [
"compact",
"full"
],
"type": "string",
"default": "compact",
"description": "Compact consumer fields by default; full adds owner profile, claims and listing metadata."
},
"agentic": {
"enum": [
"interface",
"transactional",
"documentation",
"informational"
],
"type": "string",
"description": "Filter by what an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people)."
},
"country": {
"type": "string",
"pattern": "^(?:[A-Za-z]{2}|[Uu][Nn][Kk][Nn][Oo][Ww][Nn])$",
"description": "Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served."
},
"category": {
"enum": [
"ai-ml",
"developer-tools",
"infrastructure",
"data-analytics",
"cybersecurity",
"finance-payments",
"ecommerce",
"productivity",
"marketing",
"education",
"healthcare",
"media",
"design",
"gaming",
"travel",
"community",
"legal",
"recruiting-careers",
"industrial-manufacturing",
"real-estate",
"arts-culture",
"sports-fitness",
"food-dining",
"automotive",
"government-public-services",
"science-research",
"ai-agents-mcp",
"apis-sdks",
"databases",
"auth-identity",
"devops-observability",
"no-code-automation",
"communications",
"crypto-web3",
"saas-business-software",
"open-source",
"documentation-reference",
"fashion-beauty",
"home-garden",
"consumer-electronics",
"pets",
"insurance",
"telecom",
"logistics-shipping",
"energy-utilities",
"construction-architecture",
"agriculture",
"nonprofit",
"events",
"personal-blog",
"entertainment",
"local-business"
],
"type": "string",
"description": "Filter by inferred topic ID from list_categories. Topics describe publisher metadata, not capabilities or correctness."
},
"per_page": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1
},
"sections": {
"type": "array",
"items": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"maxItems": 5,
"description": "Publisher section keys from list_sections; discovered dynamically from indexed headings.",
"uniqueItems": true
},
"capability": {
"enum": [
"mcp"
],
"type": "string",
"description": "Filter to sites explicitly publishing an MCP endpoint link. Publisher declaration alone does not prove availability."
},
"section_match": {
"enum": [
"all",
"any"
],
"default": "all"
},
"verified_only": {
"type": "boolean",
"default": false,
"description": "Only domains whose owner has verified them."
},
"include_unlisted": {
"type": "boolean",
"default": false,
"description": "Also return low-authority (unlisted) entries. Requires an operator-approved discovery client key with unlisted permission."
}
},
"additionalProperties": false
}| array |
| Publisher section keys from list_sections; discovered dynamically from indexed headings. |
| section_match | any |
{
"type": "object",
"properties": {
"q": {
"type": "string",
"maxLength": 120
},
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records."
},
"sort": {
"enum": [
"common",
"alphabetical",
"newest",
"emerging"
],
"default": "common"
},
"action": {
"enum": [
"read_docs",
"search_content",
"call_api",
"buy",
"book",
"download_data",
"contact_support"
],
"type": "string",
"description": "Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions."
},
"country": {
"type": "string",
"pattern": "^(?:[A-Za-z]{2}|[Uu][Nn][Kk][Nn][Oo][Ww][Nn])$",
"description": "Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served."
},
"per_page": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1
},
"sections": {
"type": "array",
"items": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"maxItems": 5,
"description": "Publisher section keys from list_sections; discovered dynamically from indexed headings.",
"uniqueItems": true
},
"section_match": {
"enum": [
"all",
"any"
],
"default": "all"
}
},
"additionalProperties": false
}| string |
| Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served. |
| max_age | integer | Maximum acceptable age of source health in seconds; stale data is marked, not hidden. |
| refresh | boolean | Validate the selected source live with bounded work per call; does not change the directory listing. |
| category | string | Filter by inferred topic ID from list_categories. Topics describe publisher metadata, not capabilities or correctness. |
| capability | string | Filter to sites explicitly publishing an MCP endpoint link. Publisher declaration alone does not prove availability. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 3,
"maximum": 5,
"minimum": 1,
"description": "Maximum number of documentation sources."
},
"query": {
"type": "string",
"pattern": "\\S",
"maxLength": 200,
"minLength": 1,
"description": "A domain or development task, e.g. \"modelcontextprotocol authorization\"."
},
"action": {
"enum": [
"read_docs",
"search_content",
"call_api",
"buy",
"book",
"download_data",
"contact_support"
],
"type": "string",
"description": "Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions."
},
"detail": {
"enum": [
"compact",
"full"
],
"type": "string",
"default": "compact",
"description": "Compact consumer fields by default; full adds owner profile, claims and listing metadata."
},
"agentic": {
"enum": [
"interface",
"transactional",
"documentation",
"informational"
],
"type": "string",
"description": "Filter by what an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people)."
},
"country": {
"type": "string",
"pattern": "^(?:[A-Za-z]{2}|[Uu][Nn][Kk][Nn][Oo][Ww][Nn])$",
"description": "Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served."
},
"max_age": {
"type": "integer",
"default": 86400,
"maximum": 2592000,
"minimum": 0,
"description": "Maximum acceptable age of source health in seconds; stale data is marked, not hidden."
},
"refresh": {
"type": "boolean",
"default": false,
"description": "Validate the selected source live with bounded work per call; does not change the directory listing."
},
"category": {
"enum": [
"ai-ml",
"developer-tools",
"infrastructure",
"data-analytics",
"cybersecurity",
"finance-payments",
"ecommerce",
"productivity",
"marketing",
"education",
"healthcare",
"media",
"design",
"gaming",
"travel",
"community",
"legal",
"recruiting-careers",
"industrial-manufacturing",
"real-estate",
"arts-culture",
"sports-fitness",
"food-dining",
"automotive",
"government-public-services",
"science-research",
"ai-agents-mcp",
"apis-sdks",
"databases",
"auth-identity",
"devops-observability",
"no-code-automation",
"communications",
"crypto-web3",
"saas-business-software",
"open-source",
"documentation-reference",
"fashion-beauty",
"home-garden",
"consumer-electronics",
"pets",
"insurance",
"telecom",
"logistics-shipping",
"energy-utilities",
"construction-architecture",
"agriculture",
"nonprofit",
"events",
"personal-blog",
"entertainment",
"local-business"
],
"type": "string",
"description": "Filter by inferred topic ID from list_categories. Topics describe publisher metadata, not capabilities or correctness."
},
"capability": {
"enum": [
"mcp"
],
"type": "string",
"description": "Filter to sites explicitly publishing an MCP endpoint link. Publisher declaration alone does not prove availability."
}
},
"additionalProperties": false
}| category | string | Filter by inferred topic ID from list_categories. Topics describe publisher metadata, not capabilities or correctness. |
| per_page | integer |
| sections | array | Publisher section keys from list_sections; discovered dynamically from indexed headings. |
| capability | string | Filter to sites explicitly publishing an MCP endpoint link. Publisher declaration alone does not prove availability. |
| section_match | any |
| verified_only | boolean | Only domains whose owner has verified them. |
| include_unlisted | boolean | Also return low-authority (unlisted) entries. Requires an operator-approved discovery client key with unlisted permission. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"page": {
"type": "integer",
"default": 1,
"minimum": 1,
"description": "Page number. Public discovery has no automatic result-window quota; each page holds at most 100 records."
},
"query": {
"type": "string",
"pattern": "\\S",
"maxLength": 200,
"minLength": 1,
"description": "Search terms, e.g. \"payments api docs\"."
},
"action": {
"enum": [
"read_docs",
"search_content",
"call_api",
"buy",
"book",
"download_data",
"contact_support"
],
"type": "string",
"description": "Actions are inferred from publisher content. They can overlap and do not prove a working integration, authorization or task success. Unclassified sites may be missing useful actions."
},
"detail": {
"enum": [
"compact",
"full"
],
"type": "string",
"default": "compact",
"description": "Compact consumer fields by default; full adds owner profile, claims and listing metadata."
},
"agentic": {
"enum": [
"interface",
"transactional",
"documentation",
"informational"
],
"type": "string",
"description": "Filter by what an agent can do with the site: interface (API or MCP endpoint to call), transactional (buy or book), documentation (docs to read), informational (for people)."
},
"country": {
"type": "string",
"pattern": "^(?:[A-Za-z]{2}|[Uu][Nn][Kk][Nn][Oo][Ww][Nn])$",
"description": "Country: owner-declared or site-published address preferred; domain/hosting inference is a labeled fallback. ISO 3166-1 alpha-2 (XK supported), case-insensitive, or unknown. GET /v1/countries / list_countries lists counts. Not verified headquarters or markets served."
},
"category": {
"enum": [
"ai-ml",
"developer-tools",
"infrastructure",
"data-analytics",
"cybersecurity",
"finance-payments",
"ecommerce",
"productivity",
"marketing",
"education",
"healthcare",
"media",
"design",
"gaming",
"travel",
"community",
"legal",
"recruiting-careers",
"industrial-manufacturing",
"real-estate",
"arts-culture",
"sports-fitness",
"food-dining",
"automotive",
"government-public-services",
"science-research",
"ai-agents-mcp",
"apis-sdks",
"databases",
"auth-identity",
"devops-observability",
"no-code-automation",
"communications",
"crypto-web3",
"saas-business-software",
"open-source",
"documentation-reference",
"fashion-beauty",
"home-garden",
"consumer-electronics",
"pets",
"insurance",
"telecom",
"logistics-shipping",
"energy-utilities",
"construction-architecture",
"agriculture",
"nonprofit",
"events",
"personal-blog",
"entertainment",
"local-business"
],
"type": "string",
"description": "Filter by inferred topic ID from list_categories. Topics describe publisher metadata, not capabilities or correctness."
},
"per_page": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1
},
"sections": {
"type": "array",
"items": {
"type": "string",
"maxLength": 120,
"minLength": 1
},
"maxItems": 5,
"description": "Publisher section keys from list_sections; discovered dynamically from indexed headings.",
"uniqueItems": true
},
"capability": {
"enum": [
"mcp"
],
"type": "string",
"description": "Filter to sites explicitly publishing an MCP endpoint link. Publisher declaration alone does not prove availability."
},
"section_match": {
"enum": [
"all",
"any"
],
"default": "all"
},
"verified_only": {
"type": "boolean",
"default": false,
"description": "Only domains whose owner has verified them."
},
"include_unlisted": {
"type": "boolean",
"default": false,
"description": "Also return low-authority (unlisted) entries. Requires an operator-approved discovery client key with unlisted permission."
}
},
"additionalProperties": false
}| array |
| Same-site paths of additional llms.txt files, e.g. ["/docs/llms.txt"]. |
| publisher_country | string | null | Owner-declared address country; use null to clear. Does not prove headquarters or markets served. |
{
"type": "object",
"required": [
"domain",
"api_key"
],
"properties": {
"tags": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 10,
"description": "Lowercase slugs, e.g. [\"developer-tools\", \"docs\"]."
},
"domain": {
"type": "string",
"maxLength": 253,
"minLength": 1,
"description": "A domain name such as example.com (no scheme, no path)."
},
"api_key": {
"type": "string",
"maxLength": 200,
"minLength": 1,
"description": "The owner API key issued by verify_domain (awm_key_...)."
},
"contact": {
"type": [
"string",
"null"
],
"maxLength": 200
},
"agent_terms": {
"type": [
"object",
"null"
],
"properties": {
"notes": {
"type": "string",
"maxLength": 500
},
"pricing": {
"enum": [
"free",
"freemium",
"paid"
],
"type": "string"
},
"terms_url": {
"type": "string"
},
"rate_limit": {
"type": "string",
"maxLength": 100
},
"attribution": {
"enum": [
"required",
"appreciated",
"none"
],
"type": "string"
},
"pricing_url": {
"type": "string"
},
"attribution_text": {
"type": "string",
"maxLength": 200
},
"automated_access": {
"enum": [
"welcome",
"limited",
"ask",
"not_allowed"
],
"type": "string"
}
},
"description": "Terms for automated use, shown to every agent that looks the site up.",
"additionalProperties": false
},
"description": {
"type": [
"string",
"null"
],
"maxLength": 500
},
"nested_llms_txt": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20,
"description": "Same-site paths of additional llms.txt files, e.g. [\"/docs/llms.txt\"]."
},
"publisher_country": {
"type": [
"string",
"null"
],
"pattern": "^[A-Za-z]{2}$",
"description": "Owner-declared address country; use null to clear. Does not prove headquarters or markets served."
}
},
"additionalProperties": false
}