Raw schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Keyword search (Postgres websearch semantics: multiple words are ANDed, so a single distinctive keyword like 'scraping' matches more than a phrase like 'web scraping')"
},
"category": {
"type": "string",
"enum": [
"think",
"see",
"hear-speak",
"create",
"remember",
"search",
"locate",
"browse",
"communicate",
"execute",
"pay",
"shop",
"book",
"hire",
"trade",
"bet",
"sign",
"identify",
"connect",
"automate",
"monitor",
"other"
],
"description": "Category slug: think, see, hear-speak, create, remember, search, locate, browse, communicate, execute, pay, shop, book, hire, trade, bet, sign, identify, connect, automate, monitor, other"
},
"has_mcp": {
"type": "boolean",
"description": "Only services with MCP servers"
},
"accepts_mpp": {
"type": "boolean",
"description": "Only services accepting MPP payments"
},
"accepts_x402": {
"type": "boolean",
"description": "Only services accepting x402 payments"
},
"protocol": {
"type": "array",
"items": {
"type": "string",
"enum": [
"x402",
"mpp",
"l402",
"ap2",
"tap",
"agent-pay",
"ace",
"acp",
"ucp",
"actp",
"icc"
]
},
"description": "Only services supporting ALL of these agent payment/commerce protocols. x402 (x402, Coinbase, x402 Foundation); mpp (Machine Payments Protocol, Stripe, Tempo); l402 (L402, Lightning Labs); ap2 (Agent Payments Protocol, Google); tap (Trusted Agent Protocol, Visa); agent-pay (Mastercard Agent Pay, Mastercard); ace (Agentic Commerce Experiences, American Express); acp (Agentic Commerce Protocol, OpenAI, Stripe); ucp (Universal Commerce Protocol, Google, Shopify); actp (Agentic Commerce Trust Protocol, Alibaba, Ant International); icc (Intelligent Commerce Connect, Visa)"
},
"min_score": {
"type": "number",
"minimum": 1,
"maximum": 5,
"description": "Minimum bot-friendly score (1-5)"
},
"auth_method": {
"type": "string",
"enum": [
"api-key",
"m2m-oauth",
"bot-token",
"wallet",
"x402-none",
"none"
],
"description": "Filter by auth method"
},
"sort": {
"type": "string",
"enum": [
"score",
"votes",
"name",
"newest"
],
"description": "Sort order (default: score)"
},
"promoted": {
"type": "boolean",
"description": "Filter by promoted status: true for promoted only, false for organic only"
},
"page": {
"type": "number",
"description": "Page number (default 1)"
}
}
}