StudioSphere Pulse — Audio Intelligence
Server Details
Privacy-first audio intelligence: BPM, key, waveform. Audio never stored. Pay per second.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- notpaulb/studiosphere-pulse-mcp
- GitHub Stars
- 0
- Server Listing
- studiosphere-pulse-mcp
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.5/5 across 8 of 8 tools scored.
Each tool has a clearly distinct role: cost estimation, analysis initiation, status polling, token balance, token pack listing/purchasing, payment linking, and trial creation. Even the two analysis-triggering tools (analyze_track and request_payment_link) are cleanly separated by account vs. non-account workflows.
All eight tools follow a consistent snake_case verb_noun pattern (e.g., estimate_cost, list_token_packs, start_trial). The verbs are specific and predictable, and there are no mixed conventions or vague names.
Eight tools strike a good balance for this domain: three cover the analysis pipeline (estimate, analyze, poll) and five cover billing/tokens/trial. Every tool serves a distinct purpose with no redundancy or bloat.
The set covers the full analysis workflow (cost estimation, submission, status polling) and token management (balance, packs, purchase, trial, payment link). A minor gap is the lack of job cancellation or historical job listing, but core user tasks are fully supported.
Available Tools
8 toolsanalyze_trackAInspect
Run audio analysis on a public audio URL. Requires estimate_cost to be called first (job_estimate_id). Requires PULSE_API_KEY. Before calling, you MUST confirm with the user that they have a lawful basis to submit this audio for analysis. For a user-requested folder, project, playlist, or batch, one confirmation can cover every track in that scope. Returns job_id — poll get_job_status for results.
| Name | Required | Description | Default |
|---|---|---|---|
| tools | Yes | Analysis tools to run. Available in v1.0: bpm, key, waveform. Coming soon: structure, chords. | |
| audio_url | Yes | Public URL of the audio file. | |
| job_estimate_id | Yes | The job_estimate_id returned by estimate_cost. Must not be expired (30 min TTL). | |
| attestation_confirmed | Yes | Set to true ONLY after the user has confirmed they have rights, permission, lawful access, or another legal basis to submit this audio, or the current user-requested batch/folder/project containing it, for analysis. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | True when analysis was accepted. |
| error | No | Machine-readable error code. |
| job_id | No | Pulse analysis job id. |
| status | No | Current job status. |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| poll_url | No | Relative status polling URL. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| cache_hits | No | Tools served from cache. |
| stream_url | No | Relative SSE status URL. |
| account_type | No | Account type used for the request. |
| upgrade_path | No | |
| conversion_note | No | |
| tokens_estimated | No | Estimated token charge. |
| cost_usd_estimated | No | Estimated USD value. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint=false, idempotentHint=false), the description adds significant behavioral context: requires PULSE_API_KEY, requires prior estimate, must confirm lawful basis, and returns a job_id for async polling. It also clarifies that one batch confirmation covers multiple tracks, which is critical for proper use. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Five sentences, each carrying essential information: main action, prerequisite, API key requirement, user confirmation obligation, and return/poll behavior. No fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with an output schema (returns job_id) and this complexity, the description covers the full workflow: prerequisites, legal compliance, return behavior, and the async polling pattern. It does not need to explain return values in detail because the output schema exists.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. The description adds meaning by explaining the workflow dependency (job_estimate_id comes from estimate_cost), reinforces the 'public' nature of audio_url, and clarifies the legal confirmation requirement for attestation_confirmed. This goes beyond the schema's per-parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with a clear verb+resource: 'Run audio analysis on a public audio URL.' It distinguishes itself from siblings by explicitly linking to estimate_cost (prerequisite) and get_job_status (result retrieval), making it unambiguous which step in the workflow this tool represents.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly states the prerequisite (estimate_cost must be called first) and the follow-up (poll get_job_status). It also provides guidance on batch confirmation. However, it does not explicitly state when not to use this tool (e.g., for cost estimation or status polling), though the workflow context makes this implicitly clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
estimate_costARead-onlyIdempotentInspect
Get the exact price to analyze an audio file before committing. Always call this first. Returns cost in dollars and a job_estimate_id valid for 30 minutes. Free — never charged.
| Name | Required | Description | Default |
|---|---|---|---|
| tools | Yes | Analysis tools to price. Available in v1.0: bpm, key, waveform. Coming soon: structure, chords. | |
| audio_url | Yes | Publicly accessible URL of the audio file (MP3, WAV, FLAC, OGG, Opus). |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | No | |
| error | No | Machine-readable error code. |
| tokens | No | Estimated Pulse tokens. |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| cost_usd | No | Estimated analysis cost in USD. |
| breakdown | No | Per-tool token and cost estimate. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| expires_at | No | ISO timestamp when the estimate expires. |
| content_type | No | |
| cost_display | No | Human-readable USD estimate. |
| job_estimate_id | No | Estimate identifier valid for the configured TTL. |
| normalize_source | No | |
| duration_inferred | No | |
| audio_url_original | No | |
| audio_url_normalized | No | |
| content_length_bytes | No | |
| duration_estimate_sec | No | Estimated audio duration in seconds. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint=true, destructiveHint=false), the description adds that the tool is 'Free — never charged' and returns a job_estimate_id valid for 30 minutes. This discloses cost and validity aspects not covered by the annotations, enriching the agent's understanding without contradicting the structured hints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is three concise sentences: purpose, usage order, and return details. It is front-loaded with the primary action, has no redundancy, and every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool with an output schema, the description covers purpose, invocation order, return value (cost and ID), and cost implication. It does not need to explain return format because the output schema exists, making this contextually complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters (audio_url and tools) are fully described in the input schema, including enum values and URL formats. The description adds no additional parameter-specific details, so the baseline score of 3 is appropriate given the 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get the exact price to analyze an audio file before committing.' It specifies the resource (audio file) and the verb (get exact price), and distinguishes from sibling tools like analyze_track by framing this as a pre-commit estimate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The instruction 'Always call this first' provides clear when-to-use guidance relative to analysis. It doesn't explicitly name alternatives, but the directive strongly implies it should precede analyze_track. The context of 'before committing' further clarifies the intended use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_job_statusARead-onlyIdempotentInspect
Check the status and results of an analysis job. Poll after analyze_track returns job_id, or after the user pays via request_payment_link. Returns full results when status=completed.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by analyze_track or request_payment_link. | |
| include_waveform_data | No | Optional. Defaults to false so chat agents receive a compact waveform summary plus result_url. Set true only if raw waveform samples are needed. | |
| include_waveform_image | No | Optional. Defaults to true. When the job has waveform data, include a server-rendered SVG as MCP image content so the client can display it without fetching a URL. |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | Machine-readable error code. |
| job_id | No | Pulse analysis job id. |
| status | No | Current or terminal job status. |
| billing | No | |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| results | No | Analysis results when available. |
| cost_usd | No | |
| metadata | No | Analysis metadata, including asset type, source hints, library metadata, and confidence policy when available. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| expires_at | No | |
| result_url | No | Public result page URL. |
| completed_at | No | |
| waveform_file | No | |
| payment_source | No | |
| tokens_charged | No | |
| waveform_image | No | |
| tokens_estimated | No | |
| waveform_png_url | No | |
| waveform_svg_url | No | |
| result_provenance | No | Per-tool provenance and applicability summary for interpreting detected, filename-sourced, suppressed, or low-confidence results. |
| waveform_markdown | No | |
| result_quality_notes | No | Human-readable quality notes for suppressed, low-confidence, filename-sourced, or review-needed results. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and idempotentHint=true, and the description adds behavioral context by specifying the polling pattern and that full results come only when status=completed. This goes beyond the annotations and does not contradict them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with three short sentences, each serving a distinct purpose: state the main action, give the polling trigger, and describe the completion condition. It is front-loaded and every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the presence of a detailed input schema and an output schema, the description covers the essential usage context: what the tool does, when to call it, and what result to expect. It does not need to explain return values or parameter specifics since the schema handles those.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has complete descriptions for all three parameters, including defaults and effects, so the description does not need to add param semantics. The description's mention of job_id origin and result conditions adds no new parameter-level information beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Check') and resource ('status and results of an analysis job'). It also ties the tool's use to the job lifecycle (after analyze_track or payment), distinguishing it from sibling tools like analyze_track and request_payment_link.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent when to use the tool: poll after analyze_track returns job_id or after the user pays via request_payment_link. It does not list when-not-to-use cases or alternatives, but the provided timing guidance is clear and actionable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_balanceARead-onlyIdempotentInspect
Check the banked token balance for the authenticated Pulse account. Requires PULSE_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | Machine-readable error code. |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| account_type | No | Pulse account type. |
| banked_tokens | No | Current banked-token balance. |
| api_key_prefix | No | Redacted API-key prefix. |
| trial_expires_at | No | Trial expiry timestamp if this is a trial account. |
| account_created_at | No | Account creation timestamp. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true and destructiveHint=false, so the safety profile is covered. The description adds authentication context ('Requires PULSE_API_KEY', 'authenticated Pulse account'), which is useful beyond annotations. It does not explain 'banked' but the output schema covers return values.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the primary action. 'Requires PULSE_API_KEY' is a necessary warning with no filler. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a simple read-only balance check with no parameters. Annotations cover safety, output schema covers return format, and the description covers authentication. This is complete for an agent to select and invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so the description cannot add parameter syntax. It does clarify that the balance is for the authenticated account, which provides implicit context. Baseline 4 is appropriate for a no-parameter tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Check' with a clear resource, 'banked token balance', scoped to 'the authenticated Pulse account'. This clearly distinguishes it from sibling tools like list_token_packs (available packs) and purchase_token_pack (buying).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states a precondition: 'Requires PULSE_API_KEY.' It does not name alternatives, but the tool's purpose is unambiguous, making the usage context clear. No exclusions are needed given the simple read-only nature.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_token_packsARead-onlyIdempotentInspect
List the available Pulse token packs (tier label, token count, price). Use before purchase_token_pack to show options to the user.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | Machine-readable error code. |
| packs | No | Available token-pack tiers. |
| details | No | Additional structured context from Pulse. |
| enabled | No | Whether token-pack purchasing is enabled. |
| message | No | Human-readable recovery guidance. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, covering safety and idempotency. The description adds that the list includes tier label, token count, and price, which provides useful context about return content, but this may duplicate the output schema. No additional behavioral disclosures (e.g., auth requirements, rate limits, pagination) are provided, so a moderate score is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences. The first sentence states the action and output contents, the second provides usage context. It is succinct, front-loaded, and every word provides value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is low complexity: no parameters, simple list operation, with output schema present and comprehensive annotations. The description covers the core purpose and the primary usage context (before purchase). There are no significant gaps for the agent to invoke this tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is empty. With no parameters to document, the baseline is 4. The description does not need to add parameter meaning, and it does not. It correctly avoids mentioning parameters that do not exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action: 'List the available Pulse token packs' with specific return contents (tier label, token count, price). It also distinguishes this tool from sibling purchase_token_pack by referencing it and positioning this as a pre-purchase listing action.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives explicit usage guidance: 'Use before purchase_token_pack to show options to the user.' This tells the agent exactly when to invoke this tool and names the downstream alternative/pair, fulfilling the when-to-use requirement clearly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
purchase_token_packAInspect
Create a Stripe Checkout session for a Pulse token pack. Returns payment_url — DO NOT submit it programmatically; surface it to the user so they can complete payment in their browser. Once paid, banked tokens are credited automatically. Requires PULSE_API_KEY.
| Name | Required | Description | Default |
|---|---|---|---|
| pack | Yes | Token pack tier |
Output Schema
| Name | Required | Description |
|---|---|---|
| pack | No | Token-pack tier label. |
| error | No | Machine-readable error code. |
| tokens | No | Tokens included in the pack. |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| currency | No | Checkout currency. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| amount_usd | No | Pack price in USD. |
| expires_at | No | ISO timestamp when the Checkout link expires. |
| payment_url | No | Stripe Checkout URL to present to the user. |
| purchase_id | No | Pulse token-pack purchase id. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description goes beyond the annotations by explaining the checkout flow, the need for user interaction with the payment_url, and automatic token crediting after payment. It also discloses the authentication requirement ('Requires PULSE_API_KEY'). This adds significant behavioral context that annotations do not cover, and it does not contradict the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured. It opens with the main purpose, then provides a critical usage instruction, followed by a note on post-payment behavior. Every sentence adds value without unnecessary fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the essential aspects: what the tool does, how to handle the response, the post-payment effect, and required credentials. It is sufficiently complete given the simple single-parameter input and the presence of an output schema. It could mention session expiration or error behavior, but these are not critical for basic usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides a complete description of the 'pack' parameter (enum values and description). The tool description adds no additional parameter semantics beyond the schema, but since schema coverage is 100%, a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Create a Stripe Checkout session for a Pulse token pack.' It uses a specific verb ('Create') and names the resource ('Pulse token pack'). This distinguishes it from siblings like list_token_packs and get_token_balance, and the return of a payment_url is specified.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool (to purchase a token pack) and gives explicit instructions on handling the result: 'DO NOT submit it programmatically; surface it to the user.' However, it does not explicitly compare with alternatives such as request_payment_link or state when not to use it, so it falls short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
request_payment_linkAInspect
Generate a one-time Stripe payment page for users without a Pulse account. Before calling, you MUST confirm with the user that they have a lawful basis to submit this audio for analysis; for a user-requested batch/folder/project, one confirmation can cover that scope. Present the payment_url to the user as a link. Analysis begins automatically after payment. Poll get_job_status with the returned job_id.
| Name | Required | Description | Default |
|---|---|---|---|
| job_estimate_id | Yes | The job_estimate_id returned by estimate_cost. | |
| attestation_confirmed | Yes | Set to true ONLY after the user has confirmed they have rights, permission, lawful access, or another legal basis to submit this audio, or the current user-requested batch/folder/project containing it, for analysis. |
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | Machine-readable error code. |
| job_id | No | Pulse job id for polling after payment. |
| deduped | No | True when an existing active Checkout link was reused. |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| expires_at | No | ISO timestamp when the Checkout link expires. |
| payment_url | No | Stripe Checkout URL to present to the user. |
| cost_display | No | Human-readable estimated cost. |
| charged_display | No | Human-readable upfront Checkout charge. |
| amount_charged_cents | No | Stripe Checkout charge in cents. |
| amount_estimate_cents | No | Estimated usage value in cents. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses key behavioral traits beyond annotations: analysis begins automatically after payment (side effect), the page is one-time (non-idempotent), confirmation is required, and the returned job_id is for polling. This provides rich operational context that annotations alone lack.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is four sentences, each delivering essential information: purpose, precondition, output handling, and follow-up. No filler or redundancy; it is well-structured and front-loaded with the primary purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the critical workflow steps (confirmation, presenting the URL, polling) and leverages the existing output schema for return values. It lacks explicit failure/error handling or payment status edge cases, but for a tool with this schema richness, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
While schema descriptions cover both parameters fully (100% coverage), the description adds nuance to attestation_confirmed by explaining that one confirmation can cover a batch/folder/project scope. This enriches understanding of the boolean parameter beyond the schema's basic 'only after user confirms'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool generates a one-time Stripe payment page for users without a Pulse account, distinguishing it from sibling payment tools like purchase_token_pack. It also outlines the full flow (confirmation, payment, polling), leaving no ambiguity about its function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It specifies when to use the tool ('for users without a Pulse account') and includes mandatory preconditions (confirmation) and follow-up steps (present link, poll get_job_status). However, it does not explicitly name alternatives or when not to use it, though the context implies exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
start_trialAInspect
Start a temporary, email-free Pulse trial. Returns a short-lived private API key with enough banked tokens for one short URL-based v1 analysis. No Stripe Checkout session is created. Store the key in the client or a trusted local environment; do not repost it in public logs, screenshots, GitHub issues, shared chats, or directory examples.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| error | No | Machine-readable error code. |
| api_key | No | Temporary Pulse API key for the trial account. Treat as private; do not print it in public logs, screenshots, GitHub issues, shared chats, or directory examples. |
| details | No | Additional structured context from Pulse. |
| message | No | Human-readable recovery guidance. |
| retryable | No | Whether the caller may retry after changing state or waiting. |
| expires_at | No | ISO timestamp when the temporary key expires. |
| usage_note | No | Limits and usage guidance for the trial. |
| account_type | No | The account type created by this tool. |
| analyze_path | No | REST path for authenticated analysis. |
| upgrade_path | No | Path for converting to an account. |
| banked_tokens | No | Trial token balance granted. |
| estimate_path | No | REST path for free estimates. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations, the description discloses the key is short-lived, has banked tokens for one v1 analysis, and includes security guidance: store in trusted environment, don't post publicly. This adds meaningful context about the trial key's lifespan, token quota, and handling requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose, followed by specific output details and security instructions. Each sentence adds distinct value; no redundant filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the zero-parameter signature and existing annotations (non-idempotent, non-read-only), the description is complete: it explains the trial's temporary nature, the key's capabilities, and important security practices. The output schema likely covers return format, so no additional return details are necessary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has no parameters, so there are no parameter semantics to clarify. The description appropriately focuses on the tool's outcome and output rather than non-existent parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Start a temporary, email-free Pulse trial' and specifies the output: a short-lived private API key. It distinguishes from sibling tools by noting 'No Stripe Checkout session is created,' separating it from payment-related tools like purchase_token_pack and request_payment_link.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description conveys that this is for starting a trial without payment, contrasting with Stripe Checkout, but it doesn't explicitly name alternatives or provide when-not-to-use criteria. The context is clear enough for an agent to choose this over paid token acquisition, but explicit sibling references are absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityCmaintenanceEnables AI agents to analyze audio files, extracting tempo, key, beat drops, volume surges, high tones, loudness, brightness, and structure, and returning structured JSON and visualizations.1MIT
- Flicense-qualityBmaintenanceAnalyzes audio files to extract exact, reproducible measurements like loudness, tempo, key, spectral balance, and clipping for LLM-based DAW control.
- FlicenseAqualityDmaintenanceEnables AI models to analyze audio files through numerical fingerprints, pitch tracking, and visual spectrograms without requiring direct audio playback. It provides tools for comparing audio iterations and detecting patterns using token-efficient analysis operations.12
- AlicenseBqualityDmaintenanceProvides AI-powered audio generation and processing through the MusicGPT API, enabling music creation, voice conversion, audio manipulation, stem extraction, and audio analysis capabilities.24111MIT
Your Connectors
Sign in to create a connector for this server.