
CrispASR Agent Transcriber
io.github.EmiyaKatuzPublished by GitHub account EmiyaKatuzv0.4.0Updated Oct 24, 2026
Transcribe and understand local audio/video with CrispASR and local models only.
Overview
Local-only MCP server that transcribes local audio and video files with CrispASR models, writing transcripts, subtitles and video keyframe manifests to disk.
- What you can do
- Transcribe local audio and video files into text, verbose JSON, SRT or VTT, with a metadata sidecar always written alongside the transcript, plus batch transcription of a folder and video understanding that captures synchronized keyframes and an agent-readable manifest. Detect the spoken language (English or Chinese) and route to the matching local model. Check CrispASR server health, list available backends, and resolve recommended local model paths. List approved model choices with local install status and explicitly download allowlisted model files.
- When to use it
- Useful when an assistant needs to turn local recordings, meetings or videos into transcripts or subtitles without uploading media, and when English or Chinese speech is expected. Also suited to batch processing a folder of media or extracting keyframes for video understanding.
- Requirements
- Runs as a local stdio process, typically via uvx with the mcp extra. Needs Node.js 20 or newer, uv, and ffmpeg. Requires local GGUF models (English, Chinese, language detection) downloaded explicitly with the models command, and the CrispASR binary, which can be auto-installed from GitHub releases. No API keys are required for transcription.
Installation
In SourceWeft
- Open CrispASR Agent Transcriber in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
crispasr-agent-transcriber
Local-only transcription for Codex and MCP-based AI agents, powered by CrispASR. No cloud uploads, no API keys required for transcription.
GitHub Release | npm installer | PyPI package | MCP Registry
What it does
Give it a local audio or video file. It:
- Probes the spoken language (English or Chinese) using CrispASR's FireRed LID.
- Starts a local CrispASR server with the right backend -- Cohere Transcribe for English, Qwen3-ASR for Chinese.
- Extracts audio from video with ffmpeg when needed.
- Calls CrispASR's
/v1/audio/transcriptionsendpoint. - Writes the transcript and metadata to disk.
- For video understanding, captures synchronized keyframes and writes an agent-readable manifest.
Everything runs on your machine. Media never leaves it.
Quick install for Codex
The plugin includes the Codex Skill, command-line tool, and MCP server. Media
stays on your computer. Model files are never downloaded during install/update;
use the explicit models command when you want the installer to fetch them.
1. Install prerequisites
Install Node.js 20 or newer, uv, and
ffmpeg. The installer uses uv to provide Python.
2. Run the installer
The installer:
- downloads the matching GitHub Release and verifies its SHA-256 checksum;
- installs the plugin under
~/plugins/crispasr-agent-transcriber; - installs the Python and MCP dependencies;
- detects CUDA, Vulkan, or CPU and installs the best CrispASR build;
- registers the plugin in the Codex Personal marketplace;
- preserves existing models, binaries, and outputs during updates.
3. Add the local models
Download the recommended local English, Chinese, and language-detection bundle:
The command downloads only approved GGUF files into:
Then verify the installation:
4. Enable the plugin
With a Codex build that supports plugin commands, run:
If the CLI has no codex plugin command, open the Codex desktop Plugins view
and install CrispASR Transcriber from the Personal marketplace. Start a new
conversation, then ask:
Update or uninstall
Uninstall preserves local models, CrispASR binaries, and outputs. Use
uninstall --purge-data only when those files should also be deleted. See
Plugin installation for manual installation and
troubleshooting.
Direct command-line use
After installation, you can run the transcription script without Codex:
Use with other AI agents
The MCP server is the cross-agent interface. Any agent that supports MCP stdio can run the released package directly from GitHub:
Use the same command and arguments in Claude Desktop, Cursor, or another MCP client. See AI agent integrations for a generic MCP configuration and Codex CLI command.
Maintainer publishing
End users do not need the release steps. Maintainers should follow the publishing guide for Codex Marketplace, PyPI, MCP Registry, and cross-agent distribution.
Required models
Install/update never downloads models. Use the explicit models command or
download these three recommended GGUF files into a local directory such as
models/:
Optional model IDs include english-q5-0, english-q5-1, english-q6,
english-q8, english-f16, chinese-q8, chinese-f16, lid-q2, lid-q8,
and lid-f16. Download a specific option with:
All three upstream model families are Apache 2.0 licensed.
For automatic English/Chinese routing, pass both ASR paths. The language probe runs first, and only the matching model is loaded:
For an explicit english or chinese profile, --model remains available as
a single-model override.
CrispASR binary management
The tool auto-detects, installs, and updates the CrispASR binary from GitHub releases.
When --manage-server is set and no binary is found, it auto-installs before
starting the server.
GPU detection
On install and update, the tool checks your hardware:
- CUDA --
nvidia-smiavailable, orCUDA_PATH/CUDA_HOMEset, or CUDA inPATH-> downloadscrispasr-*-cudavariant. - Vulkan --
vulkaninfoorVULKAN_SDKset (only when CUDA is absent) -> downloadscrispasr-*-vulkanvariant. - CPU -- fallback when no GPU toolkit is detected.
macOS always uses the universal binary.
Profiles
auto mode runs FireRed language detection on the media, then routes English
to Cohere or Chinese to Qwen3-1.7B. Mixed or uncertain content stops with a
clear error asking you to re-run with --profile english or --profile chinese.
Usage
Managed server (tool starts CrispASR for you)
Add --keep-server to leave the server running after transcription.
Manual server (you start CrispASR)
If the running server's backend doesn't match the selected profile, the tool prints the exact command you need to start the correct server.
Output formats
A .metadata.json sidecar is always written alongside the transcript.
Video files
Video files are detected automatically. ffmpeg extracts the audio track to a temporary mono 16 kHz WAV before sending it to CrispASR. The temporary file is deleted when transcription finishes.
All CLI flags
MCP server
Exposed tools:
Security model
- No cloud uploads. Media files stay on the local filesystem.
- No remote servers by default.
--server-urlonly accepts localhost unless--allow-remote-serveris explicitly passed. - No URL inputs. Only local file paths are accepted. URLs, S3, and other remote schemes are rejected.
- No shell injection. ffmpeg is called with argument lists and
shell=False. No user-controlled strings are interpolated into shell commands. - No implicit model downloads. Install/update never downloads models, and
CrispASR model auto-download (
-m auto) requires--allow-model-auto-download. Themodelscommand andcrispasr_download_modelstool download only allowlisted Hugging Face files. - Temporary files are cleaned up. Converted WAV files and LID probe windows are deleted when transcription finishes.
- Binary downloads are explicit. CrispASR binary installs only from the
official
CrispStrobe/CrispASRGitHub releases. - Verified plugin releases. The npm installer requires the plugin ZIP to match the SHA-256 value published in the same GitHub Release.
- Narrow installer writes. The installer manages only its plugin directory and the named Personal marketplace entry. Updates preserve local models, binaries, and outputs.
- Generated understanding stays local. Video keyframes, manifests, and agent context files are written under the selected output directory and are ignored by Git.
Verify
License
This project is licensed under the MIT License.
Third-party components and attribution
This tool orchestrates several independently-licensed projects. It does not bundle, fork, or redistribute their code -- it downloads pre-built binaries and calls them as subprocesses or HTTP services at runtime.
Model files must be downloaded separately by the user from their respective HuggingFace repositories. See Required models above.
Related projects
- CrispASR -- the ASR engine this tool wraps
- CrisperWeaver -- CrispASR's desktop GUI (not used by this tool)
Source: README.md at commit 07ba2df
Tools
0Version history
1- v0.4.0LatestSep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts