Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,521Letters: 13Defects: 1,321counted just now
teppi

Server definition

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

The blob, as servednamed by its sha256

{ "instructions": "A hosted MCP server over Google Search Console. Connect your Google account once and AskWatch issues a personal link: no Cloud project, no credentials.json, nothing to run or host. Eleven tools answer whole questions rather than returning rows to interpret — what dropped since last month, which queries rank well but get few clicks, which pages compete for the same search — and a raw Search Analytics query is there for everything else. Read-only at Google's level: the grant asks for webmasters.readonly, so it cannot submit, index or change anything.\n\nThis address needs a personal link: https://mcp.askwatch.ai/gsc/<your key>. The key is free and issued as soon as you connect Google Search Console — https://askwatch.ai/free-tools/google-search-console-mcp.", "tools": [ { "description": "Branded versus non-branded search, split on the words supplied. The split is only as good as those terms: misspellings and the domain name catch more of what people type.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "brand_terms": { "description": "Words that make a search branded, e.g. ['askwatch', 'ask watch'].", "items": { "type": "string" }, "type": "array" }, "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "required": [ "brand_terms" ], "type": "object" }, "name": "brand_split", "outputSchema": null }, { "description": "What gained and what lost between this period and the one before it, with small rows filtered out. Answers 'what dropped in the last 28 days'.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "dimension": { "description": "Default query.", "enum": [ "query", "page" ], "type": "string" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "limit": { "description": "Rows to return. Default 25, maximum 100; `has_more` says whether there were more.", "minimum": 1, "type": "integer" }, "min_impressions": { "description": "Noise floor. Default 30 in either window.", "minimum": 0, "type": "integer" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "type": "object" }, "name": "changes", "outputSchema": null }, { "description": "Queries where more than one page of the site is being shown, with how each page does on them.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "limit": { "description": "Rows to return. Default 25, maximum 100; `has_more` says whether there were more.", "minimum": 1, "type": "integer" }, "min_impressions": { "description": "Per page. Default 30.", "minimum": 0, "type": "integer" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "type": "object" }, "name": "find_cannibalization", "outputSchema": null }, { "description": "Queries ranking 5-20 with plenty of impressions but a click-through rate below what is typical at their position — where a title or snippet rewrite is worth the most clicks.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "limit": { "description": "Rows to return. Default 25, maximum 100; `has_more` says whether there were more.", "minimum": 1, "type": "integer" }, "min_impressions": { "description": "Default 60.", "minimum": 0, "type": "integer" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "type": "object" }, "name": "find_opportunities", "outputSchema": null }, { "description": "Google's index status for one URL, as the URL Inspection API reports it: whether it is indexed, when it was last crawled, and which canonical Google chose.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "url": { "description": "The exact URL to inspect.", "type": "string" } }, "required": [ "url" ], "type": "object" }, "name": "inspect_url", "outputSchema": null }, { "description": "Sitemaps submitted for the property and their status, from Google's Sitemaps API. Read-only: submitting is not possible with read access.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" } }, "type": "object" }, "name": "list_sitemaps", "outputSchema": null }, { "description": "Search Console properties this connection can read, from Google's Sites API. These are the exact strings the site argument takes.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "list_sites", "outputSchema": null }, { "description": "What searches a specific page is shown for.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "limit": { "description": "Rows to return. Default 25, maximum 100; `has_more` says whether there were more.", "minimum": 1, "type": "integer" }, "match": { "description": "Default equals.", "enum": [ "equals", "contains" ], "type": "string" }, "page": { "description": "Full URL of the page.", "type": "string" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "required": [ "page" ], "type": "object" }, "name": "page_queries", "outputSchema": null }, { "description": "Direct query against Google's Search Analytics API, with the same dates, dimensions and filters it takes, passed through unchanged.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "dimensions": { "description": "Group by these. Omit for totals.", "items": { "enum": [ "query", "page", "country", "device", "date" ], "type": "string" }, "type": "array" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "filters": { "description": "Google's dimensionFilterGroups, passed through unchanged.", "items": {}, "type": "array" }, "limit": { "description": "Rows to return. Default 25, maximum 100; `has_more` says whether there were more.", "minimum": 1, "type": "integer" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" }, "start_row": { "description": "Paging offset; `next_start_row` comes back in the answer.", "minimum": 0, "type": "integer" } }, "type": "object" }, "name": "query", "outputSchema": null }, { "description": "How the site did over a period compared with the one before it: clicks, impressions, CTR, average position and the change in each. Covers the question 'how is my site doing'.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "type": "object" }, "name": "site_overview", "outputSchema": null }, { "description": "Top queries, pages, countries or devices for a period. Optionally narrowed to one country or device — 'top pages in Germany on mobile' is one call.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "country": { "description": "ISO-3166-1 alpha-3, e.g. deu, usa. Filters rather than groups.", "type": "string" }, "days": { "description": "Length of the window, counted back from the last day with data. Default 28.", "maximum": 480, "minimum": 1, "type": "integer" }, "device": { "enum": [ "desktop", "mobile", "tablet" ], "type": "string" }, "dimension": { "description": "What to group by. Default query.", "enum": [ "query", "page", "country", "device" ], "type": "string" }, "end_date": { "description": "YYYY-MM-DD. Defaults to the last day with data.", "type": "string" }, "limit": { "description": "Rows to return. Default 25, maximum 100; `has_more` says whether there were more.", "minimum": 1, "type": "integer" }, "order_by": { "description": "Default clicks.", "enum": [ "clicks", "impressions" ], "type": "string" }, "site": { "description": "Search Console property, exactly as list_sites reports it (sc-domain:example.com or https://example.com/). Optional when the account has only one property.", "type": "string" }, "start_date": { "description": "YYYY-MM-DD. Overrides `days`.", "type": "string" } }, "type": "object" }, "name": "top", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:a773c6351e5d14e76f2f519a9a40537bed993978f27e5ee1dd9fcd0387353f29 | sha256sum