Skip to main content
Glama
Echoteka

Echoteka MCP

Official
by Echoteka
README.md
# echoteka-mcp: AI audio mastering for your assistant

[Echoteka](https://echoteka.ai) runs a remote [Model Context Protocol](https://modelcontextprotocol.io) (MCP) server. Connect it to Claude, Cursor, OpenAI Codex or any MCP client, and the assistant can measure a track's loudness, clean the marks an AI generator leaves in the audio, compare presets by ear and master the track to a streaming target.

- Server: `https://echoteka.ai/mcp` (streamable HTTP, no key, no account needed)
- Website and web lab: <https://echoteka.ai>
- MCP page with setup notes: <https://echoteka.ai/mcp>
- Machine-readable description: <https://echoteka.ai/mcp.json>

Nothing has to be installed for the hosted server. This package is a small stdio bridge for clients that cannot speak HTTP, and it reaches the same server.

## Connect

### Claude Code

```bash
claude mcp add --transport http echoteka https://echoteka.ai/mcp
```

### Claude Desktop

Option A, custom connector: open Settings, then Connectors, choose *Add custom connector* and paste `https://echoteka.ai/mcp`.

Option B, config file (`claude_desktop_config.json`), for versions that only accept local servers:

```json
{
  "mcpServers": {
    "echoteka": {
      "command": "npx",
      "args": ["-y", "echoteka-mcp"]
    }
  }
}
```

Restart the app after editing the file.

### Cursor

Add this to `~/.cursor/mcp.json`, or to `.cursor/mcp.json` inside a project:

```json
{
  "mcpServers": {
    "echoteka": {
      "url": "https://echoteka.ai/mcp"
    }
  }
}
```

### OpenAI Codex

```bash
codex mcp add echoteka --url https://echoteka.ai/mcp
```

Or add this to `~/.codex/config.toml`:

```toml
[mcp_servers.echoteka]
url = "https://echoteka.ai/mcp"
```

### Any other stdio client

```json
{
  "mcpServers": {
    "echoteka": {
      "command": "npx",
      "args": ["-y", "echoteka-mcp"]
    }
  }
}
```

### Using your account's masters

The anonymous endpoint is enough to try everything. To use the masters of your own Echoteka account, connect to the sign-in endpoint instead. The client opens an Echoteka page in your browser, you sign in and press Allow, and the assistant receives a token limited to mastering. It never sees your password.

- Remote clients: use `https://echoteka.ai/mcp/oauth` as the URL, for example `claude mcp add --transport http echoteka https://echoteka.ai/mcp/oauth`.
- This package: set `ECHOTEKA_MCP_URL=https://echoteka.ai/mcp/oauth` in the environment of the process that starts it.

## Tools

The live `tools/list` response of `https://echoteka.ai/mcp` (checked 14 October 2026) contains nine tools:

| Tool | What it does | Cost |
|---|---|---|
| `get_service_info` | What Echoteka does, what is free, where the rules are. Call once at the start. | free |
| `list_presets` | Mastering presets with their target loudness in LUFS. | free |
| `check_limits` | Free masters left today, when they reset, credit balance, upload limit. | free |
| `analyze_track` | Integrated LUFS, sample peak, duration, sample rate, stereo correlation. No processing. | free |
| `clean_ai_trace` | Removes marks an AI generator leaves in the audio, such as narrow tones above 15 kHz and seams between generated blocks. Loudness and tone stay as they are. | free, no credit |
| `preview_styles` | Masters 24 seconds of a track in 2 to 6 presets and returns each loudness and a listen link. | free, 6 per day |
| `master_track` | Masters one track to a preset and target, returns a job id. `dry_run` shows what would be used first. | free daily master, then credits |
| `batch_master` | Masters up to 10 tracks with the same settings. Album mode keeps the loudness balance between tracks. | one free run or a credit per track |
| `get_job` | Status and result of a job: loudness, true peak, loudness range, and a signed download link. | free |

Typical flow: `check_limits` → `analyze_track` → `clean_ai_trace` (optional, for AI-generated tracks) → `preview_styles` → `master_track` → poll `get_job`.

Audio is passed as a public https link. Echoteka fetches the file from the link; the assistant never uploads bytes through the protocol. Share links from Suno song pages, Google Drive and Dropbox are resolved to the file when possible.

## Pricing

- Analysis, artifact cleanup, previews and job status are free.
- One full master per day is free, with no account.
- Signing in adds a few welcome masters and a free master per day.
- Extra masters use credits. Credits are bought by a person on the website; the server has no payment tool and an assistant cannot pay.

Current details and prices: <https://echoteka.ai/pricing>.

## Honest limits

- Cleanup removes artifacts a generator leaves in the audio. It does not change where a track came from. If a platform or distributor asks you to disclose AI use, disclose it.
- Mastering is not mixing. It cannot fix a vocal that sits too low or a muddy mix.
- Free masters are not stored for long. Download the result when the job is done.

## Configuration

| Variable | Default | Purpose |
|---|---|---|
| `ECHOTEKA_MCP_URL` | `https://echoteka.ai/mcp` | Server the bridge connects to. Use `https://echoteka.ai/mcp/oauth` for sign-in. |

The bridge needs Node.js 18 or newer and outbound HTTPS access to `echoteka.ai`.

## Docker

```bash
docker build -t echoteka-mcp .
docker run -i --rm echoteka-mcp
```

The image contains only the bridge. The server itself stays hosted at `https://echoteka.ai/mcp`.

## Privacy and terms

- Privacy policy: <https://echoteka.ai/privacy>
- Terms of service: <https://echoteka.ai/terms>
- Refunds: <https://echoteka.ai/refund>

## Support

Email <support@echoteka.ai>, or open an issue in this repository.

## License

MIT. See [LICENSE](LICENSE). Copyright (c) 2026 Echoteka.

TDQS

A4.4/5.0

Scored across 9 tools

Disambiguation5/5

Each tool has a clearly distinct purpose, and descriptions explicitly cross-reference near-neighbors (e.g. list_presets vs preview_styles vs get_service_info, analyze_track vs get_job metrics). master_track vs batch_master differ clearly by cardinality, and the info tools (get_service_info/check_limits/list_presets) are cleanly separated by scope. Little risk of misselection.

Naming Consistency5/5

All nine tools follow a consistent snake_case verb_noun pattern: get_service_info, list_presets, check_limits, analyze_track, master_track, batch_master, clean_ai_trace, preview_styles, get_job. No mixed conventions or casing. batch_master is the only slight variant but stays within the same readable pattern.

Tool Count5/5

Nine tools is well-scoped for an audio mastering service, with no redundant or filler entries. Each tool maps to a distinct step (orient, check limits, list presets, analyze, preview, master single/batch, clean, poll).

Completeness4/5

The surface covers the full mastering lifecycle: orientation, limits, presets, pre-analysis, preview, single/batch mastering, cleanup, and result retrieval. Minor gaps exist, such as no job cancellation or way to list/enumerate existing jobs (only get_job by id), but core workflows are fully supported.

Maintenance

ActivityMaintained
ResponsivenessNo issues