Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,544Letters: 14Defects: 1,324counted 2 min ago
teppi

Server definition

Hash
sha256:e10514f5a77c45d56728f3cb2ff8c759a53cbd244a9380fbf3f21655262377cc
What it is
What a remote MCP server returned when asked what it offers: 7 tools

The blob, as servednamed by its sha256

{ "instructions": "SEO / GEO / AEO Tools. 6 pay-per-call tools plus one free tool, `pricing_info`.\nEvery other tool charges per call: USDC on base over x402. Attach the signed payment payload as a plain JSON object in params._meta[\"x402/payment\"] of the tools/call request. Without it the call is answered with isError:true and the payment requirements in structuredContent, and nothing is run or charged.\n`pricing_info` is free, needs no wallet, and returns every tool's price, the payTo address, the network and the scheme — call it first. Each tool's price is also in its own description.\nA settled call is final: settlement is an on-chain transfer and cannot be reversed, so treat each tools/call as a purchase, not as a retryable read. Questions, or evaluating this server without a wallet: [email protected]", "tools": [ { "description": "Ask an LLM the queries that matter to you, compare each answer against its stored baseline and get told what changed — the answer itself and which domains it now cites or stopped citing. One row per query x model. — $0.10/call, x402 (USDC on base).", "inputSchema": { "properties": { "lang": { "default": "en", "description": "Answer language (e.g. en, ru, tr).", "editor": "textfield", "title": "Language", "type": "string" }, "maxConcurrency": { "default": 1, "description": "Parallel LLM calls (kept low to respect rate limits and to bound how many LLM calls can be wasted — uncharged — if a run's spend limit is hit mid-run).", "maximum": 3, "minimum": 1, "title": "Max concurrency", "type": "integer" }, "models": { "description": "OpenRouter model IDs to check. Grounded options: `perplexity/sonar`, `openai/gpt-4o-mini:online`, `google/gemini-2.0-flash-001:online`. Every model you add multiplies the number of billed rows: rows = number of queries × number of models. With the limits on both fields, the maximum possible is 20 queries × 3 models = 60 rows.", "editor": "stringList", "maxItems": 3, "prefill": [ "perplexity/sonar" ], "title": "Models", "type": "array" }, "openrouterApiKey": { "description": "Your OpenRouter API key (https://openrouter.ai/keys). Optional: without it the built-in key is used and the LLM cost is covered by the per-row price. Pass your own key to have tokens billed to your account instead, at cost.", "editor": "textfield", "isSecret": true, "title": "OpenRouter API key", "type": "string" }, "queries": { "description": "The prompts a real user would ask (e.g. `best crm for small business`). Each query is run against every model in `models` below and compared against the previous run's stored answer for the same query × model × language — you are charged per query × model pair, not per query, whether or not the answer changed.", "editor": "stringList", "maxItems": 20, "prefill": [ "best crm for small business" ], "title": "Queries", "type": "array" } }, "required": [ "queries" ], "schemaVersion": 1, "title": "AI Answer Change Alert input", "type": "object" }, "name": "ai-answer-change-alert", "outputSchema": null }, { "description": "Check which AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended & more) can access your website. Bulk audit of robots.txt rules, llms.txt presence and sitemap for AI search visibility (GEO/AEO). — $0.01/call, x402 (USDC on base).", "inputSchema": { "properties": { "maxConcurrency": { "default": 10, "description": "How many websites to check in parallel.", "maximum": 50, "minimum": 1, "title": "Max concurrency", "type": "integer" }, "websites": { "description": "List of website URLs or domains to audit (e.g. `example.com` or `https://example.com`).", "editor": "stringList", "maxItems": 100, "prefill": [ "https://example.com", "https://openai.com", "https://anthropic.com" ], "title": "Websites", "type": "array" } }, "required": [ "websites" ], "schemaVersion": 1, "title": "AI Crawler Access Checker input", "type": "object" }, "name": "ai-crawler-access-checker", "outputSchema": null }, { "description": "For each query that matters, see which sources and domains AI assistants cite in their answer — grounded via Perplexity Sonar, GPT or Gemini through your own OpenRouter key. GEO citation tracking: the backlink profile of the AI-answer era. — $0.10/call, x402 (USDC on base).", "inputSchema": { "properties": { "lang": { "default": "en", "description": "Answer language (e.g. en, ru, tr).", "editor": "textfield", "title": "Language", "type": "string" }, "maxConcurrency": { "default": 3, "description": "Parallel LLM calls (kept low to respect rate limits).", "maximum": 10, "minimum": 1, "title": "Max concurrency", "type": "integer" }, "models": { "description": "OpenRouter model IDs to test. Grounded options: `perplexity/sonar`, `openai/gpt-4o-mini:online`, `google/gemini-2.0-flash-001:online`. Every model you add here multiplies the number of billed rows: rows = number of queries × number of models (see `queries`).", "editor": "stringList", "maxItems": 5, "prefill": [ "perplexity/sonar" ], "title": "Models", "type": "array" }, "openrouterApiKey": { "description": "Your OpenRouter API key (https://openrouter.ai/keys). LLM token cost is billed to YOUR account; this Actor only orchestrates and scores. Optional to start the Actor: without it the run finishes cleanly and explains setup, and nothing is charged beyond the Actor start.", "editor": "textfield", "isSecret": true, "title": "OpenRouter API key", "type": "string" }, "queries": { "description": "The prompts a real user would ask (e.g. `best project management software`, `how to choose a CRM`). Each query is run against EVERY model in `models` below, and you are charged per query × model pair, not per query — e.g. 10 queries × 2 models = 20 billed rows. With the limits on both fields, the maximum possible is 20 queries × 5 models = 100 rows.", "editor": "stringList", "maxItems": 20, "prefill": [ "best project management software", "what is the capital of France" ], "title": "Queries", "type": "array" } }, "required": [ "queries" ], "schemaVersion": 1, "title": "AI Overview Citation Tracker input", "type": "object" }, "name": "ai-overview-tracker", "outputSchema": null }, { "description": "For each query that matters, check whether AI assistants recommend YOUR brand — and which competitors they cite instead. Grounded answers from Perplexity Sonar, GPT and Gemini via your own OpenRouter key. This is GEO: the SEO of the AI era. — $0.10/call, x402 (USDC on base).", "inputSchema": { "properties": { "brand": { "description": "The brand, product or company you want to track in AI answers.", "editor": "textfield", "prefill": "Notion", "title": "Brand / product name", "type": "string" }, "lang": { "default": "en", "description": "Answer language (e.g. en, ru, tr).", "editor": "textfield", "title": "Language", "type": "string" }, "maxConcurrency": { "default": 3, "description": "Parallel LLM calls (kept low to respect rate limits).", "maximum": 10, "minimum": 1, "title": "Max concurrency", "type": "integer" }, "models": { "description": "OpenRouter model IDs to test. Grounded options: `perplexity/sonar`, `openai/gpt-4o-mini:online`, `google/gemini-2.0-flash-001:online`. Every model you add here multiplies the number of billed rows: rows = number of queries × number of models (see `queries`).", "editor": "stringList", "maxItems": 5, "prefill": [ "perplexity/sonar" ], "title": "Models", "type": "array" }, "openrouterApiKey": { "description": "Your OpenRouter API key (https://openrouter.ai/keys). LLM token cost is billed to YOUR account; this Actor only orchestrates and scores. Optional to start the Actor: without it the run finishes cleanly and explains setup, and nothing is charged beyond the Actor start.", "editor": "textfield", "isSecret": true, "title": "OpenRouter API key", "type": "string" }, "queries": { "description": "The prompts a real user would ask (e.g. `best note-taking app`, `Notion alternatives`). Each query is run against EVERY model in `models` below, and you are charged per query × model pair, not per query — e.g. 10 queries × 2 models = 20 billed rows. With the limits on both fields, the maximum possible is 20 queries × 5 models = 100 rows.", "editor": "stringList", "maxItems": 20, "prefill": [ "best note-taking app", "best project management tool for startups" ], "title": "Queries", "type": "array" } }, "required": [ "brand", "queries" ], "schemaVersion": 1, "title": "LLM Brand Visibility input", "type": "object" }, "name": "llm-brand-visibility", "outputSchema": null }, { "description": "Give it a domain. It checks whether the site publishes a valid llms.txt / llms-full.txt (the emerging AI-crawler-friendly-docs convention) and whether robots.txt blocks GPTBot, ClaudeBot, Google-Extended, PerplexityBot and 5 other AI crawlers. llms.txt-first, no browser, no LLM, no API key. — $0.01/call, x402 (USDC on base).", "inputSchema": { "properties": { "items": { "description": "List of domains to audit for llms.txt presence and AI-crawler robots.txt policy.", "editor": "stringList", "maxItems": 100, "prefill": [ "vercel.com", "nytimes.com" ], "title": "Domains", "type": "array" }, "maxConcurrency": { "default": 10, "description": "How many domains to audit in parallel.", "maximum": 50, "minimum": 1, "title": "Max concurrency", "type": "integer" } }, "required": [ "items" ], "schemaVersion": 1, "title": "llms.txt Auditor input", "type": "object" }, "name": "llms-txt-auditor", "outputSchema": null }, { "description": "Free — list every paid tool in the 'seo-tools' bundle with its price, payTo address and network. Call this first if you don't have a wallet ready yet.", "inputSchema": { "properties": {}, "type": "object" }, "name": "pricing_info", "outputSchema": null }, { "description": "See exactly how your links look when shared on Telegram, WhatsApp, X, LinkedIn, Slack, Facebook & Discord. Bulk-audit Open Graph and Twitter Card tags, validate preview images, and find what breaks your link previews. — $0.01/call, x402 (USDC on base).", "inputSchema": { "properties": { "maxConcurrency": { "default": 10, "description": "How many URLs to check in parallel.", "maximum": 50, "minimum": 1, "title": "Max concurrency", "type": "integer" }, "urls": { "description": "List of page URLs to check (e.g. `example.com/article` or a full https URL).", "editor": "stringList", "maxItems": 100, "prefill": [ "https://example.com", "https://github.com", "https://stripe.com" ], "title": "URLs", "type": "array" } }, "required": [ "urls" ], "schemaVersion": 1, "title": "Social Preview Checker input", "type": "object" }, "name": "social-preview-checker", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:e10514f5a77c45d56728f3cb2ff8c759a53cbd244a9380fbf3f21655262377cc | sha256sum