MCP server for audio transcription using SiliconFlow API
Project description
MCP-Audio Plugin
mcp-audio is an AIO-2030 compliant MCP plugin that performs voice-to-text transcription using the Audio speech recognition API.
It exposes the identify_voice method via both multipart/form-data and base64 formats, supports the AIO tools.call protocol, and returns JSON-RPC structured outputs.
Features
- Fully AIO-compliant MCP plugin (
/tools.call,/help) - Converts
.wav/.mp3audio files to transcripts using SiliconFlow - API key managed securely via
.envfile - Docker-compatible and minimal dependencies
- Registration-ready for AIO endpoint registry
Setup (Local)
1. Clone and Install
git clone git@github.com:AIO-2030/mcp-audio.git
cd mcp-audio
python -m venv venv && source venv/bin/activate
pip install -r requirements.txt
2. Add .env file
cp .env.example .env
Set your audio URL and API key:
AUDIO_URL=https--xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
3. Run the MCP server
python src/mcp_server.py
4. Docker
4.1 Build and Run
docker build -t mcp-audio .
docker run --env-file .env -p 8080:8080 mcp-audio
API Overview
POST /api/v1/mcp/voice_model
Upload audio file directly. Response:
{
"transcript": "hello world",
"confidence": 0.91,
"audio_hash": "a1b2c3..."
}
POST /api/v1/mcp/tools.call (AIO Protocol)
JSON-RPC format with base64-encoded audio. Response:
{
"method": "tools.call",
"params": {
"method": "identify_voice",
"inputs": [
{
"type": "audio",
"value": "<base64-audio>"
}
]
}
}
GET /api/v1/mcp/help
Auto-serves contents of mcp_audio_registration.json. Used by Queen AI for MCP discovery and service indexing.
Testing Tools
Base64 Voice Test
python test/test_audio_base64.py
Health Check
python health_check.py
MCP Registration (to AIO Endpoint Canister)
./register_mcp.sh
Requires jq, dfx, and a running endpoint_registry canister.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iflow_mcp_mcp_audio-0.1.0.tar.gz.
File metadata
- Download URL: iflow_mcp_mcp_audio-0.1.0.tar.gz
- Upload date:
- Size: 790.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce4ee3ddb163d28a6266ca3ccd6fbebe98439ae67d34e609e7b943f1971e78c1
|
|
| MD5 |
647f696525034724544e07c70a64f6c4
|
|
| BLAKE2b-256 |
5f326bfaadf1f8e91fe346c62d5f8c9dd08d37f3b63f468a0b32654e26f20d43
|
File details
Details for the file iflow_mcp_mcp_audio-0.1.0-py3-none-any.whl.
File metadata
- Download URL: iflow_mcp_mcp_audio-0.1.0-py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c26b98a4b79f84430049ff56f7e3e97cbf6718e28720713fe399fdacc8b71eab
|
|
| MD5 |
4c2d0aee1cb9c715ae990aa1fad905e5
|
|
| BLAKE2b-256 |
8667e921c042f4f01d476c91f63b41123072424adcfdf86bf189f368a1ed41f6
|