permitverdict-mcp

permitverdict-mcp

Provides tools for verifying crypto price events and building permit intelligence, with free and paid tools using the x402 protocol.

Category
Visit Server

README

permitverdict-mcp

MCP server for Permit Verdict. Nine tools, five of them free. The paid ones cost between one cent and two dollars per call and pay themselves, in USDC on Base, using the x402 protocol.

There is no API key, no account, and no signup. If you have a funded wallet, you have access.

What it sells

Settlement Oracle — did a crypto price event actually happen? Every verdict is resolved independently across Hyperliquid, Coinbase, Kraken and Binance. When the venues agree you get YES or NO at high confidence. When they disagree you get DISPUTED at low confidence, because a wick that prints on one exchange and not another is the single most common reason a market settles the wrong way, and a confident answer in that situation is worse than no answer.

Permit Intelligence — building-permit history, activity signals, and a decision-ready verdict for an address, drawn from official city open-data portals across seven US cities.

Install

{
  "mcpServers": {
    "permitverdict": {
      "command": "npx",
      "args": ["-y", "permitverdict-mcp"]
    }
  }
}

That works immediately, with no wallet. You get the five free tools.

To enable the paid tools, add a wallet:

{
  "mcpServers": {
    "permitverdict": {
      "command": "npx",
      "args": ["-y", "permitverdict-mcp"],
      "env": { "WALLET_PRIVATE_KEY": "0xYOUR_PRIVATE_KEY" }
    }
  }
}

Fund it with a few dollars of USDC on Base. You do not need any ETH — gas is sponsored by the x402 facilitator, so only USDC is ever spent.

Tools

Tool Price What it does
wallet_status free Whether a wallet is configured, and its address
list_settlement_assets free Assets, venues, operators and modes the oracle supports
check_venue_health free Which venues are answering right now
decode_decision_id free Is this attestation genuine, and what does it claim?
list_jurisdictions free Cities covered by permit intelligence
check_permit_activity free Whether an address has recent permit activity
get_crypto_spot $0.01 Cross-venue spot price, agreement and spread
verify_decision $0.02 Does an attested settlement still hold today?
resolve_price_event $0.05 Settlement verdict with per-venue evidence
attest_price_event $0.25 The verdict plus a signed decision_id and every candle behind it
get_permit_verdict $2.00 Full permit history and verdict for an address

Free tools first is deliberate. check_venue_health tells you how many independent venues are live before you spend anything, so you know whether the verdict you are about to buy will be corroborated by three sources or one.

Attestations, and why verifying one is cheap

attest_price_event returns a decision_id that is worth keeping. It is not a database key — everything needed to re-derive the answer is encoded inside it, and it is signed by the same wallet that received your payment. That has two consequences.

Anyone you show it to can check its origin for free with decode_decision_id. Forgery and after-the-fact editing are both detectable, and it costs nobody anything, because checking a signature is local arithmetic. You can also do it yourself with any EVM tooling: the signature covers the literal string formed by the id's first two dot-separated parts, and it should recover to 0xE11d7Ff8c7573b15F9F6F6d4961Afb4109d3ddA5.

What that free check does not tell you is whether the verdict is still correct. Exchanges revise candle history, and a venue that was unreachable when the record was issued may answer differently now. verify_decision re-resolves the same event against the venues today and returns CONFIRMED, CHANGED, or INDETERMINATE. It costs $0.02 rather than the $0.05 of a fresh resolution because you are not buying an answer, you are buying a check on someone else's — and if you are about to act on a settlement handed to you by a counterparty, that check is worth two cents.

CHANGED is the outcome that earns the fee.

touch vs close

resolve_price_event takes a mode, and getting it wrong is how settlements go bad.

touch counts any intrabar print, wicks included. close counts only candle closes. On the same window and the same threshold these routinely disagree. Most carefully written markets settle on closes; most casual bets mean touches. Pick the one your contract actually says.

Payment receipts

Every paid response carries a _payment block with the on-chain transaction that paid for it:

{
  "verdict": "YES",
  "confidence": "high",
  "_payment": {
    "paid": "$0.05",
    "payer": "0xFE5d…D108",
    "transaction": "0x88d3…7b1e",
    "explorer": "https://basescan.org/tx/0x88d3…7b1e",
    "network": "eip155:8453"
  }
}

If an agent spends money on a verdict it may later have to defend, it should be able to cite the transaction that bought it.

Security

Your private key stays on your machine. It is read once from the environment, used to derive a local signing account, and never logged or transmitted — the only thing that leaves is a signature over the specific payment the API asked for. This package makes no outbound requests other than to permitverdict.com and the x402 facilitator.

Use a dedicated wallet holding only what you intend to spend. Do not point this at a wallet that holds anything you would mind losing.

Development

npm install
npm test

The test suite starts the real binary and speaks MCP to it over stdio. That is on purpose: the failure mode worth catching is the one where every unit test passes and the process still cannot start.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured