# Quick Start: IRCAM Amplify MCP Server
Get started with the IRCAM Amplify MCP Server in under 5 minutes.
## Prerequisites
- **Node.js 18+** installed ([download](https://nodejs.org/))
- **IRCAM Amplify API Key** from [app.ircamamplify.io](https://app.ircamamplify.io)
- An MCP-compatible client (Claude Desktop, Cline, etc.)
## Installation
### Option 1: npm (recommended)
```bash
npm install -g ircam-amplify-mcp
```
### Option 2: npx (no install)
```bash
npx ircam-amplify-mcp
```
### Option 3: From source
```bash
git clone https://github.com/your-org/ircam-amplify-mcp.git
cd ircam-amplify-mcp
npm install
npm run build
```
## Configuration
### 1. Set your API key
```bash
export IRCAM_AMPLIFY_API_KEY="your-api-key-here"
```
Or add to your shell profile (`~/.bashrc`, `~/.zshrc`):
```bash
echo 'export IRCAM_AMPLIFY_API_KEY="your-api-key-here"' >> ~/.zshrc
source ~/.zshrc
```
### 2. Configure your MCP client
#### Claude Desktop
Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
```json
{
"mcpServers": {
"ircam-amplify": {
"command": "npx",
"args": ["ircam-amplify-mcp"],
"env": {
"IRCAM_AMPLIFY_API_KEY": "your-api-key-here"
}
}
}
}
```
#### Cline (VS Code)
Add to your Cline MCP settings:
```json
{
"ircam-amplify": {
"command": "npx",
"args": ["ircam-amplify-mcp"],
"env": {
"IRCAM_AMPLIFY_API_KEY": "your-api-key-here"
}
}
}
```
## Usage Examples
Once configured, ask your LLM to use the IRCAM Amplify tools:
### Analyze a song
> "Analyze this song and tell me its genre, mood, and tempo: https://example.com/song.mp3"
The LLM will use `analyze_music` and return something like:
```
This track is Electronic/House at 128 BPM in A minor.
The mood is energetic and uplifting, featuring synths, drums, and bass.
```
### Separate stems for karaoke
> "I want to create a karaoke version of this song. Please separate the vocals: https://example.com/track.mp3"
The LLM will use `separate_stems` and return:
```
I've separated the stems. Here are the download links (valid 24h):
- Vocals: [link]
- Instrumental (drums + bass + other): [links]
```
### Check if music is AI-generated
> "Is this track AI-generated? https://example.com/mystery.mp3"
The LLM will use `detect_ai_music` and return:
```
This track appears to be human-made with 87% confidence.
```
### Analyze loudness for mastering
> "Check if this master is ready for Spotify: https://example.com/master.wav"
The LLM will use `analyze_loudness` and return:
```
Loudness analysis:
- Integrated: -14.2 LUFS (Spotify target: -14 LUFS) ✓
- True Peak: -1.0 dB (below -1 dB limit) ✓
- Dynamic Range: 8.5 LU (good dynamics)
This master is ready for Spotify!
```
## Available Tools
| Tool | Description |
|------|-------------|
| `analyze_music` | Extract genre, mood, tempo, key, instruments |
| `separate_stems` | Split into vocals, drums, bass, other |
| `detect_ai_music` | Detect AI vs human-made music |
| `analyze_loudness` | Measure LUFS, peak, dynamic range |
| `check_job_status` | Poll async operations |
## Troubleshooting
### "Missing API key" error
Ensure `IRCAM_AMPLIFY_API_KEY` is set in your environment or MCP config.
### "Invalid API key" error
Verify your key at [app.ircamamplify.io](https://app.ircamamplify.io). Keys may expire or be revoked.
### "Cannot access URL" error
The audio URL must be:
- Publicly accessible (no authentication required)
- Direct link to audio file (not a streaming page)
- Supported format: MP3, WAV, FLAC, OGG, or M4A
### Stem separation taking too long
Stem separation is async for files > 30 seconds. The tool returns a `job_id`. Ask the LLM to "check the status" and it will poll until complete.
## Support
- **Documentation**: [docs.ircamamplify.io](https://docs.ircamamplify.io)
- **Issues**: [GitHub Issues](https://github.com/your-org/ircam-amplify-mcp/issues)
- **IRCAM Support**: contact@ircamamplify.com