thoughtproof-mcp
OfficialThe ThoughtProof MCP server verifies AI-generated reasoning and claims using adversarial multi-model consensus (Grok, Gemini, DeepSeek, Sonnet), helping you decide whether to trust and act on AI outputs.
Verify claims and reasoning: Submit any decision or reasoning claim via
verify_claim/verify_reasoningto receive a verdict (ALLOW, HOLD, UNCERTAIN, or DISSENT), a confidence score, and up to 3 key objections explaining why a claim may be challengedDomain-specific verification: Tailor analysis to
financial,medical,legal,code, orgeneralcontexts for more accurate assessmentsRisk-adjusted analysis: Set a stake level (
low,medium,high,critical) to adjust confidence thresholds based on decision consequenceAdjust verification depth: Choose between fast (2 models), standard (4 models), or deep (5+ models) to balance speed and cost ($0.008–$0.08 per verification)
Check agent trust scores: Use
check_agent_scoreto look up composite trust scores for specific agents, optionally filtered by domainGuard against hallucinations: Use verdicts and objections to validate AI outputs before acting on them
Allows looking up agent trust scores on the ERC-8004 registry, an Ethereum-based autonomous agent registry.
thoughtproof-mcp
thoughtproof-mcp — local stdio. Hero tool verify_decision (DQL spend / Sentinel irreversible exit). execute is true only on ALLOW.
MCP server for ThoughtProof — pre-execution decision verification for AI agents.
Hero tool: verify_decision. It routes inside the tool to DQL (spend / checkout) or Sentinel (irreversible exit) and returns a fail-closed execute flag. execute is true only on a native ALLOW.
This package is a local stdio MCP server (Node 18+) for Desktop / CLI hosts such as Cursor, Claude Desktop, Windsurf, and Cline. It is not a remote HTTP MCP server. It is not a Grok Web/Mobile custom connector.
Get keys at https://app.thoughtproof.ai/pricing.
Unpublished work is documented in UNRELEASED.md.
Quick Start
{
"mcpServers": {
"thoughtproof": {
"command": "npx",
"args": ["-y", "thoughtproof-mcp@0.3.2"],
"env": {
"DQL_API_KEY": "dqlk_your_key_here"
}
}
}
}Install with npx -y thoughtproof-mcp@0.3.2. Works with Claude Desktop, Cursor, Windsurf, Cline, and other local stdio MCP clients.
Related MCP server: agentshield-mcp
Tools
verify_before_action / verify_decision (hero)
verify_before_action is an alias of verify_decision (identical schema + handler). Soft fail-closed: host must honor execute=false.
Pre-execution gate for a proposed action. Routing is inside the tool — not an agent quiz.
Parameter | Type | Default | Description |
| string | (required) | User's stated goal / instruction |
| string | (required) | What the agent is about to do |
| string | (required) | The agent's own plan / reasoning |
| string | (optional) | Extra evidence |
|
|
| Explicit surface, or auto-route |
Auto-route: spend / checkout / booking / purchase / payment / cart / Stripe / price / budget / cap → DQL. High-blast irreversible exit without that language (publish, delete, deploy, send-to-prod, memory write) → Sentinel. Unsure → DQL. Explicit mode wins. RV / PLV are not on this path.
Camera mandate: do not put the overshoot in proposed_action or reasoning (for example, do not write “price is above the cap”). The verifier has to find the mismatch.
Envelope (always this shape):
{
"verdict": "ALLOW",
"execute": true,
"objections": [],
"receipt_id": "dql_…",
"surface": "dql",
"axes": [],
"recommendation": "execute"
}execute is true only on ALLOW. REVIEW, UNCERTAIN, BLOCK, timeouts, HTTP 402/4xx/5xx, and missing keys return execute: false. Fail-closed is soft at the protocol layer — the tool does not hard-stop the host. Replan is a new call (new receipt).
verify_claim
Verify any claim or AI-generated reasoning via RV (POST /v1/check). Unchanged.
Parameter | Type | Default | Description |
| string | (required) | The text to verify |
|
|
| Risk level — higher stakes trigger deeper verification |
|
|
| Domain context for specialized verification |
|
|
| Verification depth |
check_agent_score
Look up an agent's composite trust score on the ERC-8004 registry.
Parameter | Type | Description |
| string | Agent ID to look up |
| string | Optional domain filter |
verify_trade
Optional pre-execution gate for trading agents (Sentinel → RV). Not the default verify_decision path. See VERIFY_TRADE.md.
Configuration
Environment Variable | Default | Description |
| (none) | DQL key ( |
| (none) | Optional. Required only when |
| (off) | Set to |
| (none) | Operator key for |
|
| RV API base URL ( |
A missing Sentinel key returns execute: false with “Sentinel key not configured” — it does not silently call DQL.
Development
git clone https://github.com/ThoughtProof/thoughtproof-mcp.git
cd thoughtproof-mcp
npm install
npm run build
npm test
npm run dev # Run with tsx (hot reload)
npm run inspect # Test with MCP InspectorFor local MCP clients, point command at node and args at dist/index.js after npm run build.
Related
ThoughtProof — Decision verification for AI agents
pot-cli — CLI for reasoning verification
ERC-8004 — Autonomous Agent Registry
License
MIT — ThoughtProof
Available Tools
1 toolverify_reasoningB
Verify a decision or reasoning claim using ThoughtProof adversarial multi-model critique. Returns a verdict (ALLOW/HOLD/UNCERTAIN/DISSENT), confidence score, and up to 3 key objections.
| Name | Required | Description | Default |
|---|---|---|---|
| claim | Yes | The decision or reasoning to verify | |
| stakeLevel | No | Stakes of the decision — affects confidence threshold | medium |
| domain | No | Domain context for the verification | general |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions the verification methodology ('ThoughtProof adversarial multi-model critique') and output details (verdict types, confidence score, objections), which adds useful context beyond basic functionality. However, it doesn't cover aspects like rate limits, authentication needs, or error handling, leaving gaps in behavioral understanding.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and front-loaded, stating the core purpose in the first clause. The second part efficiently lists the return values. There's no wasted text, but it could be slightly more structured (e.g., separating purpose from output details with a colon or bullet points) to enhance readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (3 parameters, no output schema, no annotations), the description is somewhat complete but has gaps. It explains the purpose and output format, which is helpful, but lacks usage guidelines and full behavioral context. Without an output schema, it should ideally detail return values more thoroughly, though it does list them briefly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already documents all parameters thoroughly. The description doesn't add any additional meaning or context for the parameters beyond what the schema provides. This meets the baseline score of 3 when the schema handles parameter documentation effectively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Verify a decision or reasoning claim using ThoughtProof adversarial multi-model critique.' It specifies the verb ('verify') and resource ('decision or reasoning claim'), and mentions the methodology. However, with no sibling tools, it doesn't need to differentiate from alternatives, so it doesn't reach the highest score of 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, prerequisites, or exclusions. It only states what the tool does, not the context for its application. This lack of usage instructions limits its helpfulness for an AI agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v0.1.0- First observed
verify_reasoning
TDQS
With only one tool, there is no possibility of ambiguity or overlap between tools. The tool 'verify_reasoning' has a clear, distinct purpose focused on adversarial critique of reasoning claims.
A single tool inherently has perfect naming consistency, as there are no other tools to compare it against. The name 'verify_reasoning' follows a clear verb_noun pattern and is descriptive.
One tool is too few for a server's typical scope, as it severely limits functionality and suggests an incomplete or overly narrow implementation. This is borderline for the 'too few' category, making it inappropriate for most practical agent use cases.
The server's domain appears to be reasoning verification, but with only one tool, there are significant gaps. For example, there are no tools to list, create, or manage reasoning claims, or to handle different aspects of the critique process, making the surface incomplete for the inferred purpose.
Maintenance
Related MCP Connectors
Trust gate for AI agents: multi-model adversarial consensus, signed and verifiable verdicts.
11Adversarial verification for AI agents - pay an independent skeptic per verdict in USDC via x402.
AI/LLM agent output audit MCP: policy eval, tamper-evident chain, AI safety, x402 USDC on Base.
Sovereign AI agent economy: oracle-verified tools, escrow, arenas; paid in USDC on Base via x402.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAdversarial multi-model reasoning verification for AI agents. Claude, Grok, and DeepSeek challenge each decision — returns ALLOW or HOLD with JWKS-signed attestation. x402-gated on Base.5MIT
- FlicenseAqualityNot gradedmaintenanceTrust infrastructure for AI agents on Base. DEX Spread Oracle (live Uniswap V3 prices), on-chain escrow, insurance pool, and collective knowledge base. 7 smart contracts. Pay-per-query via x402 micropayments in USDC.6-
- FlicenseAqualityCmaintenancePay-per-call tools for AI agents including trust checks, due diligence, market data, and human-verified approvals, settled in USDC on Base via the x402 protocol.16-
- FlicenseAqualityCmaintenanceAgent-Level Transaction Safety Oracle. Before an AI agent signs a blockchain transaction, it returns a SAFE/UNSAFE verdict with a SENTINEL Score (AAA-D) and risk flags. Pay-per-call $0.005 USDC via x402 on Base.1-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ThoughtProof/thoughtproof-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server