blockquote
Registry code: d7f05fbb87d5eb72
Blockquote scores any public URL 0-100 for AI citability (how likely ChatGPT, Claude, Perplexity and Google AI Overviews are to cite it) and returns concrete fixes. Flow: start_scan → poll get_scan until status is done (typically 15-45s) → read the report (view 'markdown' gives the whole report as one document). Anonymous use is free with IP rate limits; an API key (Authorization: Bearer bq_…, created at https://blockquote.io/account) applies your own account quotas, the full fix list, and refresh. Docs: https://blockquote.io/docs/ai-agents
- endpoint
- https://mcp.blockquote.io/mcp
- protocol
- http-sse ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is blockquote live?
- Yes — it answered the hub's last check (checked 59m ago). It answered 100% of checks over the last 30 days.
- Is blockquote free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does blockquote have?
- 16 tools: compare_scans, list_monitors, add_monitor, preview_audit, get_scan, start_scan, audit_agent_readiness, start_audit, ….
- Is blockquote safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 100%· all time 100%
last good check
of 16 tools
- unknown → live
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
list_checks open 59m ago
The catalog of every check a scan runs, with what it measures and why it matters. Categories and weights: schema 40%, structure 30%, citability 30%.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "category": { "enum": [ "schema", "structure", "citability" ], "type": "string" } } }arguments 14 linescompare_scans unknown never probed
What changed between two finished scans of the same page: score and per-category deltas, every check whose verdict flipped, and recommendations split into resolved, new and still open. Name the pair with from (the older, baseline scan) and to (the newer one), or pass url to compare that page's two newest stored scans. view 'markdown' returns the same comparison as one Markdown section. Replaces fetching two full reports and diffing them yourself. May mark abandoned pending scans failed and update API key usage metadata.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "to": { "type": "string", "description": "Newer scan id — the 'after' side" }, "url": { "type": "string", "description": "Compare this page's two newest scans instead of naming ids" }, "from": { "type": "string", "description": "Baseline scan id — the 'before' side" }, "view": { "enum": [ "json", "markdown" ], "type": "string", "description": "Default: json" } } }arguments 26 lineslist_monitors unknown never probed
The URLs this account re-scans weekly, each with its last score and run time, plus the monitor allowance of the account's plan, returned as `limit`. Requires a bearer key (bq_…). Updates API key usage metadata.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesadd_monitor unknown never probed
Add a public HTTPS URL to this account's weekly re-scan. Monitoring needs a paid plan; on the free plan, or at the plan's cap, the call is refused with the reason — the cap refusal names the allowance. Requires a bearer key (bq_…). Schedules digest emails and configured webhook deliveries for weekly results.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "url" ], "properties": { "url": { "type": "string", "description": "Public HTTPS URL or bare domain, e.g. example.com/blog/post" } } }arguments 13 linespreview_audit unknown never probed
Preview up to ten normalized, unique pages of one website and their maximum scan quota use. Supply URLs or a sitemap URL. Requires an account key. No scans start.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "urls": { "type": "array", "items": { "type": "string" }, "maxItems": 10, "minItems": 1 }, "sitemapUrl": { "type": "string" } } }arguments 17 linesget_scan unknown never probed
Fetch a scan by id. view 'summary' (default) returns score, category scores, and the top recommendations; 'markdown' returns the WHOLE report as one Markdown document (all checks, evidence, and fix payloads — the best input for analysis); 'full' returns the complete report JSON. A caller with no API key gets one full fix; the rest keep their titles and are locked. A bearer API key applies the caller's own account and plan. May mark an abandoned pending scan failed and update API key usage metadata.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "scanId" ], "properties": { "view": { "enum": [ "summary", "full", "markdown" ], "type": "string", "description": "Default: summary" }, "scanId": { "type": "string", "description": "The id returned by start_scan" } } }arguments 22 linesstart_scan unknown never probed
Scan a public HTTPS URL for AI citability (0-100 score + fixes). Returns a scanId immediately; poll get_scan until status is done. A fresh cached report (< 24h) returns as done at once. refresh: true skips the cache and needs an API key.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "url" ], "properties": { "url": { "type": "string", "description": "Public HTTPS URL or bare domain, e.g. example.com/blog/post" }, "refresh": { "type": "boolean", "description": "Skip the 24h cache and re-scan the live page. Requires an API key." } } }arguments 17 linesaudit_agent_readiness unknown never probed
Audit how well AI agents can find, read and use a domain, an MCP server or an MCP App. Separate from the citability score. kind 'domain' (default) audits the site; 'mcp' and 'mcp-app' audit the endpoint URL. Runs inline (typically 10-40s) and returns the score, per-layer scores, coverage and the failed checks with evidence and a fix. A report under 24 hours old returns at once. Uses the same scan quota as start_scan.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "url" ], "properties": { "url": { "type": "string", "description": "Public HTTPS URL or bare domain; the endpoint URL for mcp kinds" }, "kind": { "enum": [ "domain", "mcp", "mcp-app" ], "type": "string", "description": "Default: domain" } } }arguments 22 linesstart_audit unknown never probed
Start an account-private audit of up to ten selected pages from one website. Uses existing per-page scan quotas. Supply a stable requestKey for retries; poll get_audit and resume queued pages. Reads pages without changing them.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "urls", "requestKey" ], "properties": { "urls": { "type": "array", "items": { "type": "string" }, "maxItems": 10, "minItems": 1 }, "requestKey": { "type": "string", "pattern": "^[!-~]+$", "maxLength": 128, "minLength": 1 } } }arguments 24 linesget_audit unknown never probed
Read this account's per-page audit progress, partial failures, grouped check evidence and prioritized fixes. Plan gates apply. Repeated findings suggest a possible common cause, not a proven template error. No website-wide score or citation claim.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "auditId" ], "properties": { "auditId": { "type": "string" } } }arguments 12 linesresume_audit unknown never probed
Start only queued pages of this account's audit within the remaining quota and concurrency limit. Running and completed pages keep their scan IDs. Uncertain dispatches are not repeated automatically.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "auditId" ], "properties": { "auditId": { "type": "string" } } }arguments 12 linesrescan_audit unknown never probed
Create a follow-up audit for selected URLs from this account's original audit. Supply a stable requestKey for retries. Uses scan quota and compares the same pages as resolved, unchanged, new or not comparable; method changes prevent improvement claims.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "auditId", "requestKey" ], "properties": { "urls": { "type": "array", "items": { "type": "string" }, "maxItems": 10, "minItems": 1 }, "auditId": { "type": "string" }, "requestKey": { "type": "string", "pattern": "^[!-~]+$", "maxLength": 128, "minLength": 1 } } }arguments 27 linesget_account unknown never probed
Plan, limits, and scans used today/this month for the API key in the Authorization header. Requires a bearer key (bq_…) — create one at https://blockquote.io/account. Updates API key usage metadata.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": {} }arguments 5 linesremove_monitor unknown never probed
Remove one monitor by its id, from list_monitors. Weekly re-scans of that URL stop; the reports it already produced stay readable. Requires a bearer key (bq_…).
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "id" ], "properties": { "id": { "type": "string", "description": "The monitor id from list_monitors, e.g. m_1a2b…" } } }arguments 13 linesexplain_check unknown 59m ago
What a specific check measures, why it matters for AI citation, and the typical fix. Use the checkId from a report or from list_checks.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "checkId" ], "properties": { "checkId": { "type": "string" } } }arguments 12 linesget_agent_readiness unknown 59m ago
Read a stored agent-readiness report by id. view 'summary' (default) returns score, layers and failed checks; 'markdown' returns the whole report as one document with every check, its evidence and its fix; 'full' returns the report JSON.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "reportId" ], "properties": { "view": { "enum": [ "summary", "full", "markdown" ], "type": "string", "description": "Default: summary" }, "reportId": { "type": "string", "description": "The reportId returned by audit_agent_readiness" } } }arguments 22 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's idd7f05fbb87d5eb72.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/d7f05fbb87d5eb72/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/d7f05fbb87d5eb72?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.
Served from the same domain, which is what was measured. Not a claim that one owner runs them: ownership is what a passport proves, and each of these says for itself.