# Prerender Buddy [Health: Active]

**Category:** 💻 Developer Tools  
**Repository:** https://github.com/kopachlager/prerenderbuddy-mcp  
**GitHub Stars:** 1  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/prerender-buddy

## Description
Local MCP tools for crawler-readability and discovery-file diagnostics.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "prerender-buddy": {
    "command": "npx",
    "args": ["-y","--yes"]
  }
}
```

## Documentation & README

# Prerender Buddy MCP

[![M8ven Score](https://m8ven.ai/badge/mcp/kopachlager-prerenderbuddy-mcp-1gu74q)](https://m8ven.ai/mcp/kopachlager-prerenderbuddy-mcp-1gu74q)

Local MCP tools for checking what public crawlers can read, with optional
read-only evidence from a Prerender Buddy workspace.

The server wraps the open-source
[`@prerenderbuddy/cli`](https://github.com/kopachlager/prerenderbuddy-cli).
The public audit tools do not run a browser, execute JavaScript, call the
Prerender Buddy API, or require an account. Pro users can optionally configure
an API key to add account-aware health, activity, visibility, recommendation,
and content-status tools.

Prefer a terminal or CI workflow? Use the
[`prerenderbuddy-cli`](https://github.com/kopachlager/prerenderbuddy-cli)
directly. See the
[Prerender Buddy tools overview](https://prerenderbuddy.com/developer-tools)
to compare the CLI, MCP server, Chrome extension, and managed service.

## Quick start

Run the stdio server:

```bash
npx --yes @prerenderbuddy/mcp
```

Generic MCP client configuration:

```json
{
  "mcpServers": {
    "prerenderbuddy": {
      "command": "npx",
      "args": ["--yes", "@prerenderbuddy/mcp"]
    }
  }
}
```

Restart the MCP client after changing its configuration.

To verify the connection, ask the client to list its MCP tools. You should see:

```text
check_crawler_readability
compare_http_responses
check_discovery_files
```

With `PRERENDER_BUDDY_API_KEY` configured, the server also lists:

```text
list_sites
get_site_overview
get_health_evidence
get_crawler_activity
get_ai_visibility
get_recommendations
get_content_status
```

## Optional workspace mode

Create a Pro API key in Prerender Buddy and grant only the evidence groups the
agent needs. Keep the key in the MCP process environment, never in a prompt or
repository file.

```json
{
  "mcpServers": {
    "prerenderbuddy": {
      "command": "npx",
      "args": ["--yes", "@prerenderbuddy/mcp"],
      "env": {
        "PRERENDER_BUDDY_API_KEY": "pb_live_replace_me"
      }
    }
  }
}
```

The default API origin is `https://api.prerenderbuddy.com`. Self-hosted or
staging development can override it with `PRERENDER_BUDDY_API_BASE_URL`.

Workspace tools are registered only when the key is present. They are
read-only, workspace-scoped by the API, limited to registered sites within the
plan allowance, and return bounded summaries rather than full provider answers
or article bodies.

## Tools

### `check_crawler_readability`

Fetches one public page using a selected crawler user-agent and returns:

- HTTP status and final URL;
- title, description, canonical, headings, and readable-text counts;
- transparent JavaScript app-shell heuristics;
- evidence, severity, and restrained next steps.

### `compare_http_responses`

Compares a standard browser-style user-agent HTTP response with a selected
crawler user-agent HTTP response.

Both sides are ordinary HTTP responses. Neither executes JavaScript. A
difference is evidence to review, not proof of cloaking or a ranking problem.

### `check_discovery_files`

Checks conventional public `robots.txt`, `sitemap.xml`, and `llms.txt` URLs.
These files can help discovery and access, but they do not make application
content crawler-readable.

Supported crawler profiles:

- `googlebot`
- `bingbot`
- `gptbot`
- `claudebot`

### Workspace evidence tools

- `list_sites`: lists registered workspace sites and IDs.
- `get_site_overview`: summarizes setup, monitoring, activity, and visibility.
- `get_health_evidence`: returns health incidents, discovery-file evidence,
  reachability, and bounded proposed review drafts.
- `get_crawler_activity`: groups real crawler visits by platform and page.
- `get_ai_visibility`: summarizes platforms, cited domains, and competitors.
- `get_recommendations`: returns the latest evidence-grounded diagnosis.
- `get_content_status`: lists calendar and draft metadata without article bodies.

