Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Real-time pitch detection and score alignment for a singer, from microphone input
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
PITCH_BACKENDDu brauchst
Welche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Öffne Claude Desktop → Settings → Developer → Edit Config und füge dies in claude_desktop_config.json ein
{
"mcpServers": {
"pitch": {
"command": "uvx",
"args": [
"pitch-mcp"
],
"env": {
"PITCH_BACKEND": "your-value"
}
}
}
}Führe das in deinem Terminal aus
claude mcp add pitch --env PITCH_BACKEND=your-value -- uvx pitch-mcpTrag die leeren Werte ein, bevor du ihn startest.
In .cursor/mcp.json in deinem Projekt oder in ~/.cursor/mcp.json einfügen
{
"mcpServers": {
"pitch": {
"command": "uvx",
"args": [
"pitch-mcp"
],
"env": {
"PITCH_BACKEND": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
In .vscode/mcp.json in deinem Projekt einfügen
{
"servers": {
"pitch": {
"type": "stdio",
"command": "uvx",
"args": [
"pitch-mcp"
],
"env": {
"PITCH_BACKEND": "your-value"
}
}
}
}Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
PITCH_BACKEND envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 8. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto raulkivi bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (0.3.1) kam vor 43 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du Python (uv) auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, aamio rendezvous
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:↓ Downloads pro Wochei★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Meet an agent you have not met, exchange messages that expire, and prove it happened. No account.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
MCP server for real-time pitch detection and score alignment. Listens to a singer via microphone and reports their current position in a score and whether they are singing in tune.
Covers three goals:
Supports both offline analysis of pre-recorded audio and real-time microphone input.
| Tool | Description |
|---|---|
analyze_recording | Offline: analyse a WAV file against a reference MusicXML score; returns per-note accuracy and highlights ("flat on E5 in m.12–14 (-35 cents avg)") |
start_practice | Load a score and open the microphone in one call; returns a session_id |
load_score | Load a MusicXML score into a named session; returns a session_id |
describe_score | Summarize a score cheaply: title, key, tempo, parts with IDs and ranges |
start_monitoring | Open the microphone and begin real-time pitch detection |
get_current_position | Poll the current score position and pitch accuracy |
stop_monitoring | Stop the microphone and return a session summary with highlights |
list_sessions | List open practice sessions with their part, state (loaded / monitoring) and idle time |
list_capabilities | Return server metadata: pitch backend, microphone availability |
health_check | Check that runtime dependencies (librosa, sounddevice/portaudio) are available |
Scores are given as musicxml_path (a .musicxml, .xml or .mxl file, preferred) or as inline musicxml text, never both. Paths must lie inside the output root (SHEET_MUSIC_OUTPUT_ROOT, default the working directory), the client's MCP roots or a folder in SHEET_MUSIC_INPUT_ROOTS.
analyze_recording, load_score and start_practice take an optional measures: [start, end] (printed bar numbers, inclusive; a pickup is 0) to practise or analyse only those bars. Reported measures keep their printed numbers.
cd pitch-mcp
uv sync
For real-time monitoring (start_monitoring), PortAudio is required:
# Ubuntu / Debian
sudo apt install libportaudio2
Quick install: on Ubuntu/Debian/Linux Mint, bash install.sh handles uv and the optional libportaudio2 install for you — see SETUP.md for the full non-technical walkthrough. Ready-made client configs (Claude Desktop, Cursor, Windsurf, Continue, Zed) are in examples/. If something goes wrong, check TROUBLESHOOTING.md.
uv run pitch-mcp
| Variable | Default | Description |
|---|---|---|
PITCH_BACKEND | librosa | Pitch detection algorithm: librosa or crepe |
PITCH_SESSION_IDLE_MINUTES | 10 | Close a practice session (and its microphone) after this many idle minutes; 0 never closes. stop_monitoring still returns the summary of a closed session for an hour, with "timed_out": true. |
crepe requires a manual TensorFlow install (~500 MB) and downloads ~50 MB of model weights on first use. The default librosa backend (pYIN algorithm) works well for singing voice with no extra setup.
// Offline analysis of a recording
{ "tool": "analyze_recording", "arguments": { "audio_path": "/path/to/recording.wav", "musicxml_path": "/path/to/score.mxl", "part": "Soprano" } }
// Real-time session {"tool": "describe_score", "arguments": {"musicxml_path": "/path/to/score.mxl"}} // → returns parts with IDs ("P1" …), names and ranges
{"tool": "start_practice", "arguments": {"musicxml_path": "/path/to/score.mxl", "part": "Alto", "measures": [17, 24]}} // → returns {"session_id": "abc123", "measure_count": 8, ..., "status": "started"} // (the same as load_score followed by start_monitoring)
{"tool": "get_current_position", "arguments": {"session_id": "abc123"}} // → returns measure, beat, expected pitch, detected pitch, accuracy
{"tool": "stop_monitoring", "arguments": {"session_id": "abc123"}} // → summary with accuracy_histogram and highlights, e.g. "flat in m.19–21 (-32 cents avg over 5 notes)"
Audio must be 16-bit PCM WAV. MP3 and FLAC are not supported.
# Unit tests (no microphone or audio required)
VIRTUAL_ENV= .venv/bin/pytest tests/ -v
VIRTUAL_ENV= .venv/bin/pytest tests/ -v -m integration
VIRTUAL_ENV= .venv/bin/pytest tests/ -v -m manual
294 of the 300 total tests are unit tests (292 run, 2 skipped), run against mocks and synthetic (in-memory) WAV data — none require real audio hardware or pre-recorded fixtures. The other 6 are marked integration (4 — offline analysis against the committed tests/fixtures/ pair) or manual (2 — full real-microphone session lifecycle) and are excluded from a plain pytest tests/ run by tests/conftest.py; select them explicitly with -m integration / -m manual.
libportaudio2 — required for real-time microphone input (start_monitoring)| Phase | Status |
|---|---|
| Phase A — offline analysis | Complete. DTW-based alignment (dtaidistance); 292 unit tests plus 4 -m integration tests against a committed fixture pair (tests/fixtures/) |
| Phase B — real-time monitoring | Complete. Position tracking is audio-driven (matches detected pitch, not just elapsed time); tempo_bpm override supported. Covered by unit tests with mocked sounddevice; full-lifecycle -m manual tests exist for real-microphone verification but require real hardware to run |