Get named by AI search engines. CLI + MCP server + agent skill that finds the questions where ChatGPT names a competitor instead of you, writes the page that closes the gap, and measures what publishing it did.
claude mcp add fulcru -- npx -y skills{
"mcpServers": {
"fulcru": {
"command": "npx",
"args": ["-y", "skills"],
"env": {
"FULCRU_TOKEN": "<fulcru_token>"
}
}
}
}FULCRU_TOKENResumen de MCP Servers
# fulcru
**Get named by AI search engines.**
When someone asks ChatGPT "what's the best CRM for a small team", the answer names
two or three products. Those get the customer. Everyone else is invisible.
`fulcru` finds the questions where an AI assistant names a competitor instead of
you, writes the page that closes the gap, and measures what publishing it did. It
runs as a CLI, an MCP server, and an agent skill, so a human or an agent can run
the whole loop.
This repo is the open, self-hostable agent surface. The measurement engine is the
hosted [Fulcru](https://fulcru.app) service; everything here is a thin client that
talks to it with your token.
We run it on ourselves and publish the result, whichever way it goes. Today it
scores us **0 out of 34 prompts**: [we sell AI visibility and we score zero on our
own product](https://www.fulcru.app/guides/scored-zero-on-our-own-tool), with the
full run and the source data.
```bash
npm install -g fulcru
export FULCRU_TOKEN=pk_... # Settings -> Integrations at fulcru.app
```
Or run it in Docker, with nothing installed on the host:
```bash
docker build -t fulcru .
docker run --rm -e FULCRU_TOKEN=pk_... fulcru gaps
```
No secrets are baked into the image; the token is passed at run time. Verified on
`node:20-alpine`, 2026-07-27.
## The loop
```bash
$ fulcru gaps
0% k57jc... best AI visibility tracker for a SaaS startup -> AI names Profound, Peec AI
0% k57bw... how do I know if ChatGPT recommends my brand -> AI names Otterly AI
33% k57xz... tools to track brand mentions in Perplexity -> AI names Semrush
Write the top one: fulcru write k57jc...
$ fulcru write k57jc... > page.md # the drafted article, grounded in what AI cites
$ fulcru publish k57jc... https://mysite.com/blog/ai-visibility-trackers
Published. Baseline: AI names you in 0% of 9 measured answers.
$ fulcru delta
0% -> 44% +44pts Best AI Visibility Trackers, Compared
```
That last line is the whole point.
## Commands
| Command | What it does |
|---|---|
| `fulcru gaps [n]` | Questions where AI names a competitor and not you, worst first |
| `fulcru write <promptId>` | Writes the page that closes one gap; Markdown to stdout |
| `fulcru publish <pageId> <url>` | Marks it live and snapshots the baseline to measure from |
| `fulcru delta` | What your published pages actually did |
| `fulcru report [section]` | `overview`, `competitors`, `sources`, `mentions`, `prompts` |
Add `--json` to any command for the raw payload.
## Built for agents
Output is terse lines, not JSON blobs, because the caller is usually an LLM and
its context is the scarce resource. `fulcru gaps` costs an agent about 50 tokens;
the same data as raw API JSON costs about 800. `fulcru write` sends the Markdown
to stdout and everything else to stderr, so `fulcru write <id> > page.md` gives a
clean file.
## MCP
Two ways to wire the five Fulcru tools into an agent.
**Remote (hosted).** Point any MCP client at the hosted endpoint with your token:
```json
{
"mcpServers": {
"fulcru": {
"url": "https://little-orca-977.convex.site/mcp",
"headers": { "Authorization": "Bearer pk_..." }
}
}
}
```
**Local (stdio).** For hosts that prefer a subprocess, this package ships a stdio
MCP server that proxies to the hosted endpoint:
```json
{
"mcpServers": {
"fulcru": {
"command": "npx",
"args": ["-y", "fulcru", "fulcru-mcp"],
"env": { "FULCRU_TOKEN": "pk_..." }
}
}
}
```
Tools: `fulcru_gaps`, `fulcru_write_page`, `fulcru_publish_page`, `fulcru_delta`,
`fulcru_visibility`.
## Skill
The [`skills/fulcru`](skills/fulcru/SKILL.md) skill runs the whole playbook using
nothing but web access — audit a domain, find the gaps, write the page, re-measure
— with no account and no token. Install it into an agent that supports skills:
```bash
# Claude / OpenClaw
npx skills add gsmmediaro/fulcru
# Hermes
hermes skills install <path-or-registry>
```
The CLI and MCP above are what you use when you want it measured **continuously**
across every engine, with the before/after delta tracked for you.
## Configuration
| Env var | Required | Default | Purpose |
|---|---|---|---|
| `FULCRU_TOKEN` | for the CLI + local MCP | — | Your account token (Settings -> Integrations) |
| `FULCRU_ENDPOINT` | no | `https://little-orca-977.convex.site/mcp` | Point at a self-hosted or custom-domain endpoint |
No secrets are baked into this repo. The token is read from the environment only.
## Self-hosting
The skill needs nothing. The CLI and MCP need a Fulcru account for the continuous,
measured loop; point `FULCRU_ENDPOINT` at your own instance if you run one.
A Docker image is provided:
```bash
docker build -t fulcru .
docker run --rm -e FULCRU_TOKEN=pk_... fulcru gaps
```
## Contributing
Issues and PRs welcome. The tool logic lives in the hosted service; this repo is
the CLI, the stdio MCP proxy, and the skill. If AI names a competitor instead of
you, open an issue with the question — that is exactly the gap this is built to
close.
If this is useful, a ⭐ genuinely helps.
## License
AGPL-3.0-or-later. See [LICENSE](LICENSE).
Lo que la gente pregunta sobre fulcru
¿Qué es gsmmediaro/fulcru?
+
gsmmediaro/fulcru es mcp servers para el ecosistema de Claude AI. Get named by AI search engines. CLI + MCP server + agent skill that finds the questions where ChatGPT names a competitor instead of you, writes the page that closes the gap, and measures what publishing it did. Tiene 0 estrellas en GitHub y se actualizó por última vez today.
¿Cómo se instala fulcru?
+
Puedes instalar fulcru clonando el repositorio (https://github.com/gsmmediaro/fulcru) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar gsmmediaro/fulcru?
+
gsmmediaro/fulcru aún no ha sido auditado por nuestro agente de seguridad. Revisa el repositorio original en GitHub antes de usarlo en producción.
¿Quién mantiene gsmmediaro/fulcru?
+
gsmmediaro/fulcru es mantenido por gsmmediaro. La última actividad registrada en GitHub es de today, con 5 issues abiertos.
¿Hay alternativas a fulcru?
+
Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.
Despliega fulcru en tu cloud
Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.
¿Mantienes este repo? Añade un badge a tu README
Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.
[](https://claudewave.com/repo/gsmmediaro-fulcru)<a href="https://claudewave.com/repo/gsmmediaro-fulcru"><img src="https://claudewave.com/api/badge/gsmmediaro-fulcru" alt="Featured on ClaudeWave: gsmmediaro/fulcru" width="320" height="64" /></a>Más MCP Servers
Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.
User-friendly AI Interface (Supports Ollama, OpenAI API, ...)
An open-source AI agent that brings the power of Gemini directly into your terminal.
The fastest path to AI-powered full stack observability, even for lean teams.
Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface
🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl!