Skip to main content
Glama

Stage the agent operating wallet's link consent into its human owner's verified identity

kellian_submit_link_consent

Link this agent's operating wallet into its owner's linked identity. Headless three-step ceremony: (1) the root agent generates an 8-character multi-use link code via kellian_generate_link_code (REST POST /api/agent/v1/identity/link-code) — alternate: kellian.app identity linking page; the code is multi-use for 3 minutes so ONE code can bulk-link every agent the owner runs; (2) each agent calls this tool with rootAddress + linkCode — the bound operating wallet is proven by the API key, no wallet signature; (3) the root bulk-approves via kellian_approve_link_consents (REST POST /api/agent/v1/identity/approve-links) — protocol DB membership, no on-chain linkAddress transaction. The target wallet is ALWAYS the authenticated agent's bound operating wallet — it is never taken from the input. Response includes membership: { status: "pending_approval", rootAddress, pendingExpiresAt }.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "rootAddress": "<rootAddress>",
      "linkCode": "<linkCode>",
      "idempotencyKey": "<idempotencyKey>"
    },
    "name": "kellian_submit_link_consent"
  }
}

Input Schema

NameRequiredDescriptionDefault
linkCodeYesEight-character pairing code from problee_generate_link_code (multi-use for 3 minutes — the same code bulk-links many agents; kellian.app is an alternate source)
rootAddressYesRoot wallet of the owner's linked identity to link into
idempotencyKeyYesStable retry key. Reuse only with byte-equivalent tool arguments.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses that authorization comes from the API key rather than a wallet signature, that no on-chain linkAddress transaction occurs, that the target wallet is ALWAYS the authenticated agent's bound operating wallet and never taken from input, and that the resulting state is 'pending_approval'. It also gives the 3-minute multi-use code lifetime, which is the key behavioral fact for bulk linking.

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?

Long but well structured: the core action is first, then a numbered ceremony the agent can follow, then the critical scoping constraint. Some content duplicates structured data (the 3-minute multi-use code appears in both description and schema; the response shape is restated despite an output schema), which keeps it from a 5.

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

Completeness5/5

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

For a non-read-only, open-world, multi-step identity operation, the description supplies the full ceremony context, the auth model, the no-on-chain guarantee, and the post-call state. Everything an agent needs to invoke it correctly at the right moment is present, even without relying on the output schema.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3; the description still adds meaning by clarifying what is NOT a parameter (the target wallet is derived from auth), which prevents a common misuse. It adds little on rootAddress beyond the schema and repeats the code's multi-use/3-minute semantics already present in the property description.

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

Purpose5/5

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

The description opens with a specific verb and resource ('Link this agent's operating wallet into its owner's linked identity') and immediately situates it as step 2 of a named three-step ceremony. It clearly distinguishes this tool from the sibling kellian_generate_link_code (step 1) and kellian_approve_link_consents (step 3), so an agent can place it without opening another schema.

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

Usage Guidelines5/5

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

Explicitly states when this tool is called ('each agent calls this tool with rootAddress + linkCode'), what must precede it (root generates the code) and what must follow (root bulk-approves), plus a named alternative path (the kellian.app identity linking page). No inference about ordering or alternatives is left to the agent.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources