sitepulsar
Agent Experience Optimization (AEO) audits over MCP — score how findable, readable, and usable your site is to AI agents across FIND/READ/USE, then get…
What it can do
- Check Agent Readiness: Fast AEO / agent-readiness read of a URL (robots, schema, content structure). Synchronous.
- Run Audit: Run a full AEO audit of a URL. Async: returns an audit_id to poll with get_audit. Accepts an optional target_keyword.
- Get Audit: Fetch an audit's status and, when complete, a compact decision-ready SUMMARY: AEO score (overall + FIND/READ/USE), a short summary, the weakest pillar, headline takeaways, and the top fixes
What data it sees
Do you need an account
No: the server works without sign-in
Agent Experience Optimization (AEO) audits over MCP — score how findable, readable, and usable your site is to AI agents across FIND/READ/USE, then get prioritized machine-actionable fixes.
How to connect
How to connect sitepulsar to Claude
The server address to paste into Claude settings:
https://sitepulsar--sitepulsar.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect sitepulsar to ChatGPT
The server address to paste into ChatGPT settings:
https://sitepulsar--sitepulsar.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect sitepulsar to Cursor
The server address to paste into Cursor settings:
https://sitepulsar--sitepulsar.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (13)
Raw names from tools/list. Only developers need these.
| check_agent_readiness | Fast AEO / agent-readiness read of a URL (robots, schema, content structure). Synchronous. |
| run_audit | Run a full AEO audit of a URL. Async: returns an audit_id to poll with get_audit. Accepts an optional target_keyword. |
| get_audit | Fetch an audit's status and, when complete, a compact decision-ready SUMMARY: AEO score (overall + FIND/READ/USE), a short summary, the weakest pillar, headline takeaways, and the top fixes. Lead with this; call get_audit_detail only when you need the full per-section breakdown. |
| get_audit_detail | Full structured per-section breakdown of a completed audit, on demand (only call after get_audit when you need depth): per-dimension FIND/READ/USE sub-scores, reputation across AI engines, competitor cluster (named for paid tiers), crawl/schema/robots findings, agentic-readiness + USE functional probes, and rendered-DOM analysis (paid). Typed, sanitized, size-capped (see truncated/dropped_sections). Composite *_score fields listed in experimental_fields may change methodology — do not hardcode thresholds. Also surfaces author/E-E-A-T, content freshness, images, hreflang, per-page per-bot access, Schema.org Action microformats, OpenAPI sub-metrics, Google Intelligence, product readability, site maturity, and a methodology block — each tagged with an availability state in the `availability` map (present | not_detected | not_run_free_tier | phase_c_disabled | probe_failed | truncated | not_measured_legacy). Wave C adds deterministic signals: homepage content quality (named quotes, stats-with-source, answer-shape) under crawl.content_signals; per-page video + per-locale schema in page_signals; OpenAPI per-operation coverage %, OAuth scopes, and MCP tool annotations in agentic_detail.use_probes; and self-disclosed trust claims (certifications, SLA/uptime, AI-content disclosure, verifiable-claims) under agentic_detail.trust_claims — each labeled "disclosed"/"mentioned" (never "verified") with an evidence URL and extraction-confidence. All carry an availability state in the `availability` map. |
| compare_aeo | Compare AEO posture across multiple URLs. Async: returns an audit_id to poll with get_audit. |
| get_fixes | Return prioritized, pillar-tagged (FIND / READ / USE) fixes for a completed audit. |
| get_audit_full | One call that returns a completed audit's SUMMARY, full per-section DETAIL, and deduplicated prioritized FIXES together — so you don't have to chain get_audit → get_audit_detail → get_fixes. Use `expand` to trim the payload ('summary' | 'detail' | 'fixes' | 'all'; default 'all'). Same ownership, tier gating, and sanitization as those tools. For an in-progress audit it returns the status so you can keep polling. The detail layer includes Wave-B surfaced sections (author/E-E-A-T, freshness, images, hreflang, per-bot access, Action microformats, OpenAPI sub-metrics, Google Intelligence, product readability, site maturity, methodology) and Wave-C deterministic signals (content quality, video/locale, USE sub-metrics, trust claims) each with an availability state. |
| search_companies | Samples the major AI engines for which companies they name for a query; returns a consensus shortlist (≤5). Use to see who agents *recommend* — not where a brand is mentioned (scan_visibility). Result: { companies[], tool_schema_version }. |
| probe_agent_discovery | Checks selected registries (official MCP registry, PyPI, GitHub) for packages/servers tied to a domain or brand. A discovery-surface check, not a visibility check. Result: { state, score, tier, hits[], tool_schema_version }. |
| probe_ucp_readiness | Inspects /.well-known/ucp to report whether AI shopping agents can transact with the site (presence + advertised capabilities only). Result: { has_ucp_profile, capabilities[], score, tool_schema_version }. |
| probe_mcp_functional | Discovers a site's advertised MCP endpoint (mcp.json / .well-known) and inspects its *declared* OAuth/transport posture (advertised, not guaranteed-working). Result: { handshake_ok, declared_endpoint, declared_tool_names[], score, tool_schema_version }. |
| scan_product_page | Deterministically scores one product page (schema, price, availability, image) 0–100 for shopping-agent readability. No LLM. Pro+. Result: { result: { readability_score, ... }, tool_schema_version }. |
| scan_visibility | Live AI-visibility scan for a brand: crawl + reputation sampled across AI engines, returning where *that* brand is mentioned (any public brand, not just your own). Pro+ (LLM cost). Result: { reputation[], tool_schema_version }. |