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.
Metadata
Release files for iflow-mcp_mcp-audio 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| iflow_mcp_mcp_audio-0.1.0.tar.gz | 790.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| iflow_mcp_mcp_audio-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 797.0 kB
Release files / iflow_mcp_mcp_audio-0.1.0.tar.gz
| Download URL | iflow_mcp_mcp_audio-0.1.0.tar.gz |
|---|---|
| Size | 790.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ce4ee3ddb163d28a6266ca3ccd6fbebe98439ae67d34e609e7b943f1971e78c1
|
|
BLAKE2b-256 checksum How to use checksums |
5f326bfaadf1f8e91fe346c62d5f8c9dd08d37f3b63f468a0b32654e26f20d43
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|
Release files / iflow_mcp_mcp_audio-0.1.0-py3-none-any.whl
| Download URL | iflow_mcp_mcp_audio-0.1.0-py3-none-any.whl |
|---|---|
| Size | 6.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c26b98a4b79f84430049ff56f7e3e97cbf6718e28720713fe399fdacc8b71eab
|
|
BLAKE2b-256 checksum How to use checksums |
8667e921c042f4f01d476c91f63b41123072424adcfdf86bf189f368a1ed41f6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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}
|