Koskamo

ProofCheck MCP

ProofCheck is a free, read-only verifier for x402 signed offers and receipts that validates signatures and checks for evidence binding the signing key to the service via did:web, DNS, or ERC-8004. It provides verdicts on authorization strength and supports remote MCP tools for verification tasks without requiring API keys or performing payments.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

ProofCheck MCP logo, by somethingCommunity listingStreamable HTTPNo sign-inEndpoint checked 2026-11-01Published by something
MCP endpoint (Streamable HTTP)
https://proofcheck.something-agent.workers.dev/mcp
Vendor documentation

What you can do with it

  • Verify x402 signed offers and receipts
  • Check if a signing key is authorized for a service
  • Preflight check x402 endpoints
  • Lookup ERC-8004 agent identity

Source and maintenance

Community listingRegistry 0.1.0
Maintenance checked

Protocol and capabilities

Server
proofcheck 0.1.4
MCP protocol
2025-06-18
Tools
5 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Free, read-only verification of x402 signed offers and receipts, with evidence on whether the signing key is authorized for the service. Never pays or signs.

Tools

5 advertised

verify_offer
Advertised by the server during the last successful anonymous check.

Verify an x402 signed offer (EIP-712 or JWS): signature, expiry, match to accepts[], and signer-authorization evidence (payTo, did:web, DNS _controllers, ERC-8004). Free.

verify_offer input schema
{
  "type": "object",
  "required": [
    "offer"
  ],
  "properties": {
    "offer": {
      "type": "object",
      "description": "The offer object: {format, payload?, signature, acceptIndex?}"
    },
    "accepts": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "Optional accepts[] from the live 402 to match against"
    },
    "resource_url": {
      "type": "string"
    },
    "trusted_pay_to": {
      "type": "array",
      "items": {
        "type": "string"
      }
    }
  }
}
verify_receipt
Advertised by the server during the last successful anonymous check.

Verify an x402 signed receipt (EIP-712 or JWS) returned in the settlement response: signature, freshness, payer/resource/transaction match, signer-authorization evidence. Free.

verify_receipt input schema
{
  "type": "object",
  "required": [
    "receipt"
  ],
  "properties": {
    "payer": {
      "type": "string"
    },
    "network": {
      "type": "string"
    },
    "receipt": {
      "type": "object"
    },
    "transaction": {
      "type": "string"
    },
    "resource_url": {
      "type": "string"
    },
    "trusted_pay_to": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "max_age_seconds": {
      "type": "number"
    }
  }
}
verify_payment_required
Advertised by the server during the last successful anonymous check.

Verify every signed offer inside a PaymentRequired object (pass the decoded JSON, or the raw base64 PAYMENT-REQUIRED header). Free.

verify_payment_required input schema
{
  "type": "object",
  "required": [
    "payment_required"
  ],
  "properties": {
    "resource_url": {
      "type": "string"
    },
    "payment_required": {
      "description": "Object or base64/JSON string"
    }
  }
}
preflight_x402_endpoint
Advertised by the server during the last successful anonymous check.

Unpaid preflight of an x402 URL: fetch its 402, summarise accepts[]/extensions, verify any signed offers and report who can vouch for the signer. Never pays. Free.

preflight_x402_endpoint input schema
{
  "type": "object",
  "required": [
    "url"
  ],
  "properties": {
    "url": {
      "type": "string"
    },
    "method": {
      "enum": [
        "GET",
        "POST"
      ],
      "type": "string"
    }
  }
}
lookup_erc8004_agent
Advertised by the server during the last successful anonymous check.

Read-only ERC-8004 identity lookup (owner, agentWallet, registration file, endpoint-domain verification) on Ethereum, Base, Optimism, Arbitrum, Polygon, BNB, Avalanche, Gnosis, Celo, Linea or Scroll.

lookup_erc8004_agent input schema
{
  "type": "object",
  "required": [
    "chain_id",
    "agent_id"
  ],
  "properties": {
    "agent_id": {
      "type": "string"
    },
    "chain_id": {
      "type": "integer"
    }
  }
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
211 ms
95th percentile latency
211 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 211 ms · metadata changed · 5 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http proofcheck-mcp https://proofcheck.something-agent.workers.dev/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add proofcheck-mcp --url https://proofcheck.something-agent.workers.dev/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable proofcheck-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "proofcheck-mcp": {
      "url": "https://proofcheck.something-agent.workers.dev/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "proofcheck-mcp": {
      "type": "streamableHttp",
      "url": "https://proofcheck.something-agent.workers.dev/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start proofcheck-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "proofcheck-mcp": {
      "type": "http",
      "url": "https://proofcheck.something-agent.workers.dev/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http proofcheck-mcp https://proofcheck.something-agent.workers.dev/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "proofcheck-mcp": {
      "url": "https://proofcheck.something-agent.workers.dev/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "proofcheck-mcp": {
      "serverUrl": "https://proofcheck.something-agent.workers.dev/mcp"
    }
  }
}

Let your agent find its tools

Find servers like ProofCheck MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.