# Castingwords — how to use (mcp.ai)

Connect your Castingwords account and use 9 tools for transcription straight from your AI agent. Connect with your own API key. CastingWords offers high-quality, human-powered transcription services with a RESTful API for seamless integration into various workflows.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_castingwords?ms=1787293680000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `castingwords_cancel_audiofile`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/castingwords`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/castingwords/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/castingwords/cancel/audiofile` — Tool to cancel an ordered audio file and issue a refund if applicable. Use when no transcription work has been done on the file (Pre-Processing, Audio Processing, Error states).
  - body: { test?: string, audiofile_id: integer }
- `POST https://api.mcp.ai/api/castingwords/get/prepay/balance` — Tool to retrieve the current prepay balance for the account. Use when you need to check available funds before placing new transcription orders.
- `POST https://api.mcp.ai/api/castingwords/get/transcript` — Tool to retrieve the transcript for a given audiofile in the requested format (txt, doc, rtf, or html). Use after a transcription order has been completed.
  - body: { test?: string, extension?: string, audiofile_id: integer }
- `POST https://api.mcp.ai/api/castingwords/get/webhook` — Tool to retrieve the currently registered webhook URL for account notifications. Use when you need to verify your webhook setup.
- `POST https://api.mcp.ai/api/castingwords/order/transcript` — Create a transcription order for audio/video files at publicly accessible URLs. Returns order ID and audiofile IDs for tracking. Requires prepaid balance for non-test orders. Use test=true to validate
  - body: { sku: string|string[], url: string|string[], name?: string[], test?: boolean, notes?: string }
- `POST https://api.mcp.ai/api/castingwords/order/upgrades` — Tool to order an upgrade for a specific audio file. Use after transcription is complete to add items like timestamps or extra editing. Example: 'Order timestamps for file 12345'.
  - body: { sku: string[], test?: boolean, audiofile_id: integer }
- `POST https://api.mcp.ai/api/castingwords/register/webhook` — Registers a webhook URL to receive CastingWords event notifications. When events occur (e.g., transcript completion, refund issued, difficult audio), CastingWords will POST to your registered URL with
  - body: { webhook: string }
- `POST https://api.mcp.ai/api/castingwords/sku/list` — Retrieves all available CastingWords transcription service SKUs with pricing. Use this tool to discover available services (transcription, captions, etc.) and their per-minute prices before placing an
- `POST https://api.mcp.ai/api/castingwords/test/webhook` — Tool to request a test webhook call for a specific event type. Use after registering a webhook URL to ensure webhook notifications are functioning properly.
  - body: { event: string }

## Example prompts
- "What can I do in Castingwords?"
- "Show me a summary of my Castingwords account"

## More
- Page: https://mcp.ai/castingwords
- Agent spec (llms.txt): https://mcp.ai/castingwords/llms.txt
- Postman collection: https://mcp.ai/castingwords/postman.json
