Skip to main content
Glama

api_keys_create

Creates an API key. Optional IP restrictions can be configured to limit access.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
callsNoAccess call records and active calls, and control live call actions such as starting, answering, ending, audio playback, DTMF, streaming, and transcription requests.
labelNoAPI key label.
trunksNoView, create, update, and delete SIP trunks and their settings.
two_faNoView 2FA service details and verification logs, trigger OTPs by voice or SMS, and validate verification codes.
accountNoView and update account profile information and timezone.
billingNoAccess invoices, balance, payment methods, usage reports, and billing settings, including payment method updates.
numbersNoView, buy, release, and configure phone numbers, browse inventory, and manage the cart.
messagesNoAccess message history and Sender IDs, send messages, manage opt-outs, and create or delete Sender IDs.
webhooksNoList, create, and delete webhooks.
campaignsNoView campaign analytics and Sender ID or Brand status, schedule bulk voice or SMS campaigns, register Brands, and create short links.
is_activeNoIndicates whether the API key should be activated upon creation.
validatorNoView number validation results and trigger single or bulk validation or HLR lookup requests.
embeddableNoManage widget tokens, including listing, viewing, creating, updating, and deleting them.
recordingsNoList, download, and delete call recordings.
subaccountsNoManage subaccounts: list and view them, create, update, and suspend them.
permitted_ipsNoList of permitted IP addresses for this API key. Each must be a valid IPv4 address. Required when `is_restriction` is true.
is_restrictionNoIndicates whether to restrict API key access by IP address. When enabled, only requests from IP addresses listed in `permitted_ips` are allowed.
is_scopes_enabledNoWhen `true`, scope fields below are enforced. When `false` (default), the key has full access. Omitted scope fields default to `{ allow: none }`, so with `is_scopes_enabled: true` and no scopes set the key has no access.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesAPI key ID.
callsYesAccess call records and active calls, and control live call actions such as starting, answering, ending, audio playback, DTMF, streaming, and transcription requests.
labelYesAPI key label.
valueYesAPI key value.
trunksYesView, create, update, and delete SIP trunks and their settings.
two_faYesView 2FA service details and verification logs, trigger OTPs by voice or SMS, and validate verification codes.
accountYesView and update account profile information and timezone.
billingYesAccess invoices, balance, payment methods, usage reports, and billing settings, including payment method updates.
numbersYesView, buy, release, and configure phone numbers, browse inventory, and manage the cart.
messagesYesAccess message history and Sender IDs, send messages, manage opt-outs, and create or delete Sender IDs.
webhooksYesList, create, and delete webhooks.
campaignsYesView campaign analytics and Sender ID or Brand status, schedule bulk voice or SMS campaigns, register Brands, and create short links.
is_activeYesIndicates whether the API key is active.
validatorYesView number validation results and trigger single or bulk validation or HLR lookup requests.
created_atYesCreation date and time in ISO 8601 format.
embeddableYesManage widget tokens, including listing, viewing, creating, updating, and deleting them.
recordingsYesList, download, and delete call recordings.
subaccountsYesManage subaccounts: list and view them, create, update, and suspend them.
last_used_atYesTimestamp of the most recent authenticated request made with this key.
permitted_ipsYesList of permitted IP addresses. If `is_restriction` is false, an empty list means no IP restrictions. If `is_restriction` is true, an empty list prevents all requests.
is_restrictionYesIndicates whether IP restrictions are enabled. When enabled, the API key works only from IP addresses in `permitted_ips`.
is_scopes_enabledYesWhen `true`, the key is restricted to the permissions defined in the scope fields below. When `false`, the key has full access.

TDQS

B3.3/5.0
Behavior2/5

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

With no annotations, the description carries the full burden of behavioral disclosure, but it only states creation and IP restriction capability. It does not mention that the key/secret is typically shown only once, that this is a long-lived write operation, or any authentication/permission requirements.

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?

The description is two sentences and front-loaded with the primary action. The second sentence about IP restrictions is relevant and earns its place without redundancy.

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?

An output schema exists and the input schema is fully self-documenting, which lowers the burden on the description. However, the description lacks usage alternatives and critical behavioral notes (e.g., full access when scopes are disabled), leaving it adequate but not fully complete given the tool's complexity.

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?

Schema coverage is 100%, so the baseline is 3. The description adds a minimal paraphrase of permitted_ips and is_restriction ('IP restrictions'), but does not meaningfully extend beyond the schema's already detailed parameter descriptions.

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 clearly states the tool 'Creates an API key' with a specific verb and resource, distinguishing it from siblings like api_keys_delete or api_keys_list. The additional mention of optional IP restrictions adds scope without confusion.

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 is provided on when to use this tool versus alternatives, nor any mention of prerequisites or post-creation steps. The agent must infer usage solely from the tool name and brief description.

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.

TDQS

B3/5.0
Disambiguation4/5

Tools are organized by resource with a clear action suffix (create/list/get/update/delete), making most purposes distinct. However, with 122 tools, some pairs like `cdrs_list` vs `cdrs_list_all` or `ten_dlc_brand_campaigns_list` vs `ten_dlc_campaigns_list` could cause confusion without careful reading of descriptions.

Naming Consistency5/5

All tool names follow a consistent `resource_action` snake_case pattern (e.g., `api_keys_create`, `call_control_answer`, `ten_dlc_brands_list`). Verbs are standardized across the set, with only a few exceptions like `check` or `nudge` that still fit the verb-first style. No mixed casing or inconsistent separators.

Tool Count1/5

At 122 tools, this is an extremely large surface that overwhelms the typical MCP agent's ability to select the right tool. Even though the count reflects the full Wavix API, the sheer number far exceeds the 50+ threshold for 'extreme mismatch' and is impractical for most use cases.

Completeness4/5

The tool set covers a broad range of communications features: numbers, calls, messages, billing, CDRs, sub-accounts, 10DLC compliance, speech analytics, and WebRTC. Missing operations like `sub_accounts_delete` or a 2FA service management endpoint are minor gaps that can be worked around via portal or other tools, but overall lifecycle coverage is strong.