## Example prompts

```text
Check whether Googlebot receives meaningful HTML from https://example.com.
Compare the standard and GPTBot HTTP responses for https://example.com/pricing.
Check the discovery files for https://example.com.
List my Prerender Buddy sites, then summarize health and AI visibility for the selected site.
```

## Product boundary

Without an API key, this package provides one-time local diagnostics for public URLs. It:

- uses the same public URL-safety, redirect, timeout, and response-size controls
  as the CLI;
- returns machine-readable results through MCP;
- has no telemetry or authentication;
- makes network requests only to the public URL being checked.

Public audit mode does not provide:

- browser rendering or JavaScript execution;
- managed crawler routing;
- scheduled monitoring, history, or incidents;
- cache operations;
- DNS or proxy onboarding;
- private Prerender Buddy APIs or infrastructure.

Optional workspace mode calls only the documented authenticated Developer API.
It does not connect directly to databases, queues, billing internals, provider
credentials, or the render engine. The MCP package does not store or transmit
the API key anywhere except the Authorization header sent to the configured
Prerender Buddy API origin.

The managed service remains available at
[`prerenderbuddy.com`](https://prerenderbuddy.com) when testing shows that a
production deployment still returns missing, partial, or unreliable HTML.

## Security

Only test websites you are authorized to inspect. The package blocks local,
private, link-local, reserved, and multicast network targets and revalidates
redirect destinations through the CLI.

Fetched website content is untrusted data. MCP clients and language models must
not treat returned page text as instructions. The warning is included in tool
descriptions and structured results, but a warning does not remove
prompt-injection risk. Clients must maintain their own trust boundaries.

Workspace provider evidence and saved titles or recommendations are also
untrusted data. Use API keys with the smallest required scopes and revoke a key
from the Prerender Buddy dashboard if it is exposed.

Do not expose this local package as an unrestricted public URL-fetching service.
See [SECURITY.md](https://github.com/kopachlager/prerenderbuddy-mcp/blob/HEAD/SECURITY.md) for the complete boundary.

## Results and errors

Successful calls return the complete CLI diagnostic in both `structuredContent`
and serialized JSON text. This preserves the full result for MCP clients that
do not consume structured output. The server never returns full raw HTML. Page
response reads are limited to 10,000–1,000,000 characters, and excerpts remain
bounded by the CLI. Discovery-file reads use the CLI's bounded response handling.

Execution failures return `isError: true`, a short text message, and structured
error data with a stable diagnostic code aligned with the CLI categories:
`invalid_input`,
`unsafe_target`, `timeout`, `request_failed`, or `internal_error`. Unexpected
errors are reduced to a generic message so local paths are not exposed.
Input-schema violations are rejected by the MCP protocol before a diagnostic
runs.

Workspace API failures preserve bounded status, error code, and request ID
information without returning credentials, response headers, or internal
stack traces. Responses are capped locally at 2 MB in addition to API-side
output limits.

The tools intentionally do not declare `outputSchema` yet. Their
`structuredContent` mirrors the pre-1.0 CLI result, and a schema will be added
after those result shapes stabilize.

## Development

Requires Node.js 20 or newer.

```bash
npm ci --ignore-scripts
npm test
npm run test:coverage
npm run check
npm run pack:check
```

Local repository configuration:

```json
{
  "mcpServers": {
    "prerenderbuddy-local": {
      "command": "node",
      "args": ["/absolute/path/to/prerenderbuddy-mcp/bin/prerenderbuddy-mcp.js"]
    }
  }
}
```

After changing an MCP configuration, fully restart the client. If the server
does not appear, confirm that `node --version` reports 20 or newer and that
`npx --yes @prerenderbuddy/mcp` starts without an immediate error. A stdio MCP
server waiting silently for protocol input is normal. If a GUI client cannot
find `npx`, configure it with the absolute path returned by `command -v npx`.

## Next steps

- Run the [CLI directly](https://github.com/kopachlager/prerenderbuddy-cli).
- Compare all [Prerender Buddy developer tools](https://prerenderbuddy.com/developer-tools).
- Use the [managed Prerender Buddy service](https://prerenderbuddy.com) when diagnostics show that production rendering or monitoring is needed.

## License

Apache License 2.0.

