Skip to main content
Glama
@proof-holdings/mcp-server

@proof-holdings/mcp-server

Official

trigger_verification

Starts a DNS or HTTP check to verify control of a pending domain after Proof API access is configured.

Instructions

Trigger a DNS/HTTP verification check for a pending domain verification.

ACCESS: needs a Proof account. Set PROOF_API_KEY and restart this server, then call this tool again. start_login does NOT open this tool.

Input Schema

NameRequiredDescriptionDefault
idYesVerification ID

Output Schema

NameRequiredDescriptionDefault
idNoMongoDB ObjectId
typeNoType of asset being verified. Not yet available — no channel of theirs can be completed, so a create or start answers 400 `channel_not_available`: social, wallet, account.
proofNoProof token after successful verification
statusNoCurrent status of the verification
channelNoChannel used for verification. Not yet available — a create or start naming one answers 400 `channel_not_available`: github, google, facebook, x, linkedin, instagram, youtube, tiktok, ethereum, solana, bitcoin, coinbase, kraken.
attemptsNo
challengeNoChallenge details for verification
created_atNo
identifierNoThe identifier being verified; absent for an identifier-free phone verification, whose number is learned only when the person completes it
updated_atNo
verified_atNo
max_attemptsNo
external_user_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.7.2
    • removedInput schema / additionalProperties
      Removed value: -false
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "$schema": "http://json-schema.org/draft-07/schema#",
      +  "additionalProperties": {},
      +  "properties": {
      +    "attempts": {},
      +    "challenge": {
      +      "description": "Challenge details for verification"
      +    },
      +    "channel": {
      +      "description": "Channel used for verification. Not yet available — a create or start naming one answers 400 `channel_not_available`: github, google, facebook, x, linkedin, instagram, youtube, tiktok, ethereum, solana, bitcoin, coinbase, kraken."
      +    },
      +    "created_at": {},
      +    "external_user_id": {},
      +    "id": {
      +      "description": "MongoDB ObjectId"
      +    },
      +    "identifier": {
      +      "description": "The identifier being verified; absent for an identifier-free phone verification, whose number is learned only when the person completes it"
      +    },
      +    "max_attempts": {},
      +    "proof": {
      +      "description": "Proof token after successful verification"
      +    },
      +    "status": {
      +      "description": "Current status of the verification"
      +    },
      +    "type": {
      +      "description": "Type of asset being verified. Not yet available — no channel of theirs can be completed, so a create or start answers 400 `channel_not_available`: social, wallet, account."
      +    },
      +    "updated_at": {},
      +    "verified_at": {}
      +  },
      +  "type": "object"
      +}
  2. First observedv1.1.0

TDQS

A3.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations say non-read-only and non-destructive but give no auth or lifecycle context; the description fills that gap by disclosing the account/API-key requirement, the restart step, and the non-obvious fact that start_login will not grant access. It does not say whether the triggered check is asynchronous, whether it can be re-triggered, or if it is rate-limited — but relative to the annotation baseline this adds substantive behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tight blocks: the action first, then a clearly labeled ACCESS constraint. No filler sentences, and the operational blocker is surfaced prominently rather than buried. Slightly heavy on the auth preamble relative to one line of purpose, but every sentence is actionable.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present the description need not explain return values, and the auth gate is well covered. What is missing for a complex verification workflow is the follow-up path — e.g. that the agent should poll check_domain_verification or wait_for_verification afterward — leaving the agent unsure what to do once the check is triggered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

There is a single required parameter with 100% schema description coverage ('Verification ID'), so the schema already carries the semantics. The description confirms the tool operates on a pending domain verification but adds no extra detail on where that ID comes from or what state the verification must be in.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description gives a concrete verb and resource — 'Trigger a DNS/HTTP verification check for a pending domain verification' — so the agent knows it kicks off a network check on an existing verification. It stops short of distinguishing this from near-identical siblings such as check_domain_verification, start_domain_verification, or verify_domain, which is the main clarity gap.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It supplies a real precondition (a Proof account with PROOF_API_KEY set, plus a server restart) and explicitly rules out start_login as a way to unlock it, which is useful when-to-use guidance. However, it never says when to prefer this over check_domain_verification or start_domain_verification, so sibling selection is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools