TofuBofu AI Visibility
com.tofubofu/ai-visibilityVersion 1.0.0Free AI visibility scan for any B2B company: see how often AI engines recommend it, plus the fixes.
Status
Responds215 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:19 UTC
- Latency
- 215 ms
- Remotes responding
- 1 of 1
- Sign-in
- No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://tofubofu.com/mcpResponds215 msNo sign-in
Claude Code
claude mcp add --transport http ai-visibility https://tofubofu.com/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: ai-visibility
Remote MCP server URL: https://tofubofu.com/mcpCursor
{
"mcpServers": {
"ai-visibility": {
"url": "https://tofubofu.com/mcp"
}
}
}VS Code
code --add-mcp '{"name":"ai-visibility","type":"http","url":"https://tofubofu.com/mcp"}'Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
3 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
get_visibility_reportFetch the results of an AI-visibility scan started with scan_ai_visibility.
Args:
report_id: The id returned by scan_ai_visibility.
Returns:
While running: {status: "running", progress}. When done: the Tofu Index
(named in the consideration set) and the Bofu Index (picked head to
head), each with its fraction, the Tofu Index per engine, share of
voice, sentiment, the top competitors winning the answers, any gap
between the competitors the user named and the ones AI names, and
top_fixes, the open items at the top of the brand's Fixes list (the same
list the app's Fixes page shows; empty when there is none), plus the
report_url.
| Not declared | Yes | Not declared | No |
research_companyStep one of a scan: read the company's website and return the scan form's steps, pre-filled with what we read. Call this first, walk the user through `steps` in order, show them the answers and the queries, and get a yes before calling scan_ai_visibility. Every value is a guess from the website (or, for a signed-in workspace's returning brand, what the brand already holds) for the user to confirm or correct. Returns brand_name, steps (each with title and fields: param, question, help, kind, options, value, suggestions), scan (engines, queries_per_engine, queries_total) and how_to_ask. | Not declared | Yes | Not declared | Yes |
scan_ai_visibilityStart an AI-visibility scan of a company's website. It asks ChatGPT, Claude, Perplexity, Gemini, Google AI Mode real buying queries and records which companies they name. A free scan asks 5 queries on each engine, 25 in all. A call carrying a TofuBofu API key (Authorization: Bearer tb_live_...) re-scans that workspace's existing brand for the website, on its plan and quota.
Before calling: call research_company, walk the user through its steps, show them the pre-filled answers and the queries (for a returning brand, the ones its last scan asked, which this scan asks again), and get a yes. Ask where they sell if you do not know it: geo_scope changes every query. Omit a field you do not know rather than inventing a value.
The scan runs in the background (a few minutes); call get_visibility_report with the returned report_id. Returns report_id, report_url, assumed (answers not supplied) and query_warnings (buyer_questions that read as a topic, each with its reason; every one is still asked as sent). status "not_started" with report_id null means no scan ran: the email already has an account, or this website's free scan already ran this month. A sign-in link went to that inbox; show the note and stop. | No | No | No | Yes |
Details
- Registry status
- Active
- Published
- Jul 16, 2026
- Updated
- Jul 16, 2026
- Website
- Not given
- Repository
- Not given
- Categories (suggested)
- CRMSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
- GDPR
- Not declared