protogrid

Search / io.github.ogasurfproject-jpg/hs-verify-gate

MCP Verification Gate: check an MCP server or an A2A agent before you connect or delegate

R0· no sign-in

Check an A2A agent before you delegate, or an MCP server's measured conduct. Free, no key.

v0.4.20 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality86good
Trust93of 100
Uptime, 30 days96%
Latency p50231 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "hs-verify-gate": {
      "type": "http",
      "url": "https://gate.horizonshield.dev/mcp"
    }
  }
}
claude mcp add --transport http hs-verify-gate https://gate.horizonshield.dev/mcp
[mcp_servers.hs-verify-gate]
url = "https://gate.horizonshield.dev/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "hs-verify-gate": {
      "type": "remote",
      "url": "https://gate.horizonshield.dev/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "hs-verify-gate": {
      "type": "http",
      "url": "https://gate.horizonshield.dev/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=hs-verify-gate&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZ2F0ZS5ob3Jpem9uc2hpZWxkLmRldi9tY3AifQ%3D%3D"
}
{
  "servers": {
    "hs-verify-gate": {
      "type": "http",
      "url": "https://gate.horizonshield.dev/mcp"
    }
  }
}
{
  "mcpServers": {
    "hs-verify-gate": {
      "httpUrl": "https://gate.horizonshield.dev/mcp"
    }
  }
}
extensions:
  "hs-verify-gate":
    enabled: true
    name: "hs-verify-gate"
    type: streamable_http
    uri: "https://gate.horizonshield.dev/mcp"
    timeout: 300

Quality 86 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene100 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations6 of 6 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • pass
    tools.token_costabout 1,319 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability75 · weight 15
  • warn
    stability.changes8 tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

6 tools, about 1,319 tokens to load them all · tool set 4ce987f21161 · tools last changed 2026-10-08 · checked 2026-10-19 10:52 UTC

Tool changes

  • check_conformancechangeddescription, input schema, output schema
    before

    Measure a public MCP endpoint against five conditions: it speaks MCP, it publishes an A2A agent card, it declares who pays it, identical input returns identical output, and the verdict itself can be recomputed by anyone. Free, no key. Conformance and disclosure only; this says nothing about whether any figure the checked server returns is correct. By default no tool on the checked server is called, so determinism comes back as not measured rather than guessed. Set allow_tool_call true only for a server you control.

    after · 83% of words in common

    Measure a public MCP endpoint against five conditions: it speaks MCP, it publishes an A2A agent card, it declares who pays it, identical input returns identical output, and the verdict itself can be recomputed by anyone. Free, no key. Conformance and disclosure only; this says nothing about whether any figure the checked server returns is correct. By default no tool on the checked server is called, so determinism comes back as not measured rather than guessed. It is measured when the owner has published /.well-known/mcp-conduct.json with allow_tool_call true.

  • preflight_agentchangedoutput schema
  • is_verifiedchangedoutput schema
  • lookup_serverchangeddescription, output schema
    before

    Look up what this register already holds about an MCP endpoint: whether it is watched, how often it is re-measured, how many measurements exist, when the first and latest were taken, and the latest verdict with the record_sha256 you can recompute yourself. Reads stored measurements only. It contacts nothing and measures nothing, so use check_conformance for a fresh reading. An endpoint that is absent is reported as absent and that is NOT a negative verdict: it means nobody has measured it here, not that it failed.

    after · 95% of words in common

    Returns one record (not a list). Look up what this register already holds about an MCP endpoint: whether it is watched, how often it is re-measured, how many measurements exist, when the first and latest were taken, and the latest verdict with the record_sha256 you can recompute yourself. Reads stored measurements only. It contacts nothing and measures nothing, so use check_conformance for a fresh reading. An endpoint that is absent is reported as absent and that is NOT a negative verdict: it means nobody has measured it here, not that it failed.

  • verify_verdictchangedoutput schema
  • check_conformancechangedoutput schema
  • get_conditionschangedoutput schema
  • preflight_agentadded

    Call this before handing work to an A2A agent you have not used before. Fetches the agent's public card (https://<agent>/.well-known/agent-card.json, one request), reports whether it declares the A2A Conduct Extension, who it says pays it (the compensation declaration, as declared and not verified), whether the card carries a signature, the endpoints it asks to be measured on, and this register's stored reading for each (verified is true only when the latest scheduled measurement passed; null otherwise, never false), plus where to file your own witness walk. Measures nothing new and returns counts and pointers, never a score. An agent that does not declare the extension is reported as such, which is not a negative verdict.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 93 / 100

