verify
Server Details
Cryptographic proof of wallet ownership in two steps, with no keys and no custody.
- Status
- Healthy
- Uptime
- 100.0% over 38 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools have completely distinct purposes: one requests a challenge, the other verifies a signed challenge. There is no overlap or ambiguity.
Both tool names follow a consistent verb_noun pattern (request_verification_challenge and verify_wallet_ownership) using underscores, which is clear and predictable.
Two tools exactly match the two-step verification workflow. The server is tightly scoped and every tool is necessary.
The tools cover the essential verification flow end-to-end. A minor gap is the lack of a tool to check verification status without re-verifying, but the verify tool returns session information, mitigating the issue.
Available Tools
2 toolsrequest_verification_challengeAInspect
Step 1 of wallet verification: get a fresh challenge for the user to sign.
chain: "evm" or "solana". Pass agent_id (your marketplace identity) so the proof is bound to you.
Present `challenge` to the user, have their wallet sign it (EVM personal_sign / Solana signMessage),
then call verify_wallet_ownership with the returned `nonce` + signature. The challenge is single-use
and expires (~10 min). Returns {challenge, nonce, expires_at}.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | evm | |
| address | Yes | ||
| agent_id | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Despite no annotations, the description discloses key behaviors: the challenge is single-use, expires (~10 min), and returns specific fields. It does not mention authentication requirements but covers essential behavioral traits.
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 (4 sentences), front-loaded with purpose, then parameters, then usage flow. Every sentence adds value without redundancy.
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 3 parameters, no output schema, no annotations, the description is remarkably complete: it explains input meaning, return value structure, workflow, and expiration behavior. No significant gaps.
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?
The description adds meaning to chain and agent_id beyond the schema (chain values, agent_id purpose). Address is implied but not explicitly defined; schema coverage is 0%, so description compensates well.
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: 'get a fresh challenge for the user to sign'. It identifies itself as 'Step 1 of wallet verification' and distinguishes from the sibling tool verify_wallet_ownership by outlining the workflow.
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 clear context for use: it is the first step, requires a chain and agent_id, and explains the subsequent call to verify_wallet_ownership. It does not explicitly state when not to use, but the context is adequate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
verify_wallet_ownershipAInspect
Step 2 of wallet verification: prove control by signing the challenge from step 1.
chain: "evm" (secp256k1, 0x-hex signature) or "solana" (ed25519, base58/base64/hex). `nonce` is
from request_verification_challenge; the signature must be over that exact challenge text. Pass the
same agent_id you requested the challenge with — on success the wallet is linked to you and you get a
session_token to pass to Tachyo's other agents (e.g. check_token_safety) to unlock connected/premium
tiers. Returns {verified, address, chain, linked, session_token?, session_expires?}. Does not move
funds or expose keys.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | evm | |
| nonce | Yes | ||
| address | Yes | ||
| agent_id | No | ||
| signature | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, description fully discloses behavior: signature formats per chain, no fund movement, no key exposure, return fields, and linking wallet/session token ownership. No contradictions.
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?
Concise, front-loaded with purpose, each sentence adds value. No redundancy.
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?
Despite missing output schema, description fully covers return values, prerequisites, and safety. All necessary context for a signature verification tool.
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 coverage is 0%, but description compensates by explaining chain options (evm vs solana signatures), nonce origin, agent_id must match previous request, and signature format. All 5 parameters get meaningful context.
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?
Clearly states 'Step 2 of wallet verification: prove control by signing the challenge from step 1.' The verb 'prove control' and resource 'wallet ownership' are specific, and it distinguishes from the sibling tool by referencing step 1.
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?
Explicitly explains when to use (after challenge from request_verification_challenge), chain options, nonce source, agent_id requirement, and what happens on success. Also states what it does not do ('Does not move funds or expose keys').
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.
2 tool updates
- First observed
request_verification_challenge - First observed
verify_wallet_ownership
Related MCP Connectors
- Hilt PayMeOAuthso.hilt
Wallet-approved SOL and Solana USDC payments to verified X handles, with zero custody.
One API, all things verified — control, delegation, human approval, anti-impersonation.
Protect and verify digital content with cryptographic signing and proof of ownership.
Verify crypto wallets and generate proof of funds letters for buying real estate with crypto.
Related MCP Servers
- AlicenseAqualityCmaintenanceCryptographic proof of consent for AI agents. Sign before you act. Policy engine enforces spending caps, action whitelists, and escalation rules. Independently verifiable by anyone.102Apache 2.0
- AlicenseAqualityAmaintenanceMCP server for on-chain attestation and wallet trust profiles across 31 EVM chains and Solana. Privacy-preserving boolean verification, ECDSA-signed responses, compliance templates.27426 npm1MIT
- AlicenseNot gradedqualityDmaintenanceSelf-custody AI agent wallets with passkeys, gasless transactions & programmable permissions (ERC-4337)4 npmMIT

proofcore-mcpofficial
AlicenseAqualityAmaintenanceZero-auth cryptographic notarization and PoE (Proof-of-Existence) layer on the TON Blockchain for AI outputs, smart contract audits, and agreements.841MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.