Server definition
- Hash
- sha256:7692fbafc4c852baa3bc0b0ce7b0d22fa66ea3dd3860167ba9af1dabea82050d
- What it is
- What a remote MCP server returned when asked what it offers: 8 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "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.",
"inputSchema": {
"properties": {
"attestation_confirmed": {
"description": "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.",
"type": "boolean"
},
"audio_url": {
"description": "Public URL of the audio file.",
"type": "string"
},
"job_estimate_id": {
"description": "The job_estimate_id returned by estimate_cost. Must not be expired (30 min TTL).",
"type": "string"
},
"tools": {
"description": "Analysis tools to run. Available in v1.0: bpm, key, waveform. Coming soon: structure, chords.",
"items": {
"enum": [
"bpm",
"key",
"waveform"
],
"type": "string"
},
"type": "array"
}
},
"required": [
"audio_url",
"tools",
"job_estimate_id",
"attestation_confirmed"
],
"type": "object"
},
"name": "analyze_track",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"ok",
"job_id",
"status",
"cache_hits",
"tokens_estimated",
"cost_usd_estimated",
"poll_url",
"stream_url"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"account_type": {
"description": "Account type used for the request.",
"type": "string"
},
"cache_hits": {
"description": "Tools served from cache.",
"items": {
"type": "string"
},
"type": "array"
},
"conversion_note": {
"type": "string"
},
"cost_usd_estimated": {
"description": "Estimated USD value.",
"type": "number"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"job_id": {
"description": "Pulse analysis job id.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"ok": {
"description": "True when analysis was accepted.",
"type": "boolean"
},
"poll_url": {
"description": "Relative status polling URL.",
"type": "string"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
},
"status": {
"description": "Current job status.",
"type": "string"
},
"stream_url": {
"description": "Relative SSE status URL.",
"type": "string"
},
"tokens_estimated": {
"description": "Estimated token charge.",
"type": "number"
},
"upgrade_path": {
"type": "string"
}
},
"required": [],
"type": "object"
}
},
{
"description": "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.",
"inputSchema": {
"properties": {
"audio_url": {
"description": "Publicly accessible URL of the audio file (MP3, WAV, FLAC, OGG, Opus).",
"type": "string"
},
"tools": {
"description": "Analysis tools to price. Available in v1.0: bpm, key, waveform. Coming soon: structure, chords.",
"items": {
"enum": [
"bpm",
"key",
"waveform"
],
"type": "string"
},
"type": "array"
}
},
"required": [
"audio_url",
"tools"
],
"type": "object"
},
"name": "estimate_cost",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"cost_usd",
"cost_display",
"tokens",
"breakdown",
"duration_estimate_sec",
"job_estimate_id",
"expires_at"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"audio_url_normalized": {
"type": "string"
},
"audio_url_original": {
"type": "string"
},
"breakdown": {
"additionalProperties": {
"additionalProperties": true,
"properties": {
"cost_usd": {
"type": "number"
},
"tokens": {
"type": "number"
}
},
"required": [
"tokens",
"cost_usd"
],
"type": "object"
},
"description": "Per-tool token and cost estimate.",
"type": "object"
},
"content_length_bytes": {
"type": "number"
},
"content_type": {
"type": "string"
},
"cost_display": {
"description": "Human-readable USD estimate.",
"type": "string"
},
"cost_usd": {
"description": "Estimated analysis cost in USD.",
"type": "number"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"duration_estimate_sec": {
"description": "Estimated audio duration in seconds.",
"type": "number"
},
"duration_inferred": {
"type": "boolean"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"expires_at": {
"description": "ISO timestamp when the estimate expires.",
"type": "string"
},
"job_estimate_id": {
"description": "Estimate identifier valid for the configured TTL.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"normalize_source": {
"type": "string"
},
"note": {
"type": "string"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
},
"tokens": {
"description": "Estimated Pulse tokens.",
"type": "number"
}
},
"required": [],
"type": "object"
}
},
{
"description": "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.",
"inputSchema": {
"properties": {
"include_waveform_data": {
"description": "Optional. Defaults to false so chat agents receive a compact waveform summary plus result_url. Set true only if raw waveform samples are needed.",
"type": "boolean"
},
"include_waveform_image": {
"description": "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.",
"type": "boolean"
},
"job_id": {
"description": "The job_id returned by analyze_track or request_payment_link.",
"type": "string"
}
},
"required": [
"job_id"
],
"type": "object"
},
"name": "get_job_status",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"job_id",
"status"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"billing": {
"additionalProperties": true,
"type": "object"
},
"completed_at": {
"type": "string"
},
"cost_usd": {
"type": "number"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"expires_at": {
"type": "string"
},
"job_id": {
"description": "Pulse analysis job id.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"metadata": {
"additionalProperties": true,
"description": "Analysis metadata, including asset type, source hints, library metadata, and confidence policy when available.",
"type": "object"
},
"payment_source": {
"type": "string"
},
"result_provenance": {
"additionalProperties": true,
"description": "Per-tool provenance and applicability summary for interpreting detected, filename-sourced, suppressed, or low-confidence results.",
"type": "object"
},
"result_quality_notes": {
"description": "Human-readable quality notes for suppressed, low-confidence, filename-sourced, or review-needed results.",
"items": {
"type": "string"
},
"type": "array"
},
"result_url": {
"description": "Public result page URL.",
"type": "string"
},
"results": {
"additionalProperties": true,
"description": "Analysis results when available.",
"type": "object"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
},
"status": {
"description": "Current or terminal job status.",
"type": "string"
},
"tokens_charged": {
"type": "number"
},
"tokens_estimated": {
"type": "number"
},
"waveform_file": {
"additionalProperties": true,
"type": "object"
},
"waveform_image": {
"additionalProperties": true,
"type": "object"
},
"waveform_markdown": {
"type": "string"
},
"waveform_png_url": {
"type": "string"
},
"waveform_svg_url": {
"type": "string"
}
},
"required": [],
"type": "object"
}
},
{
"description": "Check the banked token balance for the authenticated Pulse account. Requires PULSE_API_KEY.",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "get_token_balance",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"banked_tokens",
"api_key_prefix",
"account_type",
"trial_expires_at",
"account_created_at"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"account_created_at": {
"description": "Account creation timestamp.",
"type": "string"
},
"account_type": {
"description": "Pulse account type.",
"type": "string"
},
"api_key_prefix": {
"description": "Redacted API-key prefix.",
"type": "string"
},
"banked_tokens": {
"description": "Current banked-token balance.",
"type": "number"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
},
"trial_expires_at": {
"description": "Trial expiry timestamp if this is a trial account.",
"type": [
"string",
"null"
]
}
},
"required": [],
"type": "object"
}
},
{
"description": "List the available Pulse token packs (tier label, token count, price). Use before purchase_token_pack to show options to the user.",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "list_token_packs",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"enabled",
"packs"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"enabled": {
"description": "Whether token-pack purchasing is enabled.",
"type": "boolean"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"packs": {
"description": "Available token-pack tiers.",
"items": {
"additionalProperties": true,
"properties": {
"amount_cents": {
"type": "number"
},
"amount_usd": {
"type": "number"
},
"currency": {
"type": "string"
},
"pack": {
"type": "string"
},
"tokens": {
"type": "number"
}
},
"type": "object"
},
"type": "array"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
}
},
"required": [],
"type": "object"
}
},
{
"description": "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.",
"inputSchema": {
"properties": {
"pack": {
"description": "Token pack tier",
"enum": [
"10K",
"50K",
"200K"
],
"type": "string"
}
},
"required": [
"pack"
],
"type": "object"
},
"name": "purchase_token_pack",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"purchase_id",
"pack",
"tokens",
"amount_usd",
"currency",
"payment_url",
"expires_at"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"amount_usd": {
"description": "Pack price in USD.",
"type": "number"
},
"currency": {
"description": "Checkout currency.",
"type": "string"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"expires_at": {
"description": "ISO timestamp when the Checkout link expires.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"pack": {
"description": "Token-pack tier label.",
"type": "string"
},
"payment_url": {
"description": "Stripe Checkout URL to present to the user.",
"type": "string"
},
"purchase_id": {
"description": "Pulse token-pack purchase id.",
"type": "string"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
},
"tokens": {
"description": "Tokens included in the pack.",
"type": "number"
}
},
"required": [],
"type": "object"
}
},
{
"description": "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.",
"inputSchema": {
"properties": {
"attestation_confirmed": {
"description": "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.",
"type": "boolean"
},
"job_estimate_id": {
"description": "The job_estimate_id returned by estimate_cost.",
"type": "string"
}
},
"required": [
"job_estimate_id",
"attestation_confirmed"
],
"type": "object"
},
"name": "request_payment_link",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"payment_url",
"job_id",
"cost_display",
"charged_display",
"amount_charged_cents",
"amount_estimate_cents",
"expires_at"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"amount_charged_cents": {
"description": "Stripe Checkout charge in cents.",
"type": "number"
},
"amount_estimate_cents": {
"description": "Estimated usage value in cents.",
"type": "number"
},
"charged_display": {
"description": "Human-readable upfront Checkout charge.",
"type": "string"
},
"cost_display": {
"description": "Human-readable estimated cost.",
"type": "string"
},
"deduped": {
"description": "True when an existing active Checkout link was reused.",
"type": "boolean"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"expires_at": {
"description": "ISO timestamp when the Checkout link expires.",
"type": "string"
},
"job_id": {
"description": "Pulse job id for polling after payment.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"payment_url": {
"description": "Stripe Checkout URL to present to the user.",
"type": "string"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
}
},
"required": [],
"type": "object"
}
},
{
"description": "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.",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "start_trial",
"outputSchema": {
"additionalProperties": true,
"anyOf": [
{
"required": [
"api_key",
"account_type",
"banked_tokens",
"expires_at",
"usage_note"
]
},
{
"required": [
"error",
"message"
]
}
],
"properties": {
"account_type": {
"description": "The account type created by this tool.",
"enum": [
"trial"
],
"type": "string"
},
"analyze_path": {
"description": "REST path for authenticated analysis.",
"type": "string"
},
"api_key": {
"description": "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.",
"type": "string"
},
"banked_tokens": {
"description": "Trial token balance granted.",
"type": "number"
},
"details": {
"additionalProperties": true,
"description": "Additional structured context from Pulse.",
"type": "object"
},
"error": {
"description": "Machine-readable error code.",
"type": "string"
},
"estimate_path": {
"description": "REST path for free estimates.",
"type": "string"
},
"expires_at": {
"description": "ISO timestamp when the temporary key expires.",
"type": "string"
},
"message": {
"description": "Human-readable recovery guidance.",
"type": "string"
},
"retryable": {
"description": "Whether the caller may retry after changing state or waiting.",
"type": "boolean"
},
"upgrade_path": {
"description": "Path for converting to an account.",
"type": "string"
},
"usage_note": {
"description": "Limits and usage guidance for the trial.",
"type": "string"
}
},
"required": [],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:7692fbafc4c852baa3bc0b0ce7b0d22fa66ea3dd3860167ba9af1dabea82050d | sha256sum