Find your landing page message
Connect a product’s value to a specific audience and write a clear first-screen message.
An MCP server that provides on-demand skill loading for AI coding assistants.
---
name: assemblyai-transcribe-57d42c89828a
description: Transcribe audio/video with AssemblyAI (local upload or URL), plus subtitles + paragraph/sentence exports.
homepage: https://www.assemblyai.com/docs
user-invocable: true
metadata: {"clawdbot":{"skillKey":"assemblyai","emoji":"🎙️","requires":{"bins":["node"],"env":["ASSEMBLYAI_API_KEY"]},"primaryEnv":"ASSEMBLYAI_API_KEY"}}
---
# AssemblyAI transcription + exports
Use this skill when you need to transcribe audio/video or export readable formats (subtitles, paragraphs, sentences) using AssemblyAI.
The helper script in this skill implements the basic REST flow:
1. (Local files) Upload via `POST /v2/upload`.
2. Create a transcript job via `POST /v2/transcript`.
3. Poll `GET /v2/transcript/:id` until the transcript `status` is `completed` (or `error`).
## Setup
This skill requires:
- `node` on PATH (Node.js 18+ recommended; script uses built-in fetch)
- `ASSEMBLYAI_API_KEY` in the environment
Recommended Clawdbot config (`~/.clawdbot/clawdbot.json`):
```js
{
skills: {
entries: {
// This skill declares metadata.clawdbot.skillKey = "assemblyai"
assemblyai: {
enabled: true,
// Because this skill declares primaryEnv = ASSEMBLYAI_API_KEY,
// you can use apiKey as a convenience:
apiKey: "YOUR_ASSEMBLYAI_KEY",
env: {
ASSEMBLYAI_API_KEY: "YOUR_ASSEMBLYAI_KEY",
// Optional: use EU async endpoint
// ASSEMBLYAI_BASE_URL: "https://api.eu.assemblyai.com"
}
}
}
}
}
```
## Usage
Run these commands via the Exec tool.
### Transcribe (local file or public URL)
Print transcript text to stdout:
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3"
node {baseDir}/assemblyai.mjs transcribe "https://example.com/audio.mp3"
```
Write transcript to a file (recommended for long audio):
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3" --out ./transcript.txt
```
### Pass advanced transcription options
Any fields supported by `POST /v2/transcript` can be passed via `--config`:
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3" \
--config '{"speaker_labels":true,"summarization":true,"summary_model":"informative","summary_type":"bullets"}' \
--export json \
--out ./transcript.json
```
### Export subtitles (SRT/VTT)
Transcribe and immediately export subtitles:
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/video.mp4" --export srt --out ./subtitles.srt
node {baseDir}/assemblyai.mjs transcribe "./path/to/video.mp4" --export vtt --out ./subtitles.vtt
```
Or export subtitles from an existing transcript ID:
```bash
node {baseDir}/assemblyai.mjs subtitles <transcript_id> srt --out ./subtitles.srt
```
### Export paragraphs / sentences
```bash
node {baseDir}/assemblyai.mjs paragraphs <transcript_id> --out ./paragraphs.txt
node {baseDir}/assemblyai.mjs sentences <transcript_id> --out ./sentences.txt
```
### Fetch an existing transcript
```bash
node {baseDir}/assemblyai.mjs get <transcript_id> --format json
node {baseDir}/assemblyai.mjs get <transcript_id> --wait --format text
```
## Guidance
- Prefer `--out <file>` when output might be large.
- Keep API keys out of logs and chat; rely on env injection.
- If a user asks for EU processing/data residency, set `ASSEMBLYAI_BASE_URL` to the EU host.
- AssemblyAI requires that uploads and the subsequent transcript request use an API key from the same AssemblyAI project (otherwise you can get a 403 / 'Cannot access uploaded file').
---
name: assemblyai-transcribe-57d42c89828a
description: Transcribe audio/video with AssemblyAI (local upload or URL), plus subtitles + paragraph/sentence exports.
homepage: https://www.assemblyai.com/docs
user-invocable: true
metadata: {"clawdbot":{"skillKey":"assemblyai","emoji":"🎙️","requires":{"bins":["node"],"env":["ASSEMBLYAI_API_KEY"]},"primaryEnv":"ASSEMBLYAI_API_KEY"}}
---
# AssemblyAI transcription + exports
Use this skill when you need to transcribe audio/video or export readable formats (subtitles, paragraphs, sentences) using AssemblyAI.
The helper script in this skill implements the basic REST flow:
1. (Local files) Upload via `POST /v2/upload`.
2. Create a transcript job via `POST /v2/transcript`.
3. Poll `GET /v2/transcript/:id` until the transcript `status` is `completed` (or `error`).
## Setup
This skill requires:
- `node` on PATH (Node.js 18+ recommended; script uses built-in fetch)
- `ASSEMBLYAI_API_KEY` in the environment
Recommended Clawdbot config (`~/.clawdbot/clawdbot.json`):
```js
{
skills: {
entries: {
// This skill declares metadata.clawdbot.skillKey = "assemblyai"
assemblyai: {
enabled: true,
// Because this skill declares primaryEnv = ASSEMBLYAI_API_KEY,
// you can use apiKey as a convenience:
apiKey: "YOUR_ASSEMBLYAI_KEY",
env: {
ASSEMBLYAI_API_KEY: "YOUR_ASSEMBLYAI_KEY",
// Optional: use EU async endpoint
// ASSEMBLYAI_BASE_URL: "https://api.eu.assemblyai.com"
}
}
}
}
}
```
## Usage
Run these commands via the Exec tool.
### Transcribe (local file or public URL)
Print transcript text to stdout:
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3"
node {baseDir}/assemblyai.mjs transcribe "https://example.com/audio.mp3"
```
Write transcript to a file (recommended for long audio):
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3" --out ./transcript.txt
```
### Pass advanced transcription options
Any fields supported by `POST /v2/transcript` can be passed via `--config`:
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/audio.mp3" \
--config '{"speaker_labels":true,"summarization":true,"summary_model":"informative","summary_type":"bullets"}' \
--export json \
--out ./transcript.json
```
### Export subtitles (SRT/VTT)
Transcribe and immediately export subtitles:
```bash
node {baseDir}/assemblyai.mjs transcribe "./path/to/video.mp4" --export srt --out ./subtitles.srt
node {baseDir}/assemblyai.mjs transcribe "./path/to/video.mp4" --export vtt --out ./subtitles.vtt
```
Or export subtitles from an existing transcript ID:
```bash
node {baseDir}/assemblyai.mjs subtitles <transcript_id> srt --out ./subtitles.srt
```
### Export paragraphs / sentences
```bash
node {baseDir}/assemblyai.mjs paragraphs <transcript_id> --out ./paragraphs.txt
node {baseDir}/assemblyai.mjs sentences <transcript_id> --out ./sentences.txt
```
### Fetch an existing transcript
```bash
node {baseDir}/assemblyai.mjs get <transcript_id> --format json
node {baseDir}/assemblyai.mjs get <transcript_id> --wait --format text
```
## Guidance
- Prefer `--out <file>` when output might be large.
- Keep API keys out of logs and chat; rely on env injection.
- If a user asks for EU processing/data residency, set `ASSEMBLYAI_BASE_URL` to the EU host.
- AssemblyAI requires that uploads and the subsequent transcript request use an API key from the same AssemblyAI project (otherwise you can get a 403 / 'Cannot access uploaded file').
Imported from the listed AgentSkill.sh category. Complete supplied package files and notices are retained. Required external tools and credentials are not installed. No bundled code was executed during import. Individual agent task behavior has not been tested.