Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,549Letters: 14Defects: 1,324counted just now
teppi

Server definition

Hash
sha256:3eb8794a5e342acd5718b6dcf9ae77ccf157b9937fae3d39018d7fe090a49a30
What it is
What a remote MCP server returned when asked what it offers: 12 tools

The blob, as servednamed by its sha256

{ "instructions": "IndustryLens Public — live competitive intelligence on the B2B SaaS markets IndustryLens monitors (sales intelligence, AI-search & brand visibility, GTM engineering, spend management), plus published reports and head-to-head comparisons.\n\nQuery tools (reach for these first):\n • get_competitive_profile — USE WHEN the user asks who competes with a company, what a competitor recently did, or for a competitive overview of a domain. Input a domain or name → profile + recent strategic moves + linked reports.\n • list_competitor_moves — recent tracked moves for one competitor, newest-first.\n • find_competitors — who competes with a given company.\n\nCatalog tools:\n • list_reports — browse published reports (filter by industry / target_role)\n • get_report — full body of a report by slug\n • list_comparisons — browse competitor-vs-competitor breakdowns\n • get_comparison — full body of a comparison by slug\n • subscribe_to_newsletter — sign the user up for weekly briefings (consent required)\n\nAll tools return real data from industry-lens.com. The public tier shows facts\nabout companies and the existence of strategic shifts (with the real analysis\ndate) — never a customer's private data, and never a fabricated date. Quote\nslugs/URLs back so the user can verify. A { covered: false } result means the\ncompany isn't publicly tracked yet — surface the CTA. Subscribe only after the\nuser explicitly asks.", "tools": [ { "description": "Given a company domain or name, return the other companies IndustryLens tracks in the same market. Returns { covered: false } for companies not publicly tracked.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "domain": { "description": "Company domain or homepage URL (e.g. 'apollo.io'). Preferred.", "type": "string" }, "limit": { "description": "Max competitors (default 10, max 50).", "maximum": 50, "minimum": 1, "type": "integer" }, "name": { "description": "Company name (e.g. 'Apollo'). Used when no domain is given.", "type": "string" } }, "type": "object" }, "name": "find_competitors", "outputSchema": null }, { "description": "Fetch the full structured body of a published competitor comparison by slug. Returns content_json (the structured breakdown: pricing, recent moves, positioning, displacement signals, when-to-choose, etc.) plus metadata.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "slug": { "description": "Comparison slug from list_comparisons.", "minLength": 1, "type": "string" } }, "required": [ "slug" ], "type": "object" }, "name": "get_comparison", "outputSchema": null }, { "description": "Use when the user asks who competes with a company, what a competitor recently did, or for a competitive overview of a domain. Input a company domain or name and get a privacy-safe profile: firmographics, recent strategic moves (the existence of a shift + a was→now summary, with the real analysis date), and links to published reports/comparisons. Returns { covered: false } for companies IndustryLens doesn't publicly track.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "domain": { "description": "Company domain or homepage URL (e.g. 'apollo.io'). Preferred — most precise.", "type": "string" }, "name": { "description": "Company name (e.g. 'Apollo'). Used when no domain is given.", "type": "string" } }, "type": "object" }, "name": "get_competitive_profile", "outputSchema": null }, { "description": "The dated CHANGE-FEED for one competitor: every real was→now strategic shift IndustryLens detected, newest-first, each stamped with its real analysis date (never a fabricated date). Use when the user asks what changed, what's new, or wants a timeline of a competitor's moves — optionally since a given date. Input a domain or name. Returns { covered: false } with a CTA for companies not publicly tracked.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "domain": { "description": "Company domain or homepage URL (e.g. 'apollo.io'). Preferred — most precise.", "type": "string" }, "limit": { "description": "Max moves (default 20, max 50).", "maximum": 50, "minimum": 1, "type": "integer" }, "name": { "description": "Company name (e.g. 'Apollo'). Used when no domain is given.", "type": "string" }, "since": { "description": "Optional ISO date (YYYY-MM-DD). Only moves analyzed on/after this date are returned.", "type": "string" } }, "type": "object" }, "name": "get_competitor_moves_diff", "outputSchema": null }, { "description": "Given a market (a vertical slug or name), return the published category overview plus every player IndustryLens tracks in that market — the whole-CATEGORY map, not a self-selected competitor set. Returns the hub (title, abstract, tldr, hero_stats, url), the deduped list of players (name, domain, business_model), and `market_news` — the latest weekly market summary (narrative, top topics, new entrants, topic momentum, source URLs). Returns { covered: false } for markets IndustryLens doesn't publicly track. Use list_markets to discover slugs.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "market": { "description": "A vertical slug (exact) or market name (ILIKE), e.g. 'sales-intelligence' or 'sales intelligence'.", "minLength": 1, "type": "string" } }, "required": [ "market" ], "type": "object" }, "name": "get_market_landscape", "outputSchema": null }, { "description": "Structured pricing/packaging changes IndustryLens has detected — each with a change_type, severity, materiality score, a plain-language summary, and the real detection date. Pass a `competitor` (name or domain) to scope to one company, or omit it for a recent pricing feed. The feed spans the markets IndustryLens publicly tracks. No other public source exposes structured competitor pricing-diffs like this.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "competitor": { "description": "Competitor name or domain (e.g. 'Apollo' or 'apollo.io'). Omit for a market-wide recent pricing feed.", "type": "string" }, "limit": { "description": "Max changes (default 20, max 50).", "maximum": 50, "minimum": 1, "type": "integer" }, "since": { "description": "ISO date lower bound for detection (e.g. '2026-01-01'). Defaults to 90 days ago.", "type": "string" } }, "type": "object" }, "name": "get_pricing_changes", "outputSchema": null }, { "description": "Fetch the full body of a published report by slug. Returns the report's structured fields plus content_html (the canonical body). pdf_url is currently empty for every report (PDF generation is disabled pipeline-side); do not construct or suggest a .pdf URL — there is no such route. Point users to the report's web URL, or to the site's gated PDF-download form if one exists.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "slug": { "description": "Report slug from list_reports (e.g. '/devops-hiring-q1-2026' or 'devops-hiring-q1-2026').", "minLength": 1, "type": "string" } }, "required": [ "slug" ], "type": "object" }, "name": "get_report", "outputSchema": null }, { "description": "Browse published competitor-vs-competitor breakdowns. Optionally filter by a competitor name (matches either side). Each item has a slug usable with get_comparison. URLs follow https://industry-lens.com/compare/<slug>.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "competitor": { "description": "Competitor name filter (matches either side, ILIKE).", "type": "string" }, "limit": { "description": "Max results (default 10, max 50).", "maximum": 50, "minimum": 1, "type": "integer" } }, "type": "object" }, "name": "list_comparisons", "outputSchema": null }, { "description": "Recent tracked strategic moves for one competitor, newest-first — the existence of each shift plus a was→now summary and the real analysis date (never a fabricated date). Returns { covered: false } for companies IndustryLens doesn't publicly track, and an empty list for covered companies with no moves detected yet.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "competitor": { "description": "Competitor name or domain (e.g. 'Apollo' or 'apollo.io').", "minLength": 1, "type": "string" }, "limit": { "description": "Max moves (default 10, max 50).", "maximum": 50, "minimum": 1, "type": "integer" } }, "required": [ "competitor" ], "type": "object" }, "name": "list_competitor_moves", "outputSchema": null }, { "description": "List the B2B SaaS markets (categories) IndustryLens monitors. Each item has a `slug` usable with get_market_landscape for the full category map. Ordered by name.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "properties": {}, "type": "object" }, "name": "list_markets", "outputSchema": null }, { "description": "Browse published competitive-intelligence reports. Filter by industry or target_role; results are ordered newest-first. Each returned item has a slug usable with get_report. URLs follow https://industry-lens.com/reports/<slug>.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "industry": { "description": "Industry filter, ILIKE match (e.g. 'hr tech', 'devops', 'fintech').", "type": "string" }, "limit": { "description": "Max results (default 10, max 50).", "maximum": 50, "minimum": 1, "type": "integer" }, "target_role": { "description": "Target role filter, ILIKE match (e.g. 'marketing', 'sales', 'product').", "type": "string" } }, "type": "object" }, "name": "list_reports", "outputSchema": null }, { "description": "Sign the user up for IndustryLens's weekly intelligence-report newsletter. Use this only after the user explicitly asks to subscribe — never subscribe an email without their direct, informed consent. The source argument is recorded for attribution and defaults to 'mcp'.", "inputSchema": { "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "email": { "description": "The email address the user explicitly asked to subscribe.", "format": "email", "type": "string" }, "source": { "description": "Where the request came from (e.g. 'mcp_claude_desktop'). Defaults to 'mcp'.", "type": "string" } }, "required": [ "email" ], "type": "object" }, "name": "subscribe_to_newsletter", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:3eb8794a5e342acd5718b6dcf9ae77ccf157b9937fae3d39018d7fe090a49a30 | sha256sum