Skip to main content
Glama

Create API Key

create_api_key

Create an ActivitySmith API key for code that calls the ActivitySmith API, such as a CI job, server, or script. The secret is returned once. Store it directly in the user's secret manager or a git-ignored environment file, never commit it or print it in chat, and tell the user where you saved it. Keys keep working after this MCP connection is disconnected; the user can delete them in the ActivitySmith web app. Use scope_mode "channels" with channel_slugs only when the key should reach a subset of recipients. Requires the "Manage API keys" permission, which the user grants on the ActivitySmith approval screen.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesDescriptive name, such as "GitHub Actions deploy" or "Production server".
scope_modeNoall (default) lets the key deliver to every device in the account. channels limits it to the channels in channel_slugs or channel_public_ids.all
channel_slugsNoChannel slugs from list_channels, used when scope_mode is channels.
channel_public_idsNoChannel public IDs from list_channels, used when scope_mode is channels. Combined with channel_slugs.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
api_keyYes
messageYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false; the description adds the details that actually matter for a secret-issuing tool: the secret is returned exactly once, keys survive disconnection of this MCP session, revocation happens in the web app, and a specific permission ("Manage API keys") is required via an approval screen. It also states a safe-handling procedure (secret manager or git-ignored env file, never commit or print in chat).

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

Conciseness5/5

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

Four sentences, front-loaded with purpose, then secret handling, then lifecycle, then the scope caveat and permission. No sentence is padding — each carries a fact an agent would otherwise get wrong (printing the secret in chat, assuming the key dies with the session).

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?

An output schema exists, so return-shape explanation is not required. What remains — auth/permission requirements, one-time secret exposure, persistence beyond the session, and where to store the value — is all covered, which is exactly the risk surface for a credential-creation tool.

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 earns above baseline by linking scope_mode "channels" to channel_slugs with a decision rule (subset of recipients) that the schema's field-level text does not state as explicitly, and by surfacing the name/permission context an agent needs before filling in the parameters.

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 ("Create an ActivitySmith API key") and immediately scopes the audience for that key (CI job, server, script). This distinguishes it cleanly from siblings like rename_api_key, delete_api_key, and list_api_keys without needing the schema.

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?

It gives a concrete conditional rule for the risky parameter: "Use scope_mode 'channels' with channel_slugs only when the key should reach a subset of recipients." That is real when/when-not guidance. It stops short of naming sibling alternatives (e.g., list_api_keys for existing keys), so it falls just under a 5.

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