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 yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:3eb8794a5e342acd5718b6dcf9ae77ccf157b9937fae3d39018d7fe090a49a30 | sha256sum