API reference
search_tools
Search tools · read-only
Searches the vetted index of MCP servers by keyword or by the job a tool does. Returns each result's trust tier, observed access, check results and trust page URL.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"description": "Keywords or a plain description of the job, e.g. 'schedule LinkedIn posts'."
},
"kind": {
"description": "Limit to one tool type. Only mcp_server is indexed today.",
"type": "string",
"enum": [
"mcp_server",
"automation",
"extension",
"app"
]
},
"min_tier": {
"description": "Lowest tier to include: indexed < scanned < verified < proven.",
"type": "string",
"enum": [
"indexed",
"scanned",
"verified",
"proven"
]
},
"limit": {
"default": 5,
"type": "integer",
"minimum": 1,
"maximum": 25
},
"cursor": {
"description": "Opaque cursor from a previous response's next_cursor.",
"type": "string"
}
},
"required": [
"query",
"limit"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"title": {
"type": "string"
},
"kind": {
"type": "string"
},
"summary": {
"type": "string"
},
"tier": {
"type": "string"
},
"tierMeaning": {
"type": "string"
},
"latestVersion": {
"type": "string"
},
"revoked": {
"type": "boolean"
},
"access": {
"anyOf": [
{
"type": "object",
"properties": {
"networkHosts": {
"type": "array",
"items": {
"type": "string"
}
},
"filePaths": {
"type": "array",
"items": {
"type": "string"
}
},
"accounts": {
"type": "array",
"items": {
"type": "string"
}
},
"observedBy": {
"type": "string"
}
},
"required": [
"networkHosts",
"filePaths",
"accounts",
"observedBy"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"checks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"check": {
"type": "string"
},
"verdict": {
"type": "string"
},
"ranAt": {
"type": "string"
}
},
"required": [
"check",
"verdict",
"ranAt"
],
"additionalProperties": false
}
},
"rulesVersion": {
"type": [
"string",
"null"
]
},
"installs": {
"type": "number"
},
"trustPageUrl": {
"type": "string"
},
"markdownUrl": {
"type": "string"
},
"demo": {
"type": "boolean"
},
"why": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"slug",
"name",
"title",
"kind",
"summary",
"tier",
"tierMeaning",
"latestVersion",
"revoked",
"access",
"checks",
"rulesVersion",
"installs",
"trustPageUrl",
"markdownUrl",
"demo",
"why"
],
"additionalProperties": false
}
},
"total": {
"type": "number"
},
"next_cursor": {
"type": [
"string",
"null"
]
}
},
"required": [
"results",
"total",
"next_cursor"
],
"additionalProperties": false
}get_tool
Get tool details · read-only
Returns one indexed tool by slug, registry name or server URL: versions, tier history, observed access and supported apps.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"description": "Slug from search_tools, a registry name, a trust page URL or a server URL."
}
},
"required": [
"slug"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"title": {
"type": "string"
},
"kind": {
"type": "string"
},
"summary": {
"type": "string"
},
"tier": {
"type": "string"
},
"tierMeaning": {
"type": "string"
},
"latestVersion": {
"type": "string"
},
"revoked": {
"type": "boolean"
},
"access": {
"anyOf": [
{
"type": "object",
"properties": {
"networkHosts": {
"type": "array",
"items": {
"type": "string"
}
},
"filePaths": {
"type": "array",
"items": {
"type": "string"
}
},
"accounts": {
"type": "array",
"items": {
"type": "string"
}
},
"observedBy": {
"type": "string"
}
},
"required": [
"networkHosts",
"filePaths",
"accounts",
"observedBy"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"checks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"check": {
"type": "string"
},
"verdict": {
"type": "string"
},
"ranAt": {
"type": "string"
}
},
"required": [
"check",
"verdict",
"ranAt"
],
"additionalProperties": false
}
},
"rulesVersion": {
"type": [
"string",
"null"
]
},
"installs": {
"type": "number"
},
"trustPageUrl": {
"type": "string"
},
"markdownUrl": {
"type": "string"
},
"demo": {
"type": "boolean"
},
"publisher": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"claimed": {
"type": "boolean"
},
"verifiedDomain": {
"type": [
"string",
"null"
]
}
},
"required": [
"name",
"claimed",
"verifiedDomain"
],
"additionalProperties": false
},
"websiteUrl": {
"type": [
"string",
"null"
]
},
"repositoryUrl": {
"type": [
"string",
"null"
]
},
"versions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"version": {
"type": "string"
},
"tier": {
"type": "string"
},
"releasedAt": {
"type": "string"
},
"revoked": {
"type": "boolean"
},
"revokedReason": {
"type": [
"string",
"null"
]
}
},
"required": [
"version",
"tier",
"releasedAt",
"revoked",
"revokedReason"
],
"additionalProperties": false
}
},
"tools": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
}
},
"required": [
"name",
"description"
],
"additionalProperties": false
}
},
"outcomes": {
"type": "object",
"properties": {
"worked": {
"type": "number"
},
"failed": {
"type": "number"
}
},
"required": [
"worked",
"failed"
],
"additionalProperties": false
},
"sources": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"slug",
"name",
"title",
"kind",
"summary",
"tier",
"tierMeaning",
"latestVersion",
"revoked",
"access",
"checks",
"rulesVersion",
"installs",
"trustPageUrl",
"markdownUrl",
"demo",
"publisher",
"websiteUrl",
"repositoryUrl",
"versions",
"tools",
"outcomes",
"sources"
],
"additionalProperties": false
}get_trust_report
Get trust report · read-only
Returns each check's verdict and findings for one version of a tool, with the rules version and when each check ran.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"version": {
"description": "Defaults to the latest version.",
"type": "string"
}
},
"required": [
"slug"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"version": {
"type": "string"
},
"tier": {
"type": "string"
},
"tierMeaning": {
"type": "string"
},
"revoked": {
"anyOf": [
{
"type": "object",
"properties": {
"at": {
"type": "string"
},
"reason": {
"type": "string"
}
},
"required": [
"at",
"reason"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"checks": {
"type": "array",
"items": {
"type": "object",
"properties": {
"check": {
"type": "string"
},
"verdict": {
"type": "string"
},
"rulesVersion": {
"type": "string"
},
"ranAt": {
"type": "string"
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"rule": {
"type": "string"
},
"severity": {
"type": "string"
},
"message": {
"type": "string"
},
"location": {
"type": "string"
}
},
"required": [
"rule",
"severity",
"message"
],
"additionalProperties": false
}
}
},
"required": [
"check",
"verdict",
"rulesVersion",
"ranAt",
"findings"
],
"additionalProperties": false
}
},
"trustPageUrl": {
"type": "string"
}
},
"required": [
"slug",
"version",
"tier",
"tierMeaning",
"revoked",
"checks",
"trustPageUrl"
],
"additionalProperties": false
}compare_tools
Compare tools · read-only
Compares 2 to 5 tools side by side on tier, observed access, agent-reported outcomes and latest release.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slugs": {
"minItems": 2,
"maxItems": 5,
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
}
},
"required": [
"slugs"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"tools": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"tier": {
"type": "string"
},
"latestVersion": {
"type": "string"
},
"released": {
"type": "string"
},
"networkHosts": {
"type": "number"
},
"fileAccess": {
"type": "boolean"
},
"accounts": {
"type": "array",
"items": {
"type": "string"
}
},
"outcomes": {
"type": "object",
"properties": {
"worked": {
"type": "number"
},
"failed": {
"type": "number"
}
},
"required": [
"worked",
"failed"
],
"additionalProperties": false
},
"installs": {
"type": "number"
}
},
"required": [
"slug",
"title",
"tier",
"latestVersion",
"released",
"networkHosts",
"fileAccess",
"accounts",
"outcomes",
"installs"
],
"additionalProperties": false
}
}
},
"required": [
"tools"
],
"additionalProperties": false
}get_install_config
Get install config · read-only
Returns the exact install link, command or config block one app accepts for a tool, pinned to the vetted version, plus the access to show the user before installing. Records an install id for outcome reports.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"client": {
"type": "string",
"enum": [
"vscode",
"cursor",
"claude_code",
"claude_desktop",
"claude_ai"
],
"description": "The app to install into."
},
"version": {
"type": "string"
}
},
"required": [
"slug",
"client"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"install_id": {
"type": [
"string",
"null"
]
},
"client": {
"type": "string"
},
"label": {
"type": "string"
},
"supported": {
"type": "boolean"
},
"link": {
"type": [
"string",
"null"
]
},
"command": {
"type": [
"string",
"null"
]
},
"config": {
"anyOf": [
{
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
},
{
"type": "null"
}
]
},
"steps": {
"type": "array",
"items": {
"type": "string"
}
},
"pinned": {
"type": "object",
"properties": {
"version": {
"type": "string"
},
"contentHash": {
"type": "string"
}
},
"required": [
"version",
"contentHash"
],
"additionalProperties": false
},
"tier": {
"type": "string"
},
"access": {
"anyOf": [
{
"type": "object",
"properties": {
"networkHosts": {
"type": "array",
"items": {
"type": "string"
}
},
"filePaths": {
"type": "array",
"items": {
"type": "string"
}
},
"accounts": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"networkHosts",
"filePaths",
"accounts"
],
"additionalProperties": false
},
{
"type": "null"
}
]
},
"env": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"secret": {
"type": "boolean"
}
},
"required": [
"name"
],
"additionalProperties": false
}
},
"note": {
"type": [
"string",
"null"
]
}
},
"required": [
"install_id",
"client",
"label",
"supported",
"link",
"command",
"config",
"steps",
"pinned",
"tier",
"access",
"env",
"note"
],
"additionalProperties": false
}check_policy
Check against a policy · read-only
Checks one tool against a minimum tier and a list of blocked access types, and returns allow or deny with the reasons.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1
},
"min_tier": {
"default": "scanned",
"type": "string",
"enum": [
"indexed",
"scanned",
"verified",
"proven"
]
},
"blocked_access": {
"default": [],
"type": "array",
"items": {
"type": "string",
"enum": [
"network",
"files",
"accounts"
]
}
}
},
"required": [
"slug",
"min_tier",
"blocked_access"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"allowed": {
"type": "boolean"
},
"reasons": {
"type": "array",
"items": {
"type": "string"
}
},
"tier": {
"type": "string"
}
},
"required": [
"slug",
"allowed",
"reasons",
"tier"
],
"additionalProperties": false
}list_revocations
List revocations · read-only
Lists tool versions revoked after failing a check, newest first, optionally since a date or for specific tools.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"since": {
"description": "ISO 8601 date-time.",
"type": "string",
"format": "date-time",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
},
"slugs": {
"maxItems": 50,
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"revocations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"version": {
"type": "string"
},
"reason": {
"type": "string"
},
"revokedAt": {
"type": "string"
},
"trustPageUrl": {
"type": "string"
}
},
"required": [
"slug",
"version",
"reason",
"revokedAt",
"trustPageUrl"
],
"additionalProperties": false
}
}
},
"required": [
"revocations"
],
"additionalProperties": false
}submit_url
Submit a tool by URL · writes data, not destructive
Adds a tool to the index from an address: a remote MCP server URL, a domain, a GitHub repo, or an npm or PyPI package. Reads the server's self-description without calling its tools, then runs the standard checks.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"url": {
"type": "string",
"minLength": 3,
"maxLength": 500,
"description": "e.g. example.com/mcp, github.com/owner/repo, or @scope/package."
}
},
"required": [
"url"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"ok": {
"type": "boolean"
},
"slug": {
"type": [
"string",
"null"
]
},
"tier": {
"type": [
"string",
"null"
]
},
"trustPageUrl": {
"type": [
"string",
"null"
]
},
"needsAuth": {
"type": "boolean"
},
"steps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"step": {
"type": "string"
},
"ok": {
"type": "boolean"
},
"detail": {
"type": "string"
}
},
"required": [
"step",
"ok",
"detail"
],
"additionalProperties": false
}
},
"error": {
"type": [
"string",
"null"
]
}
},
"required": [
"ok",
"slug",
"tier",
"trustPageUrl",
"needsAuth",
"steps",
"error"
],
"additionalProperties": false
}report_outcome
Report install outcome · writes data, not destructive
Records whether a tool did its job after an install made with get_install_config. Reports from distinct agents feed the Proven tier.
Input schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"install_id": {
"type": "string",
"format": "uuid",
"pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$",
"description": "The install_id returned by get_install_config."
},
"worked": {
"type": "boolean"
},
"note": {
"type": "string",
"maxLength": 500
}
},
"required": [
"install_id",
"worked"
],
"additionalProperties": false
}Output schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"recorded": {
"type": "boolean"
}
},
"required": [
"recorded"
],
"additionalProperties": false
}