Skip to main content
Glama
CTMJSON

CTM VoiceAI MCP

by CTMJSON

CTM OAuth Web Flow URL

ctm_voiceai_auth_url
Read-only

Generates the OAuth2 authorization URL for CallTrackingMetrics web login. Open it in a browser to get a ?code, then exchange that code to complete authentication.

Instructions

Builds the OAuth2 authorization URL for the web flow. Open it in a browser; CTM redirects to your redirect_uri with a ?code=. Then call ctm_voiceai_auth_exchange with that code.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
scopeNoDefaults to the configured scope.
stateNo
redirect_uriYesThe registered redirect URI for the OAuth app.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

readOnlyHint=true already signals a safe, non-mutating call, so the description adds flow-level behavior beyond annotations: the URL is meant to be opened in a browser and the result is a redirect carrying a ?code=. It doesn't mention URL/token expiry or scope defaults, but the essential handoff behavior is disclosed.

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?

Three short sentences, front-loaded with what it does, then how to use the result. Every sentence earns its place with no filler.

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 a 3-param, no-output-schema tool in an OAuth sequence, the description covers purpose, usage, and the next step. It could state that the return value is the URL string itself, but the flow is otherwise complete enough to invoke correctly.

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 67% (state has no description). The description clarifies redirect_uri's role ('CTM redirects to your redirect_uri with a ?code=') but says nothing about scope or state, so it only partially compensates for the coverage gap.

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?

Specific verb+resource: 'Builds the OAuth2 authorization URL for the web flow.' It clearly distinguishes itself from siblings ctm_voiceai_auth_exchange and ctm_voiceai_auth_login by naming the web-flow URL as its output.

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?

Explicit sequencing: open the URL in a browser, CTM redirects to redirect_uri with a ?code=, then call ctm_voiceai_auth_exchange with that code. This names the exact follow-up tool and the condition for using it.

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