跳到正文
FunCoding

FunASR

官方 MCP Registry 已收录

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

Star
20,651
版本
v0.1.2
许可证
MIT
最近提交
2026年10月10日

FunASR MCP Server

Model Context Protocol server that gives AI assistants local audio transcription with SenseVoiceSmall by default.

Setup

1. Install dependencies

pip install funasr

2. Optional: run with Docker

The Dockerfile starts the MCP server over stdio and is suitable for MCP directory checks that initialize the server and call tools/list.

docker build -t funasr-mcp examples/mcp_server
docker run --rm -i \
  -e FUNASR_DEVICE=cpu \
  --mount type=bind,src=/path/to/audio,dst=/audio,readonly \
  --mount type=volume,src=funasr-mcp-cache,dst=/root/.cache/modelscope \
  funasr-mcp

Verify the image entrypoint and MCP handshake without downloading a model:

python examples/mcp_server/smoke_test.py funasr-mcp

When submitting this server to MCP directories such as Glama, use this folder as the Docker build context so the container entrypoint runs funasr_mcp.py. The repository root glama.json declares GitHub maintainer ownership for Glama, while the glama.json file in this directory declares the container command and metadata for directory scanners.

Official MCP Registry

The versioned Registry metadata is in server.json. It points to the public GHCR image and asks clients to mount one host audio directory at /audio read-only. The Dockerfile carries the matching OCI ownership label:

Current published release:

LABEL io.modelcontextprotocol.server.name="io.github.modelscope/funasr-mcp"

The release workflow validates the metadata against the official schema, builds the image, performs an MCP initialize and tools/list handshake, pushes the versioned image to GHCR, and publishes server.json through the official mcp-publisher CLI.

To release a new MCP server version:

  1. Update version and the OCI image tag in server.json together.
  2. Merge the change after the MCP validation workflow passes.
  3. Have a modelscope organization Owner push the matching mcp-v<version> tag, for example mcp-v0.1.2.
  4. Approve the protected mcp-registry-publish environment deployment.

The official Registry only grants the io.github.modelscope/* namespace to a GitHub organization Owner. Keep the publish environment restricted to release tags and require a maintainer approval because its OIDC token can publish the organization namespace.

After publication, clients can run the pinned image directly:

docker run --rm -i \
  --mount type=bind,src=/path/to/audio,dst=/audio,readonly \
  --mount type=volume,src=funasr-mcp-cache,dst=/root/.cache/modelscope \
  ghcr.io/modelscope/funasr-mcp:0.1.2

When using the container, pass tool paths under /audio, such as /audio/meeting.wav.

Glama submission checklist

Use these values when adding the server at https://glama.ai/mcp/servers:

FieldValue
Repository URLhttps://github.com/modelscope/FunASR
Docker build contextexamples/mcp_server
Dockerfile pathexamples/mcp_server/Dockerfile
Server commandpython /app/funasr_mcp.py
Expected MCP tooltranscribe_audio

After Glama finishes evaluation, verify that the listing or API shows an evaluated quality score before adding it to directory PRs. An HTTP 200 from the listing or badge endpoint alone does not prove that a score has been assigned:

[![modelscope/FunASR MCP server](https://glama.ai/mcp/servers/modelscope/FunASR/badges/score.svg)](https://glama.ai/mcp/servers/modelscope/FunASR)

If the badge endpoint still returns 404, keep the badge out of external directory submissions until the Glama listing is live.

Directory listings

The FunASR MCP server is published in the official Registry and listed on mcp.so:

3. Configure your AI tool

Claude Code (~/.claude.json):

{
    "mcpServers": {
        "funasr": {
            "command": "python",
            "args": ["/path/to/examples/mcp_server/funasr_mcp.py"],
            "env": {"FUNASR_DEVICE": "cuda"}
        }
    }
}

Claude Desktop (claude_desktop_config.json):

{
    "mcpServers": {
        "funasr": {
            "command": "python",
            "args": ["/path/to/funasr_mcp.py"],
            "env": {"FUNASR_DEVICE": "cpu"}
        }
    }
}

Cursor (Settings → MCP Servers → Add):

  • Command: python /path/to/funasr_mcp.py
  • Environment: FUNASR_DEVICE=cuda

Tools

transcribe_audio

Transcribe a speech audio file to text.

Parameters:

NameTypeRequiredDescription
audio_pathstringYesPath to audio file (wav, mp3, flac, m4a, ogg)
languagestringNoauto, zh, yue, en, ja, or ko (default: auto)

Returns: Transcribed text with per-segment timestamps when the model returns them.

Example Usage

Once configured, ask your AI assistant:

  • "Transcribe the meeting recording at ~/Downloads/meeting.wav"
  • "What was said in this audio file? /path/to/interview.mp3"
  • "Convert this voice memo to text: ~/voice_note.m4a"

Environment Variables

VariableDefaultDescription
FUNASR_DEVICEcpuDevice: cuda, cpu, or mps
FUNASR_MODELiic/SenseVoiceSmallModel name or local model path passed to AutoModel

Features

  • Five-language transcription — Mandarin, Cantonese, English, Japanese, and Korean
  • Automatic detection or explicit hints — auto, zh, yue, en, ja, and ko
  • VAD segmentation — splits longer audio before recognition
  • Optional segment timestamps — included only when the configured model returns them
  • Configurable local inference — choose the model and CPU, CUDA, or MPS with environment variables
  • No API key needed — fully local inference
  • MIT licensed, privacy-friendly (audio never leaves your machine)

Verified Compatibility

ToolStatus
Claude Code✅ Tested
Claude Desktop✅ Compatible
Cursor✅ Compatible
Windsurf✅ Compatible
Any MCP client✅ Standard protocol

同类 MCP Server

tldraw

Draw and visually collaborate with your agents on tldraw's canvas.

TLtldraw/tldraw51k近 7 天新增 105 个 star

精选

mcp-for-blender

让智能体在 Blender 里建模,搭建和修改 3D 场景。

AHahujasid/mcp-for-blender30k近 7 天新增 489 个 star

screenpipe

Search your local screen recordings, audio transcripts, and computer activity from screenpipe.

SCscreenpipe/screenpipe22k近 7 天新增 99 个 star

精选

unity-mcp

在 Unity 编辑器里管理资源、控制场景、编辑脚本和运行测试。

COCoplayDev/unity-mcp15k近 7 天新增 154 个 star

Unity-MCP

AI Skills, MCP Tools, and CLI for Unity Engine. Full AI develop and test loop. Use cli for quick setup. Efficient token usage, advanced tools. Any C# method may be turned into a tool by a single line. Works with Claude Code, Gemini, Copilot, Cursor and any other absolutely for free.

IVIvanMurzak/Unity-MCP4.4k近 7 天新增 37 个 star

精选

davinci-resolve-mcp

通过脚本接口控制达芬奇:剪辑、调色、渲染和素材管理。

SAsamuelgursky/davinci-resolve-mcp3.5k近 7 天新增 114 个 star