{"uid":"cap_PnGFRvwx3eXq5ITbPpZ9S","slug":"mcpdriftverdict-919d5ce4","name":"MCPDriftVerdict","description":"Seven bounded decision APIs for coding agents: evidence-linked GitHub due diligence and diagnostics plus deterministic MCP tool-catalog compatibility and security gates. Payment uses x402 v2 and Base USDC.","url":"https://bountyverdict-agent-production.mimirslab.workers.dev/api/mcp-drift","method":"POST","headers":{},"bodySchema":null,"responseSchema":{"type":"json","example":{"action":"ACCEPT_CURRENT","hashes":{"current_contract":"sha256:4f89f9c01a44ad6e96663d51bd957470acd36b27c524d9d15e2525ee94e127cc","current_snapshot":"sha256:fc3ad219f6b9bb68b3d9e96ab5920a90eb7c0d90be99a2aa509e69c7fad66820","baseline_contract":"sha256:e029e97109ad519fd93e6a30e07e5bb3f3a223803bf14147dac3ee539c2220bc","baseline_snapshot":"sha256:b536998673d7f19804f5717d8df56676da32dfc1689e81c44068412d794e51b9"},"service":"MCPDriftVerdict","verdict":"SAFE_ADDITIVE","service_reuse":"Call MCPDriftVerdict after every notifications/tools/list_changed, at agent startup when the current tools/list snapshot hash differs from the pinned baseline, and before accepting an MCP server upgrade. Reuse only for the exact baseline_snapshot hash, current_snapshot hash, and ruleset_version tuple.","ruleset_version":"2026-07-20.1","contract_version":"mcp-drift/1"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"registry","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_WkpurIlcSHE5UIulWaDIS","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":null,"unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Detects and verdicts drift between a current MCP tool-catalog snapshot and a pinned baseline, flagging security and compatibility regressions for coding agents.","exampleAgentPrompt":"Check whether my current MCP tools/list snapshot has drifted from my pinned baseline — I got a notifications/tools/list_changed event and want a SAFE_ADDITIVE or REJECT verdict before I accept the upgrade.","exampleUseCases":null,"resultDescription":"A JSON object containing a deterministic drift verdict (e.g. SAFE_ADDITIVE, ACCEPT_CURRENT), a recommended action, SHA-256 hashes of both the current and baseline tool-catalog snapshots and contracts, the ruleset version used, and instructions on when to reuse the cached result for the same hash tuple.","failureModes":["Mismatched or malformed snapshot hashes return a validation error","Unknown or outdated ruleset_version causes rejection","Payment failure via x402 v2 / Base USDC results in 402 response","Missing required fields (current or baseline snapshot) return 400","Snapshot content not publicly resolvable may yield INCONCLUSIVE verdict"],"whenToPreferThis":"Use MCPDriftVerdict when an AI coding agent needs a deterministic, evidence-linked security gate on MCP tool-catalog changes — specifically after receiving notifications/tools/list_changed, at agent startup when snapshot hashes differ from the pinned baseline, or before accepting any MCP server upgrade. Prefer this over generic diff tools when you need a cryptographically anchored verdict with a reuse key (baseline_snapshot hash + current_snapshot hash + ruleset_version tuple).","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T06:31:45.185Z","isFirstParty":false}