# FunASR [Health: Active]

**Category:** 🎙️ Speech-to-Text  
**Repository:** https://github.com/modelscope/FunASR  
**GitHub Stars:** 20795  
**Views:** 1  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/funasr

## Description
Transcribe local audio with FunASR and SenseVoice using private, on-device inference.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "funasr": {
    "command": "uvx",
    "args": ["torch"]
  }
}
```

## Documentation

## What the FunASR MCP server does

The FunASR MCP server connects an MCP-compatible client to local speech-recognition capabilities from the FunASR project. Its documented use case is transcribing local audio with FunASR and SenseVoice while keeping inference on the device. The repository identifies an MCP server example for use with Claude and Cursor.

This fits workflows where an agent needs to work with recordings available on the host machine. Instead, it provides an MCP-facing route to speech models that are selected and executed locally through the FunASR ecosystem.

## How it works

FunASR is organized as a toolkit with separate models and runtime paths. The repository documents Python `AutoModel` usage for models such as Fun-ASR-Nano and SenseVoiceSmall, with CPU and GPU execution depending on the installed PyTorch environment. SenseVoiceSmall is also shown with optional VAD and CAM++ speaker-processing components.

The FunASR MCP server is located in the repository’s `examples/mcp_server/` area. At the model level, audio is supplied to a local inference pipeline and the resulting transcription is returned to the calling workflow.

Model selection matters. Fun-ASR-Nano covers Chinese, English, Japanese, and specified Chinese dialect groups and regional accents in the documented base checkpoint. Fun-ASR-MLT-Nano is a separate 31-language checkpoint. SenseVoiceSmall is a five-language checkpoint with emotion and audio-event tags. These capabilities should not be assumed to apply equally to every checkpoint or serving backend.

## Tools and capabilities

The documented scope supports these uses:

- Transcribe local audio with FunASR models.
- Transcribe audio with SenseVoiceSmall.
- Run inference on CPU or compatible NVIDIA GPU environments.
- Process audio through an MCP client such as Claude or Cursor.
- Use VAD and speaker-aware pipelines when configuring the underlying FunASR components separately.

Speaker processing has a specific boundary: CAM++ embeddings are clustered into anonymous speaker indices that are local to one recording. They do not identify enrolled or known people.

## Limitations and notes

Use the repository’s MCP example for those operational details rather than inferring them from the Python quickstarts.

Checkpoint and runtime compatibility are not interchangeable. GPU execution requires a matching PyTorch and torchaudio installation, and the repository advises using CUDA only when the environment detects a compatible GPU. GGUF models use a llama.cpp path and are not Python `AutoModel` checkpoints. Timestamp, language, speaker, and tagging behavior depends on the selected model and pipeline. Benchmarking with representative audio is recommended before committing to a model or runtime.

_Full upstream README: https://allmcps.com/mcp/funasr/readme_

