Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Enclave402

REMOTE · ENCLAVE402.COM · SCANNED SEP 24

Pay-per-call agent tools: Polymarket signals, IPFS pinning, EIP-712 attestations. USDC on Base.

Available components

+3 this week 77 Trust /100
Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security80
Transport & Reachability100
Schema Quality & AI Usability74
  • AI-judged instruction clarity (excellent).Pass
  • Context-footprint check failed: tool/resource definitions use about 1672 tokens (~139/item across 12 items; 12 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management23
  • Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
  • Structured output schemas are declared (92% of tools); any adoption earns full credit.Pass
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 12 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 12 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

How do I install the Enclave402 MCP server?

Enclave402 is a hosted endpoint at https://enclave402.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · enclave402.com

# add to Claude Code
claude mcp add --transport http com-enclave402-enclave402 'https://enclave402.com/mcp'
// .cursor/mcp.json
{
  "mcpServers": {
    "com-enclave402-enclave402": {
      "url": "https://enclave402.com/mcp"
    }
  }
}
// .vscode/mcp.json
{
  "servers": {
    "com-enclave402-enclave402": {
      "type": "http",
      "url": "https://enclave402.com/mcp"
    }
  }
}
# ~/.codex/config.toml
[mcp_servers.com-enclave402-enclave402]
url = "https://enclave402.com/mcp"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-enclave402-enclave402": {
      "type": "remote",
      "url": "https://enclave402.com/mcp",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add com-enclave402-enclave402 --url 'https://enclave402.com/mcp' --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  com-enclave402-enclave402:
    url: "https://enclave402.com/mcp"
// ~/.netclaw/config/netclaw.json
{
  "McpServers": {
    "com-enclave402-enclave402": {
      "Transport": "http",
      "Url": "https://enclave402.com/mcp"
    }
  }
}
# add to Vellum
assistant mcp add com-enclave402-enclave402 -t streamable-http -u 'https://enclave402.com/mcp'
// mcp.json
{
  "mcpServers": {
    "com-enclave402-enclave402": {
      "type": "http",
      "url": "https://enclave402.com/mcp"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 24 Sept 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 23 Sept 26 +1
    • Tool “attest_agent” rewrote its description, which is the text the model reads security
    • Tool “census_export” rewrote its description, which is the text the model reads security
    • Tool “census_verdict” rewrote its description, which is the text the model reads security
    • Tool “compute_encode” rewrote its description, which is the text the model reads security
    • Tool “compute_hash” rewrote its description, which is the text the model reads security
    • Tool “compute_infer” rewrote its description, which is the text the model reads security
    • Tool “compute_search” rewrote its description, which is the text the model reads security
    • Tool “get_market_signal” rewrote its description, which is the text the model reads security
    • Tool “get_market_verdict” rewrote its description, which is the text the model reads security
    • Tool “pin_storage” rewrote its description, which is the text the model reads security
    • Tool “vet_seller” rewrote its description, which is the text the model reads security
    • Schema quality: good → excellent functional
  • 22 Sept 26 +1
    • New tool “census_export” functional
  • 21 Sept 26 0
    • Schema quality: 1176 → 1612 ▼ functional
    • Schema quality: excellent → good functional
    • New tool “census_verdict” functional
    • New tool “compute_infer” functional
    • New tool “compute_search” functional
  • 20 Sept 26 0
    • Schema quality: 925 → 1176 ▼ functional
    • Tool coverage: 83% → 88% ▲ functional
    • New tool “compute_encode” functional
    • New tool “compute_hash” functional
  • 18 Sept 26 0
    • Tool “get_market_signal” rewrote its description, which is the text the model reads security
    • Schema quality: 579 → 925 ▼ functional
    • Tool coverage: 75% → 83% ▲ functional
    • Stability: unverified → 0.03 ▲ functional
    • New tool “get_market_verdict” functional
    • New tool “vet_seller” functional
    • Tool “get_market_signal” changed its title: Live Polymarket prediction-market signal (prices, spread, 24h change, volume, liquidity). → Polymarket signal with derived edge: 1h/6h probability deltas, realized volatility and whale flow from the trade tape. cosmetic
  • 17 Sept 26 74

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 24 Sept 2026 · Probed https://enclave402.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=enclave402.com CN=YE2,O=Let's Encrypt,C=US 16 Sept 2026 15 Dec 2026 ECDSA 256 ECDSA-SHA384 6ff255c69a41fa36b55622c4bfe4409e6bd
SANs: enclave402.com, www.enclave402.com
CN=YE2,O=Let's Encrypt,C=US (CA) CN=Root YE,O=ISRG,C=US 3 Sept 2025 2 Sept 2028 ECDSA 384 ECDSA-SHA384 4df3b15dd6c0784c507cd37b58e6f115
CN=Root YE,O=ISRG,C=US (CA) CN=ISRG Root X2,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 ECDSA-SHA384 872165fc34b6e5fba8add5b3705fb53a
CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) CN=ISRG Root X1,O=Internet Security Research Group,C=US 13 May 2026 2 Sept 2032 ECDSA 384 SHA256-RSA 6c8f1dc727c7117f7baf853ac980f9cd

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of enclave402.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
enclave402.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=31536000; includeSubDomains; preload
content-security-policy default-src 'none'; frame-ancestors 'none'; base-uri 'none'
x-content-type-options nosniff
x-frame-options DENY
referrer-policy strict-origin-when-cross-origin
permissions-policy payment=(), geolocation=(), camera=(), microphone=()

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://enclave402.com/mcp Verified 200
http (plaintext) http://enclave402.com/mcp HTTPS enforced 301 https://enclave402.com/mcp
MCP tools · 12 exposed · ~1,672 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
attest_agent ~179

EIP-712 signed, timestamped attestation binding an agentId, the keccak256 digest of a declared state, and the paying wallet; attestor key at /transparency, verify offline with ethers.verifyTypedData. MUST be invoked when an agent needs third-party, non-repudiable proof that a state or decision existed at a point in time (audit trails, hand-offs, escrow). Do NOT use for hardware TEE, zk proofs or on-chain EAS. Settles $0.040 USDC via x402 on Base; no charge on failure.

NameTypeReqDescription
agentIdstringyesStable identifier or EVM address of the agent being attested.
statestring–Serialized state, decision, or payload hash to bind. Hashed with keccak256(utf8); the raw string is never stored.
NameTypeReqDescription
attestation––Attestation status
attestationId––keccak256 of the signature
attestor––Gateway attestor address (published at /transparency)
digest––EIP-712 typed-data hash that was signed
eip712––domain, types, primaryType and message needed to verify offline
enclaveRpc––Enclave verification endpoint when configured, else null
settled––true when an x402 payment settled for this response
signature––65-byte secp256k1 signature, hex
teeProvider––Hardware TEE provider when configured, else null
teeQuote––Hardware quote when a TEE is configured, else null
ts––Response timestamp, UNIX milliseconds
verify––One-line verification recipe

No examples provided.

census_export ~130

Whole-Bazaar seller census in one payload: every fresh verdict row (resource, payTo, verdict, score, schema, latency, checkedAt, per-row signature) plus a sha256 manifest and one EIP-712 attestation over it, so a router verifies the full dump offline. MUST be invoked when an agent needs the complete trust map for routing or analytics. Do NOT use for a single lookup (see /api/census/verdict). Settles $3.500 USDC; no charge on failure.

NameTypeReqDescription
includeStalestring–Include rows older than the verdict TTL.
NameTypeReqDescription
attestation––EIP-712 signature over generatedAt, sha256, count and counts by the published attestor; null when unconfigured
census––Sweep status: assessed count, cadence, last sweep.
count–––
counts–––
generatedAt–––
items–––
settled–––
sha256––Hex sha256 of JSON.stringify(items).
ts–––

No examples provided.

census_verdict ~199

Pre-spend check from the seller census: each Bazaar-indexed resource is re-probed periodically (liveness, 402-envelope compliance, declared output schema, latency, usage) and mapped to pay | caution | avoid with an EIP-712 signature a router checks offline. Query one resource, a payTo, or page the feed by verdict. MUST be invoked before dispatching to an unknown seller. Do NOT use to probe on demand (see /api/seller/vet). Settles $0.002 USDC; no charge on failure.

NameTypeReqDescription
limitinteger–Bulk feed page size.
offsetinteger–Bulk feed page offset.
payTostring–EVM payee address; returns every assessed resource paid to it.
resourcestring–Absolute https URL of one x402 resource.
verdictstring–Bulk feed filter (used when neither resource nor payTo is given).
NameTypeReqDescription
census––Sweep status: assessed count, cadence, last sweep.
items–––
mode–––
settled–––
total–––
ts–––

No examples provided.

compute_encode ~98

Encoding and decoding utility: base64 encode/decode, hex encode/decode, URL encode/decode, JWT decode (no verification), JSON stringify/parse. MUST be invoked when an agent needs format conversion. Do NOT use for cryptographic operations (use compute/hash). Settles $0.001 USDC; no charge on failure.

NameTypeReqDescription
inputstringyesData to encode/decode
operationstringyesOperation to perform
NameTypeReqDescription
inputLength–––
operation–––
result––Encoded/decoded output (string or object for jwt-decode/json-parse)
settled–––
ts–––

No examples provided.

compute_hash ~139

Deterministic hashing of arbitrary input: SHA-256, SHA-384, SHA-512, HMAC-SHA256, PBKDF2, scrypt. Returns hex digest. MUST be invoked when an agent needs a cryptographic hash or key derivation. Do NOT use for encryption or signing. Settles $0.001 USDC; no charge on failure.

NameTypeReqDescription
algorithmstringyesHash algorithm
encodingstring–Output encoding
inputstringyesData to hash (UTF-8 string)
keystring–Key for HMAC/PBKDF2/scrypt (required for keyed algorithms)
NameTypeReqDescription
algorithm–––
digest––Hash output in the requested encoding
encoding–––
inputLength–––
settled–––
ts–––

No examples provided.

compute_infer ~130

Cheap small-model text completion for agent sub-tasks: classify, extract, summarize, rewrite. MUST be invoked when an agent needs a short LLM answer without paying flagship rates. Prompt <=8000 chars, maxTokens <=1024, json:true forces a JSON object. Do NOT use for long-form generation or tool calling. Settles $0.003 USDC; no charge on failure.

NameTypeReqDescription
jsonstring–Force a JSON object response
maxTokensinteger–maxTokens
promptstringyesUser prompt
systemstring–Optional system instruction
NameTypeReqDescription
model–––
output–––
settled–––
ts–––
usage–––

No examples provided.

compute_search ~86

Web search returning ranked results with title, URL, description, and source domain. MUST be invoked when an agent needs current web information. Returns up to 10 results. Do NOT use for cached/static data lookups. Settles $0.005 USDC; no charge on failure.

NameTypeReqDescription
limitinteger–Max results to return
querystringyesSearch query
NameTypeReqDescription
count–––
query–––
results–––
settled–––
ts–––

No examples provided.

get_gateway_info ~69

FREE, no payment required: gateway facts before you pay — network, payee, attestor, live per-tool prices in USDC, readiness, public receipt ledger and transparency URLs. MUST be invoked before the first paid call from a new agent. Do NOT use for market data or attestation.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_market_signal ~174

Polymarket signal plus fields the free listing does not have: 1h and 6h probability deltas, 24h realized volatility, and whale flow from the trade tape (net YES notional, largest print, whale count, flow label). Plus prices, bid/ask, spread, 24h change, momentum, volume, liquidity. MUST be invoked when an agent needs where a market is MOVING, not just where it is. Do NOT use for spot prices or order execution. Settles $0.010 USDC on Base; no charge on failure.

NameTypeReqDescription
limitinteger–Number of top markets to return when slug is omitted.
slugstring–Optional Polymarket market slug for one specific market. Omit to receive the top markets by 24h volume.
NameTypeReqDescription
asOf––ISO-8601 timestamp the data was fetched
markets––Normalized market rows
query––Echo of the resolved query (slug, or top/orderBy)
settled––true when an x402 payment settled for this response (false on free-quota or dry-run)
source––Upstream data providers
ts––Response timestamp, UNIX milliseconds

No examples provided.

get_market_verdict ~142

Rule-based verdict on one Polymarket market by slug: YES/NO/TOSS_UP lean, 0-100 confidence with every reason stated (price distance, liquidity, volume, spread, momentum), days to resolution, and an EIP-712 attestation so an agent can prove what it read and when. Not a forecast model. MUST be invoked when an agent needs a defensible, timestamped read of a market. Do NOT use to discover markets (use market/signal). Settles $0.020 USDC; no charge on failure.

NameTypeReqDescription
slugstringyesPolymarket market slug (get one from market/signal).
NameTypeReqDescription
asOf–––
attestation––EIP-712 signature over slug, asOf, lean, confidence and impliedProbability by the published attestor; null when unconfigured
confidence––How much the reading can be trusted, per the stated rules
confidenceBand–––
daysToResolution–––
impliedProbability–––
lean––Where the crowd sits at the lean thresholds
market–––
method––The exact rules and thresholds used, so the verdict is reproducible
question–––
reasons––Every rule that fired and its effect on the verdict
settled–––
slug–––
ts–––

No examples provided.

pin_storage ~152

Store a JSON document (object or string, up to 8 KB) on IPFS through a managed pinning service and return its content identifier (CID v1) plus an HTTP gateway URL. MUST be invoked when an agent needs durable, content-addressed storage for memory, decisions, artifacts or metadata that other agents can fetch by CID. Do NOT send raw binary, files over 8 KB, or an existing CID to re-pin. Settles $0.008 USDC via x402 on Base; failed or unavailable pins are never charged.

NameTypeReqDescription
content–yesJSON object or string to store (serialized size up to 8 KB).
namestring–Optional human label stored with the pin.
NameTypeReqDescription
cid––IPFS CID of the stored content
gateway––Resolvable HTTP gateway URL for the CID
pinned––true when the provider accepted and pinned the content
provider––Pinning provider
settled––true when an x402 payment settled for this response
size––Pinned size in bytes as reported by the provider
status––Provider pin status (pinned)
ts––Response timestamp, UNIX milliseconds

No examples provided.

vet_seller ~174

Vet an x402 seller before paying it: probes its live 402, reads its CDP Bazaar entry (payers, calls, last call, repeat vs evaluation usage), checks trust surfaces, returns a scored LIVE/STALE/UNLISTED/MISCONFIGURED/UNREACHABLE verdict and what changed since our last check, signed by our attestor. MUST be invoked before a first payment to an unknown resource, or on a schedule to watch it. Do NOT use to pay it. Settles $0.010 USDC; no charge on failure.

NameTypeReqDescription
methodstring–HTTP method the resource expects; POST resources are probed with an empty JSON body.
resourcestringyesAbsolute https URL of the x402 resource to vet (the paid route itself, not the seller homepage).
NameTypeReqDescription
attestation––EIP-712 signature over resource, checkedAt, verdict, score, usagePattern and changes by the published attestor, verifiable offline; null when the attestor is unconfigured
bazaar––CDP Bazaar index entry for the resource: indexed, lastCalledAt, uniquePayers30d, totalCalls30d, callsPerPayer
challenge––What the target 402 actually said: status, x402Version, accepts[0], description length, WWW-Authenticate presence, networks offered
changes––Fields that differ from the previous verdict (verdict, score, usagePattern, findingCodes, priceUsdc, payTo, indexed, uniquePayers30d, totalCalls30d, lastCalledAt); empty when unchanged or first check
checkedAt––ISO-8601 time of the probe
findings––Every deduction, machine-coded and human-readable
method–––
previous––Summary of the last verdict this gateway issued for the same resource (checkedAt, verdict, score, usagePattern); null on first check. Call on a schedule and this is your watch.
resource––Normalized resource URL that was vetted
score––40 challenge shape + 40 Bazaar usage + 20 trust surfaces
settled––true when an x402 payment settled for this response
trust––Which of /.well-known/x402, /llms.txt, /.well-known/security.txt, /transparency the origin publishes
ts––Response timestamp, UNIX milliseconds
usagePattern––repeat = calls/payer at or above the repeat threshold; evaluation = buyers try once and leave
verdict––LIVE = payable, indexed, recently called. STALE = indexed but not called within VET_STALE_DAYS. UNLISTED = payable but never counted by the Bazaar. MISCONFIGURED = an x402 buyer cannot pay it as serv…

No examples provided.

Common questions

What is the Enclave402 MCP server?

Enclave402 is an MCP server listed in the public MCP registry as com.enclave402/enclave402. Pay-per-call agent tools: Polymarket signals, IPFS pinning, EIP-712 attestations. USDC on Base. This page covers its hosted endpoint (https://enclave402.com/mcp).

Is the Enclave402 MCP server safe to use?

Enclave402 scores 77 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the Enclave402 MCP server expose?

Enclave402 exposes 12 tools: get_market_signal, pin_storage, attest_agent, vet_seller, get_market_verdict, and 7 more. Their descriptions and schemas cost roughly 1,672 tokens of context every time the server is loaded.

Does the Enclave402 MCP server require authentication?

No. We connected to Enclave402 without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the Enclave402 MCP server still maintained?

Enclave402 is still listed as active in the MCP registry. We last reached this channel on 24 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.