mcp-audio-tweaker
MCP Audio Tweaker
Documentation
MCP Audio Tweaker
A Model Context Protocol (MCP) server for batch audio processing and optimization using FFmpeg. This package provides parameter-based audio modifications including sample rate conversion, bitrate adjustment, volume control, channel configuration, and audio effects.
Features
- ๐ต Comprehensive Audio Processing: Sample rate conversion, bitrate adjustment, volume control, channel configuration
- ๐ง FFmpeg Integration: Leverages FFmpeg for robust, cross-platform audio processing
- ๐ฆ Batch Processing: Process multiple audio files concurrently with queue management
- ๐ฏ Preset System: Predefined configurations for common use cases (game audio, voice processing, music mastering)
- ๐ฎ Game Audio Optimized: Special presets for mobile, desktop, and console game development
- ๐ค ElevenLabs Integration: Optimized preset for ElevenLabs AI voice output
- ๐ MCP Compatible: Full integration with Claude Desktop and other MCP clients
- โก Concurrent Processing: Efficient queue-based processing for large batch operations
- ๐ Detailed Reporting: Comprehensive processing results and error handling
Installation
npm install -g mcp-audio-tweakerPrerequisites
- Node.js 18.0.0 or higher
- FFmpeg installed and available in system PATH
Installing FFmpeg
Windows:
# Using Chocolatey
choco install ffmpeg
# Using winget
winget install FFmpegmacOS:
# Using Homebrew
brew install ffmpegLinux:
# Ubuntu/Debian
sudo apt update && sudo apt install ffmpeg
# CentOS/RHEL
sudo yum install ffmpegQuick Start
MCP Integration with Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"audio-tweaker": {
"command": "npx",
"args": ["-y", "mcp-audio-tweaker"],
"env": {
"AUDIO_TWEAKER_LOG_LEVEL": "info"
}
}
}
}Standalone Usage
Check system requirements:
mcp-audio-tweaker --standalone checkProcess a single file:
mcp-audio-tweaker --standalone process \
--input input.wav \
--output output.mp3 \
--volume -3 \
--sample-rate 44100 \
--bitrate 192 \
--normalizeBatch process with preset:
mcp-audio-tweaker --standalone batch \
--input-dir ./audio/raw \
--output-dir ./audio/processed \
--preset game-audio-mobileList available presets:
mcp-audio-tweaker --standalone presetsMCP Tools
process_audio_file
Process a single audio file with custom operations.
Parameters:
- `inputFile` (string): Path to input audio file
- `outputFile` (string): Path for output file
- `operations` (object): Audio processing operations
- `overwrite` (boolean): Whether to overwrite existing files
Example:
{
"inputFile": "/path/to/input.wav",
"outputFile": "/path/to/output.mp3",
"operations": {
"volume": {
"adjust": -3,
"normalize": true,
"targetLUFS": -20
},
"format": {
"sampleRate": 44100,
"bitrate": 192,
"channels": 2,
"codec": "mp3"
},
"effects": {
"fadeIn": 0.1,
"fadeOut": 0.2
}
}
}batch_process_audio
Process multiple audio files in a directory.
Parameters:
- `inputDirectory` (string): Directory containing input files
- `outputDirectory` (string): Directory for processed files
- `filePattern` (string): Glob pattern for file matching
- `operations` (object): Audio processing operations
- `overwrite` (boolean): Whether to overwrite existing files
apply_preset
Apply predefined audio processing preset.
Parameters:
- `inputFile` (string): Path to input audio file
- `outputFile` (string): Path for output file
- `preset` (string): Preset name to apply
- `overwrite` (boolean): Whether to overwrite existing files
Available Presets:
- `game-audio-mobile`: Optimized for mobile games
- `game-audio-desktop`: High-quality for desktop games
- `game-audio-console`: Premium quality for consoles
- `elevenLabs-optimize`: Optimizes ElevenLabs AI voice output
- `voice-processing`: General voice and dialogue processing
- `music-mastering`: High-quality music mastering
- `sfx-optimization`: Sound effects and ambient audio
list_presets
List all available presets with descriptions.
Parameters:
- `category` (string, optional): Filter by category (`game`, `voice`, `music`, `effects`)
get_queue_status
Get current status of the audio processing queue.
Audio Operations
Volume Operations
{
"volume": {
"adjust": -3, // Volume adjustment in dB (-60 to +20)
"normalize": true, // Apply loudness normalization
"targetLUFS": -23 // Target LUFS for normalization
}
}Format Operations
{
"format": {
"sampleRate": 44100, // Sample rate (8000, 16000, 22050, 44100, 48000, 96000, 192000)
"bitrate": 192, // Bitrate in kbps (64-320)
"channels": 2, // Channel count (1, 2, 6, 8)
"codec": "mp3" // Codec (pcm, mp3, aac, vorbis, flac)
}
}Effects Operations
{
"effects": {
"fadeIn": 0.1, // Fade in duration in seconds
"fadeOut": 0.2, // Fade out duration in seconds
"trim": { // Trim audio
"start": 1.0, // Start time in seconds
"end": 30.0 // End time in seconds
},
"loop": { // Loop audio
"enabled": true,
"count": 3 // Number of loops
}
}
}Claude Desktop Usage Examples
Optimize ElevenLabs Voice Output
@audio-tweaker Apply the elevenLabs-optimize preset to the file /audio/voice-output.wav and save it as /audio/optimized-voice.mp3Batch Process Game Audio
@audio-tweaker Process all WAV files in /game-assets/audio/raw/ using the game-audio-mobile preset and save them to /game-assets/audio/mobile/Custom Voice Processing
@audio-tweaker Process /recordings/dialogue.wav with the following operations: normalize audio to -20 LUFS, convert to 22kHz mono MP3 at 128kbps, add 0.05s fade in and 0.1s fade out, and save as /processed/dialogue.mp3Check Audio Processing Status
@audio-tweaker What's the current status of the audio processing queue?Workflow Integration
Game Development Workflow
1. Generate AI Voice with ElevenLabs
2. Optimize with MCP Audio Tweaker: Apply `elevenLabs-optimize` preset
3. Platform-specific Processing: Use `game-audio-mobile`, `game-audio-desktop`, or `game-audio-console` presets
4. Integration: Import optimized audio into game engine
Music Production Workflow
1. Record/Import Audio
2. Master with Audio Tweaker: Apply `music-mastering` preset
3. Platform Optimization: Create platform-specific versions
4. Distribution: Export in required formats
Configuration
Environment Variables
- `AUDIO_TWEAKER_LOG_LEVEL`: Set logging level (`debug`, `info`, `warn`, `error`)
- `FFMPEG_PATH`: Custom FFmpeg binary path (optional)
Advanced Configuration
The package supports advanced FFmpeg configurations through direct parameter passing. See the FFmpeg documentation for additional options.
Error Handling
The package provides comprehensive error handling with specific error codes:
- `FILE_NOT_FOUND`: Input file does not exist
- `FFMPEG_NOT_FOUND`: FFmpeg not installed or not in PATH
- `INVALID_PARAMETERS`: Processing parameters validation failed
- `OUTPUT_WRITE_FAILED`: Cannot write to output location
- `PROCESSING_FAILED`: FFmpeg processing failed
- `PRESET_NOT_FOUND`: Requested preset does not exist
Performance
- Concurrent Processing: Default 2 concurrent operations (configurable)
- Queue Management: Efficient processing queue with pause/resume capabilities
- Memory Efficient: Streams audio data without loading entire files into memory
- Cross-platform: Optimized for Windows, macOS, and Linux
Supported Formats
Input Formats: MP3, WAV, OGG, FLAC, M4A, AAC
Output Formats: MP3, WAV, OGG, FLAC, M4A, AAC
Development
Building from Source
git clone https://github.com/your-org/mcp-audio-tweaker.git
cd mcp-audio-tweaker
npm install
npm run buildRunning Tests
npm test
npm run test:coverage
npm run test:ffmpegContributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests for new functionality
5. Submit a pull request
Complete Documentation
This README provides a quick overview. For comprehensive documentation:
๐ Getting Started
- **Installation Guide**: Complete setup instructions
- **Quick Start Tutorial**: Get running in 15 minutes
- **API Reference**: Complete API documentation
๐ง Support & Troubleshooting
- **Troubleshooting Guide**: Common issues and solutions
- **Contributing Guide**: How to contribute to the project
License
MIT License - see LICENSE file for details.
Support
- Issues: GitHub Issues
- Documentation: README
- Community: Discussions
Acknowledgments
- Built with FFmpeg for audio processing
- Uses Model Context Protocol for Claude Desktop integration
- Designed for Infinity Cube game audio workflow
Frequently asked questions
What is mcp-audio-tweaker?
mcp-audio-tweaker is MCP Audio Tweaker
How do I install mcp-audio-tweaker?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is mcp-audio-tweaker open source?
Yes โ it is hosted on GitHub at https://github.com/DeveloperZo/mcp-audio-tweaker and has 3 stars.
Related MCP tools
Model Context Protocol Servers
The Open-Source Multimodal AI Agent Stack: Connecting Cutting-Edge AI Models and Agent Infra
A MCP for Claude Desktop / Claude Code / Windsurf / Cursor to build n8n workflows for you
MCP server to provide Figma layout information to AI coding agents like Cursor
The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
Instant is the best backend for AI-coded apps. You get auth, permissions, storage, presence, and streams โ everything you need to ship apps your users will love.
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP