Skip to main content
Glama

Create an API key

create_api_key
Destructive

Creates an API key with permissions, an expiry date and a spending limit.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "create_api_key"
  }
}

Input Schema

NameRequiredDescriptionDefault
nameNokey
scopesNo
project_idNo
zero_retentionNo
expires_in_daysNo
spend_cap_centsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / zero_retention
      Added value: +{
      +  "default": false,
      +  "title": "Zero Retention",
      +  "type": "boolean"
      +}
  2. First observed

TDQS

C2.7/5.0
Behavior2/5

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

Annotations already declare destructiveHint=true and readOnlyHint=false, so the safety profile is covered, but the description adds almost nothing beyond them. With 0% schema description coverage it should disclose that the secret is likely shown only once, that mutations are irreversible (only revocation recovers), and critically what spend_cap_cents=0 means (unlimited vs. no spend) — none of that is stated.

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

Conciseness3/5

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

A single well-formed sentence with no wasted words, but it is under-specified rather than concise; the brevity costs information an agent needs for a 6-parameter mutation. Structure is fine, volume is too low.

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?

For a creation tool with no output schema, six parameters, and zero parameter documentation, the description leaves substantial gaps: scope semantics, project scoping, zero_retention behavior, spend cap interpretation, and what the response contains. Annotations partially compensate on the safety dimension only.

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

Parameters2/5

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

Schema description coverage is 0%, so the description carries the full burden, yet it only gestures at three of six parameters. It never names 'name', 'project_id', or 'zero_retention', does not explain the scope vocabulary, and leaves the ambiguous defaults (90-day expiry, spend cap 0, zero_retention=false) unexplained.

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?

States a specific verb+resource ('Creates an API key') and names three configurable dimensions (permissions, expiry, spending limit), which is enough to distinguish it from the many read/update/revoke siblings. It stops short of saying what kind of key (account- vs project-scoped) or what the caller gets back.

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

Usage Guidelines2/5

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

No guidance on when to create a key versus delegating access, inviting a member, or reusing an existing key, and no mention of prerequisites such as needing a project_id for project-scoped keys. The agent must infer the use case entirely from the tool name.

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.