duplicate-repo
provenance90
liveness99
freshness100
hygiene80

+repository +namespace-matches-repo +website +reachable +uptime-96% +updated-21d-ago -duplicate-repo(9 names)

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://gate.horizonshield.dev/mcp streamable-httpnoneyes96%231 ms2025-11-252026-10-19

Tools (6)

check_conformanceread-onlyMeasure a public MCP endpoint against five conditions: it speaks MCP, it publishes an A2A agent card, it declares who pays it, identical input returns identical output, and the verdict itself can be recomputed by anyone. Free, no key. Conformance and disclosure only; this says nothing about whether any figure the checked server returns is correct. By default no tool on the checked server is called, so determinism comes back as not measured rather than guessed. It is measured when the owner has published /.well-known/mcp-conduct.json with allow_tool_call true.
get_conditionsread-onlyReturn the five conditions this gate measures, what it explicitly does not verify, and the tier definitions. Takes no arguments and returns identical output every time. Read this before running a check so you know what a verdict does and does not claim.
is_verifiedread-onlyA single machine-first answer for an agent deciding whether to trust an MCP endpoint BEFORE it connects. Returns verified (true only when the latest scheduled measurement passed every measured condition; null otherwise, never false), a state enum saying which case it is, measured_at, and a record_sha256 with a recompute_url so you can check the verdict without trusting this gate. Reads the stored register only: it contacts nothing and measures nothing. Absent and pending are reported honestly and are NOT negative verdicts. For a fresh measurement rather than the stored one, use check_conformance.
lookup_serverread-onlyReturns one record (not a list). Look up what this register already holds about an MCP endpoint: whether it is watched, how often it is re-measured, how many measurements exist, when the first and latest were taken, and the latest verdict with the record_sha256 you can recompute yourself. Reads stored measurements only. It contacts nothing and measures nothing, so use check_conformance for a fresh reading. An endpoint that is absent is reported as absent and that is NOT a negative verdict: it means nobody has measured it here, not that it failed.
preflight_agentread-onlyCall this before handing work to an A2A agent you have not used before. Fetches the agent's public card (https://<agent>/.well-known/agent-card.json, one request), reports whether it declares the A2A Conduct Extension, who it says pays it (the compensation declaration, as declared and not verified), whether the card carries a signature, the endpoints it asks to be measured on, and this register's stored reading for each (verified is true only when the latest scheduled measurement passed; null otherwise, never false), plus where to file your own witness walk. Measures nothing new and returns counts and pointers, never a score. An agent that does not declare the extension is reported as such, which is not a negative verdict.
verify_verdictread-onlyTake a verdict this gate issued and recompute its record_sha256 independently. Removes record_sha256 and recompute_note, serialises the remainder in key order, and hashes it. Returns whether the verdict was altered after it was issued. You do not have to trust the party that issued the verdict, including this one.

Schemas: list_tools.

Also listed as

8 other active names share this repository: io.github.ogasurfproject-jpg/construction-cost-data, io.github.ogasurfproject-jpg/horizon-shield, io.github.ogasurfproject-jpg/horizon-shield-webmcp, io.github.ogasurfproject-jpg/hs-hearing, io.github.ogasurfproject-jpg/hs-mcp-observatory, io.github.ogasurfproject-jpg/hs-partner-001-mcp, io.github.ogasurfproject-jpg/hs-partner-002-mcp, io.github.ogasurfproject-jpg/jidec

Similar MCP servers

More from io.github.ogasurfproject-jpg

And 3 more from this publisher.

Official server.json
{
  "name": "io.github.ogasurfproject-jpg/hs-verify-gate",
  "icons": [
    {
      "src": "https://raw.githubusercontent.com/ogasurfproject-jpg/horizon-shield/main/workers/hs-verify-gate/icon.png",
      "sizes": [
        "512x512"
      ],
      "mimeType": "image/png"
    }
  ],
  "title": "MCP Verification Gate: check an MCP server or an A2A agent before you connect or delegate",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://gate.horizonshield.dev/mcp",
      "type": "streamable-http"
    }
  ],
  "version": "0.4.20",
  "repository": {
    "url": "https://github.com/ogasurfproject-jpg/horizon-shield",
    "source": "github",
    "subfolder": "workers/hs-verify-gate"
  },
  "websiteUrl": "https://shield.the-horizons-innovation.com/verify-directory/",
  "description": "Check an A2A agent before you delegate, or an MCP server's measured conduct. Free, no key."
}