_ registry / mcp streamable-http · checked 14m ago

aeogeo-mcp

https://mcp.aeogeo.site

Registry code: 6d5b0525aa580108

api record

The scanner runs deterministic AI-search hygiene checks plus an evidence-graded rulebook. A grade or a pass is not a citation. Shipped today: 30 automated checks on L0–L3 and 167 rules in the rulebook (ruleset v26). This server never generates content: draft with your own BYOK LLM, then lint, scan, and fetch rules here. A scanner grade covers only applicable automated checks; semantic truth, source existence, factual scrutiny, author credibility, and contextual applicability are the host agent's responsibility (judge: agent). Audit protocol (required): A scan is step 1 of an audit, not the…

endpoint
https://mcp.aeogeo.site
protocol
streamable-http ·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 it live, free and safe measured by this hub
Is aeogeo-mcp live?
Yes — it answered the hub's last check (checked 14m ago). It answered 100% of checks over the last 30 days.
Is aeogeo-mcp free to use?
Yes — the hub reached it with no key and no payment.
What tools does aeogeo-mcp have?
6 tools: get_hook_snippet, scan_url, export_report, plan_audit, fetch_sample_rules, list_categories.
Is aeogeo-mcp 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.
reachable
live
uptime, 30 days
100%

90 days 100%· all time 100%

latency
212ms

last good check

priced tools
0

of 6 tools

_ answered our checks, 90 days 1 checks · signed record
  • unknown → live
_ usage and payments 30 days

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.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 6 tools
2 open 4 never probed 2 of 6 classified

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.

  • fetch_sample_rules open 14m ago

    Fetch a stable teaser sample of up to 20 public rules (no evidence or remediation). Optionally filter by category. Use when: You have no API key and need to see what a public rule looks like. Avoid when: You have a key and need the full rule. Use fetch_rules or search_rules. Do not claim: A teaser has no remediation. It is not enough to apply the rule. Verify: This is a read. Nothing on the page changes until you edit and scan or lint.

    mcp-tool

    {
      "type": "object",
      "properties": {
        "category": {
          "type": "string",
          "description": "Optional category name from list_categories."
        }
      },
      "additionalProperties": false
    }
    arguments 10 lines
  • list_categories open 14m ago

    List the rulebook categories with the number of active rules in each. Use when: You need a category name before reading rules. Avoid when: You are grading a page. Use scan_url or a lint tool. Do not claim: A category count is not a coverage score for any site. Verify: Pass a name from this list to fetch_sample_rules, or to fetch_rules when you have a key.

    mcp-tool

    {
      "type": "object",
      "properties": {},
      "additionalProperties": false
    }
    arguments 5 lines
  • get_hook_snippet unknown 14m ago

    Return a ready-to-paste snippet that hooks this rulebook into your agent: AGENTS.md instructions, Cursor rules, or a Claude Code skill. Use when: You are onboarding a repo and need the install text for that client. Avoid when: The snippet is already installed and you are checking a page. Do not claim: Installing the snippet does not scan the site. Verify: Call tools/list. A free snippet names only free tools; a keyed snippet names the lint chain.

    mcp-tool

    {
      "type": "object",
      "required": [
        "client"
      ],
      "properties": {
        "client": {
          "enum": [
            "agents_md",
            "cursor",
            "claude"
          ],
          "type": "string",
          "description": "Target client: agents_md, cursor, or claude."
        }
      },
      "additionalProperties": false
    }
    arguments 18 lines
  • scan_url unknown never probed

    Run this on your own domain first: run the AI-search hygiene checks on a public URL. A grade is not a citation and does not measure AI mentions. Free callers get per-group grades plus every failed fundamental (readiness levels L0-L3) with how to fix it; Pro/Team callers also get rule IDs, severity and evidence for every check, plus a work list. Do the highest weight first. propose is always true: draft the change, a person applies it. Free results may be cached for up to an hour; keyed scans always fetch the page fresh. Batched callers pass detail=failures to drop passing checks. A page whose robots.txt disallows it for aeogeo-scanner is not fetched (blocked_url). A scan is step 1 of an audit, not the audit. Before you report on a page: (1) fetch the rules behind every failed check and every judge: agent check with fetch_rules or search_rules; (2) read the page's actual copy and judge it yourself against those rules (claims supported, sources real, answers the query, fits the page genre, false positives); (3) report engine defects, agent semantic findings and evidence confidence separately. Say plainly if you skipped the semantic pass. Use when: The page is already public and you want the bytes a crawler receives. Avoid when: The draft is only local. Use lint_html for HTML, lint_text for markdown, or audit_schema for JSON-LD. content_type is an argument on those tools and on scan_url, not a separate tool. Do not claim: A grade or a pass is not a citation. The check says the page matches the rulebook. Verify: Deploy the edit, then call scan_url again. A keyed scan fetches fresh. judge: engine — trust the pass/fail from the deterministic check (access, rendering, and mechanical structure). judge: agent — your agent re-reads the rule text and decides; the label comes from the deterministic judgeForCheck mapping, not an LLM on our side.

    mcp-tool

    {
      "type": "object",
      "required": [
        "url"
      ],
      "properties": {
        "url": {
          "type": "string",
          "description": "Absolute public http(s) URL to scan."
        },
        "detail": {
          "enum": [
            "full",
            "failures"
          ],
          "type": "string",
          "description": "Keyed callers only; a free scan already lists failures alone and ignores it. full (default): every check. failures: only failed and skipped checks plus the page and group grades, grade_basis and the do-not-claim guidance — use it for batched calls or when a full response would be truncated."
        },
        "content_type": {
          "enum": [
            "blog",
            "landing",
            "product",
            "faq",
            "docs",
            "general"
          ],
          "type": "string",
          "description": "Optional. What the page is, for pages that declare no schema.org @type or og:type. Without it the scanner infers the type and, when it cannot, skips the type-specific checks with a reason."
        }
      },
      "additionalProperties": false
    }
    arguments 33 lines
  • export_report unknown never probed

    Create a private, shareable static report link for 1-2 public URLs. The report is rendered from the same scan output as scan_url — free callers get the aggregate report, Pro/Team callers get the detailed one — and the link works in any browser without an API key. Compare mode puts two URLs side by side; keyed reports add a per-rule delta. Use when: You want a link to paste into Slack, docs, email, or a pull request so a person (or link-preview bot) can read the scan without the API key. Avoid when: You need the raw scan result right now. Use scan_url and keep the JSON in context. Do not claim: A report is a snapshot of one scan — not a citation and not a live measurement. Verify: Open the returned https://aeogeo.site/r/<id> URL, or append ?format=md or ?format=json for other export formats. expires_at says when the link stops working.

    mcp-tool

    {
      "type": "object",
      "required": [
        "urls"
      ],
      "properties": {
        "mode": {
          "enum": [
            "single",
            "compare"
          ],
          "type": "string",
          "description": "single (default for one URL) or compare (two URLs, side by side)."
        },
        "urls": {
          "type": "array",
          "items": {
            "type": "string",
            "description": "Absolute public http(s) URL to report on."
          },
          "maxItems": 2,
          "minItems": 1,
          "description": "One URL for a single report, or two URLs for compare mode."
        },
        "expires_in_days": {
          "type": "integer",
          "maximum": 90,
          "minimum": 1,
          "description": "How long the link works, in days. Default: 30 for a Pro/Team report (it shows paid detail to anyone with the link), 90 for a free one. The owner can revoke a Pro/Team link earlier at https://mcp.aeogeo.site/account."
        }
      },
      "additionalProperties": false
    }
    arguments 33 lines
  • plan_audit unknown never probed

    Start here for any audit or research task. Give your goal, the target and your limits; get back an ordered list of aeogeo tool calls with the quota each costs, which steps are semantic (judge: agent), what was deferred to fit your budget, your tier's daily limits, and the semantic-review rubric for the page type. Deterministic: no inference, no fetch, same input gives the same plan. The semantic review and report steps are never dropped to fit a budget. Use when: You are about to audit a page, a draft or a site, or answer a research question, and want the right calls for your goal, effort and remaining quota. Avoid when: You already know the single tool you need, such as scan_url on one URL. Do not claim: A plan is not a finding. Nothing was scanned or evaluated. Verify: Run the steps in order; the semantic review step is yours to do.

    mcp-tool

    {
      "type": "object",
      "required": [
        "goal"
      ],
      "properties": {
        "goal": {
          "enum": [
            "fix_errors",
            "pre_publish",
            "citation_readiness",
            "site_audit",
            "research"
          ],
          "type": "string",
          "description": "fix_errors: engine defects first, cheapest path. pre_publish: lint a draft, then scan after deploy. citation_readiness: adds evidence and changelog lookups. site_audit: whole site, sampled semantic review. research: rulebook questions, no scan."
        },
        "budget": {
          "type": "object",
          "properties": {
            "calls": {
              "type": "integer",
              "minimum": 0
            },
            "pages": {
              "type": "integer",
              "minimum": 0
            },
            "rules": {
              "type": "integer",
              "minimum": 0
            }
          },
          "description": "Optional limits. calls: tool calls you will spend. rules: rules you can still draw today. pages: site-scan pages left today.",
          "additionalProperties": false
        },
        "effort": {
          "enum": [
            "quick",
            "standard",
            "thorough"
          ],
          "type": "string",
          "description": "quick (default): fewest calls. standard: two rule lookups. thorough: three, plus insights."
        },
        "page_count": {
          "type": "integer",
          "minimum": 1,
          "description": "Pages on the site, when known; sizes the scan_site step."
        },
        "target_kind": {
          "enum": [
            "url",
            "site",
            "html",
            "text",
            "jsonld",
            "none"
          ],
          "type": "string",
          "description": "What is being audited: a live url, a whole site, draft html, draft text, a json-ld block, or none (research)."
        },
        "content_type": {
          "enum": [
            "blog",
            "landing",
            "product",
            "faq",
            "docs",
            "general"
          ],
          "type": "string",
          "description": "Content type used to select applicable checks."
        }
      },
      "additionalProperties": false
    }
    arguments 77 lines
_ try it through the hub, ceiling 0

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.

_ is this your agent? claim it: badge, payouts, history

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.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. 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.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 6d5b0525aa580108.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/6d5b0525aa580108/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/6d5b0525aa580108/badge.svg)](https://brick.blue/agent/6d5b0525aa580108?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.

_ how we know
card completeness
100%

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.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
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.