vischeck
vischeck is a small local bridge to FrontStat's hosted
MCP server, which tracks whether the AI search engines
recommend a startup's product. Ask about a launch, and
the answer shows a visibility score and whether ChatGPT,
Claude and Gemini name the product for its buyer
question — or which competing products they name
instead.
The bridge keeps no visibility data of its own. It
serves the upstream server's tool list locally, exactly
as captured from the live endpoint, and forwards each
tool call upstream, returning the result untouched.
The whole captured surface only reads: a public launch
lookup that needs no token, plus five Pro report views
that need a FrontStat Pro dashboard token.
Tools
check_public_launch — look up a product launch that
FrontStat already tracks: its name, its rank on this
week's or this month's launch board, its visibility
score (0 to 100), and whether ChatGPT, Claude and
Gemini recommend it for its buyer question, with the
products they name instead, plus a link to its public
FrontStat page. If the domain is not tracked yet, it
says so and links to the free report. Required:
domain (the product's domain or URL, e.g.
example.com). No token needed.
get_visibility — your latest FrontStat Pro report:
date, visibility score, whether each AI search engine
recommends your product for your main buyer question
and who it names instead, and per buyer question how
many answers recommend you (X of Y) per assistant.
Needs a Pro token. Takes no arguments.
list_buyer_questions — each buyer question FrontStat
asks the AI search engines about your market, with a
yes or no per engine for whether the answer recommends
your product. Needs a Pro token. Takes no arguments.
who_wins_instead — the products the AI search
engines name instead of yours, and the sites they
cite, each with how many answers it appears in, from
your latest Pro report. Needs a Pro token. Takes no
arguments.
cited_sites — the sites the AI search engines cite
most when they answer your buyer questions, with how
many answers cite each one, your own domain left out:
the pages to get mentioned on. Needs a Pro token.
Takes no arguments.
visibility_history — one point per day for the last
30 days: your visibility score and how many answers
recommend your product, so you can see whether your
changes moved the AI search engines. Needs a Pro
token. Takes no arguments.
Configuration
FRONTSTAT_MCP_URL (optional) — override the upstream
endpoint. Defaults to https://frontstat.com/api/mcp.
(The override hook is this rebuild's own labelled
reconstruction.)
FRONTSTAT_API_KEY (optional) — when set, every
upstream request carries an
Authorization: Bearer <value> header, which is how
the five Pro tools receive the dashboard token. When
it is not set, no Authorization header is sent and
only the public launch lookup works. (This forwarding
is also a labelled reconstruction; the original
surface was captured keyless.)
Forwarding mechanics
On the first tool call the client opens a streamable
HTTP session with the upstream: a JSON-RPC initialize
request (protocolVersion 2025-03-26, clientInfo name
vischeck), then a notifications/initialized
notification, then the tools/call request carrying
the caller's arguments unchanged. When the upstream
answers initialize with an Mcp-Session-Id header,
that value rides on every later request of the session,
which is reused for the life of the process. Replies
may arrive as plain JSON or as server-sent events;
both are read.
Successful upstream results pass through verbatim,
including any isError flag the upstream sets.
Failures — a JSON-RPC error, a non-2xx status, an
unreadable response, or a request that cannot be
completed — come back as an isError result whose
text starts with vischeck error: (this rendering
is this rebuild's own labelled reconstruction).
CLI
Each tool is also a subcommand taking one JSON argument
string (omit it for tools that take none):
Exit codes: 0 on success, 1 on an isError
result, 2 on a usage error.
MCP server
MCP client config:
Docker
The container's default command is mcp, so the first
form is a stdio MCP server; any other arguments reach
the CLI normally.
Development
The test suite runs entirely against a stubbed
JSON-RPC upstream — no live network calls.
License
MIT — see LICENSE.