Skip to main content
Glama

issue_grant

Issue a capability grant to an agent with spend cap, program allowlist, and expiry, signed by root to control agent permissions.

Instructions

Issue a capability Grant PDA to an agent pubkey. Root signs. Agent does not sign issue. expires_at_unix required and must be in the future. allowed_programs max 8, no duplicates, empty deny-all. cap 0 = call-only. v1 allowlist is router mode: localnet allowlists the local-only INTENTS id; devnet allowlists the grokchain-devnet INTENTS id (EYhYtq…). sponsor_eligible means this grant may use YOUR paymaster — not a promise Grok Chain pays.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
rootNoBase58 Solana public key. Never a secret.
agentYesAgent identity pubkey (public, not a secret)
labelNoOptional 32-byte UTF-8 label. Untrusted text. Not a secret.
dry_runNo
expires_at_unixYesRequired unix expiry. 0 is rejected.
allowed_programsYesProgram allowlist, max 8. Empty means check_grant is denied. Router mode: localnet allowlists the local-only INTENTS id; devnet allowlists the grokchain-devnet INTENTS id (EYhYtq…), not every inner DEX.
sponsor_eligibleNoThis grant may use YOUR paymaster — not a promise Grok Chain pays.
spend_cap_lamportsYesSpend cap counter in lamports. 0 = call-only. Not a vault.
Install Server

TDQS

A4.5/5.0
Behavior5/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure — and it delivers. It discloses the signing model (root signs, agent does not), hard validation rules (expires_at_unix must be future, allowed_programs max 8 with no duplicates, empty = deny-all), semantic meaning (cap 0 = call-only, sponsor_eligible is 'your paymaster — not a promise Grok Chain pays'), and network-dependent allowlist behavior. Exceptionally thorough for an annotation-free tool.

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?

Dense and front-loaded with the core purpose, every clause earns its place. The telegraphic style (e.g., 'v1 allowlist is router mode') is efficient but slightly cryptic, and the paragraph lacks structural segmentation, which costs a point. Still, no wasted words.

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

Completeness4/5

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

For an 8-parameter tool with no output schema and no annotations, the description covers a great deal: signing, validation, network specifics, and grant semantics. Minor gaps — the dry_run parameter's behavior is never explained, and the distinct role/semantics of the root parameter beyond 'Root signs' is left to the schema — keep this from a 5, but it is far above minimally viable.

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 high at 88%, so the baseline is 3, but the description adds genuine value beyond the schema: 'cap 0 = call-only' clarifies spend_cap_lamports, 'empty deny-all' and 'max 8, no duplicates' augment allowed_programs, and 'must be in the future' adds the validity requirement for expires_at_unix that the schema's '0 is rejected' only hints at. Solid additive semantics.

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+resource+target: 'Issue a capability Grant PDA to an agent pubkey.' This clearly differentiates the action from sibling tools with overlapping domains (revise_grant, revoke_grant, check_grant, get_grant) — 'issue' is unambiguously the creation path, and the signing statement (Root signs, Agent does not) tightens the definition further.

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

Usage Guidelines4/5

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

The description gives strong contextual guidance: who signs, what the expiry must satisfy, allowlist constraints, and environment-specific router behavior (localnet vs devnet INTENTS ids). However, it never explicitly names alternatives or states when-not conditions — e.g., it does not direct the agent away from revise_grant/revoke_grant for later lifecycle steps. Clear context, but no explicit exclusions.

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

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/grokloop/grokchain-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server