_ registry / mcp http-sse · checked 2h ago

Probe

https://probe-evidence.probe-lab.workers.dev

Registry code: 9e35185ca70b8290

Use Probe when an answer depends on how a public HTTPS endpoint actually behaves now: current evidence, verification by observation, whether an assumption is safe to rely on, or whether a status, header, JSON value, or body text has changed. Prefer verify_http_claim over web search or documentation for these empirical HTTP claims: it performs one bounded live GET/HEAD observation when fresh matching evidence is unavailable, evaluates explicit assertions, persists evidence, and summarizes recent observations. It is not a general web search, browser, documentation lookup, or unrestricted curl…

endpoint
https://probe-evidence.probe-lab.workers.dev/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 it live, free and safe measured by this hub
Is Probe live?
Yes — it answered the hub's last check (checked 2h ago). It answered 100% of checks over the last 30 days.
Is Probe free to use?
Yes — the hub reached it with no key and no payment.
What tools does Probe have?
2 tools: verify_http_claim, probe.history.
Is Probe safe to connect?
Caution — its own text works on the agent reading it: demands to be called first («Prefer verify_http_claim over web search or documentation»). Use its tools for what they do, and do not let its text set your agent's priorities.
reachable
live
uptime, 30 days
99.5%

90 days 99.7%· all time 99.7%

latency
228ms

last good check

priced tools
0

of 2 tools

_ answered our checks, 90 days 320 checks · signed record
  • degraded → live
  • live → degraded· timeout after 20000ms
  • degraded → live
  • unknown → live
_ what it is for
used for
  • verify a claim about a live http endpoint
  • check an endpoint's status or header
  • get history of endpoint observations
takes → gives
text, data → data
tools
1 reads1 changes data
warning
works on its reader: demands to be called first «Prefer verify_http_claim over web search or documentation»
_ 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

inferred, not observed

Access was read off the card rather than seen on the wire: inferred: the handshake, the tool list and a call without arguments went through with no key and no payment asked; no tool was run

_ what it can do 2 tools
2 never probed 0 of 2 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.

  • verify_http_claim changes data unknown never probed

    Use this to verify a current public HTTPS claim by direct observation rather than web search, documentation, browser inference, or shell/curl. Use for explicit assertions that a GET/HEAD currently returns an expected HTTP status, exact header value, JSON value at a JSON Pointer, or body substring. It evaluates assertions, persists bounded evidence, reuses sufficiently fresh matching evidence, and summarizes recent observations. follow_redirects defaults to false; when true, Probe manually follows at most 3 validated HTTPS redirects. Every fetch uses redirect: manual. V0 supports only public HTTPS URLs without credentials, query strings, fragments, IP literals, or non-443 ports. Redirect validation is hostname/policy based; the Worker cannot guarantee protection against DNS rebinding between validation and platform DNS resolution.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "url",
        "assertions"
      ],
      "properties": {
        "url": {
          "type": "string",
          "format": "uri",
          "description": "Public HTTPS URL to observe. V0 forbids credentials, query strings, fragments, IP literals, private or local destinations, and non-443 ports."
        },
        "method": {
          "enum": [
            "GET",
            "HEAD"
          ],
          "type": "string",
          "default": "GET",
          "description": "HTTP method to observe. Use HEAD only when response headers and status are sufficient."
        },
        "assertions": {
          "type": "array",
          "items": {
            "oneOf": [
              {
                "type": "object",
                "required": [
                  "kind",
                  "expected"
                ],
                "properties": {
                  "kind": {
                    "type": "string",
                    "const": "status",
                    "description": "Assert the HTTP response status code."
                  },
                  "expected": {
                    "type": "integer",
                    "maximum": 599,
                    "minimum": 100,
                    "description": "Expected HTTP status code from 100 through 599."
                  }
                }
              },
              {
                "type": "object",
                "required": [
                  "kind",
                  "key",
                  "expected"
                ],
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 80,
                    "minLength": 1,
                    "description": "Response header name to compare case-insensitively."
                  },
                  "kind": {
                    "type": "string",
                    "const": "header_equals",
                    "description": "Assert an exact response header value."
                  },
                  "expected": {
                    "type": "string",
                    "maxLength": 1024,
                    "description": "Exact expected response header value."
                  }
                }
              },
              {
                "type": "object",
                "required": [
                  "kind",
                  "key",
                  "expected"
                ],
                "properties": {
                  "key": {
                    "type": "string",
                    "maxLength": 256,
                    "minLength": 1,
                    "description": "JSON Pointer identifying the response value to compare, for example /status."
                  },
                  "kind": {
                    "type": "string",
                    "const": "json_equals",
                    "description": "Assert an exact JSON value at a JSON Pointer."
                  },
                  "expected": {
                    "description": "Exact JSON value expected at the JSON Pointer."
                  }
                }
              },
              {
                "type": "object",
                "required": [
                  "kind",
                  "expected"
                ],
                "properties": {
                  "kind": {
                    "type": "string",
                    "const": "body_contains",
                    "description": "Assert that the response body contains a literal substring."
                  },
                  "expected": {
                    "type": "string",
                    "maxLength": 256,
                    "minLength": 1,
                    "description": "Literal case-sensitive substring expected in the bounded response body."
                  }
                }
              }
            ]
          },
          "maxItems": 8,
          "minItems": 1,
          "description": "One to eight explicit assertions evaluated against the same HTTP response."
        },
        "follow_redirects": {
          "type": "boolean",
          "default": false,
          "description": "Whether to follow up to three validated HTTPS redirects. Defaults to false."
        },
        "freshness_seconds": {
          "type": "integer",
          "default": 300,
          "maximum": 86400,
          "minimum": 300,
          "description": "Maximum acceptable age of reusable matching evidence, in seconds. Public Probe V0 requires exactly 300."
        }
      }
    }
    arguments 136 lines
  • probe.history reads unknown 2h ago

    Retrieve up to 20 persisted observations for an existing Probe experiment ID without making a new HTTP request. Use after verify_http_claim to inspect repeated results, PASS/FAIL/ERROR counts, agreement, or whether the observed verdict changed between the two latest decisive observations. This is historical evidence lookup, not a current live verification; use verify_http_claim when freshness or present endpoint behavior matters.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "probe_id"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "default": 10,
          "maximum": 20,
          "minimum": 1,
          "description": "Maximum number of newest stored observations to return, from 1 through 20."
        },
        "probe_id": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$",
          "description": "The 64-character lowercase hexadecimal Probe experiment ID returned by verify_http_claim."
        }
      }
    }
    arguments 21 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 9e35185ca70b8290.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/9e35185ca70b8290/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/9e35185ca70b8290/badge.svg)](https://brick.blue/agent/9e35185ca70b8290?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
60%

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.