spec-score-mcp
Spec Score MCP
Bewerten Sie Ihre Spezifikationen, bevor Claude sie umsetzt.
Eine ausgewogene Spezifikation erzeugt ausgewogenen Code. Eine unausgewogene Spezifikation erzeugt kreative Fiktion.
Das Problem
Wenn Ihre Spezifikation auf einigen Achsen detailliert, auf anderen jedoch vage ist, bittet Claude nicht um Klärung — es füllt die Lücken selbst aus. Das Ergebnis lässt sich kompilieren, die Tests bestehen, aber es ist nicht das, was Sie beabsichtigt haben.
Dieses Tool erkennt dies, bevor Sie mit der Umsetzung beginnen. Es bewertet Ihre Spezifikation auf 4 Achsen, zeigt Ihnen, welche am schwächsten ist, und gibt Ihnen einen konkreten Tipp zur Verbesserung.
Related MCP server: MCP Prompt Optimizer
4 Achsen
Achse | Beantwortete Frage |
Vollständigkeit | Kann Claude den gesamten Umfang dessen verstehen, was gebaut werden soll? |
Klarheit | Gibt es nur eine Möglichkeit, diese Spezifikation zu interpretieren? |
Einschränkungen | Weiß Claude, was NICHT gebaut werden soll? |
Spezifität | Gibt es konkrete, testbare Details? |
Jede Achse wird mit 0,0 bis 1,0 bewertet. Der Ausgewogenheitswert (Balance Score) misst, wie gleichmäßig die 4 Achsen abgedeckt sind.
Ausgewogenheit ist wichtiger als Einzelbewertungen. Eine Spezifikation, die auf allen 4 Achsen 0,50 erreicht (Ausgewogenheit: 0,97), liefert ein besseres Ergebnis als eine mit 0,95 / 0,95 / 0,20 / 0,90 (Ausgewogenheit: 0,58). Warum? Genau diese eine schwache Achse — Einschränkungen bei 0,20 — ist der Bereich, in dem Claude improvisieren wird. Sie haben zwar detailliert beschrieben, was gebaut werden soll, aber vergessen zu erwähnen, was außerhalb des Rahmens liegt. Also baut Claude alles, worum Sie gebeten haben, plus Funktionen, die Sie nicht wollten.
Im Netzdiagramm gilt: Ein gleichmäßiger Diamant schlägt eine scharfe Spitze.
Urteile
Urteil | Bedeutung |
SHIP IT | Spezifikation ist bereit — Claude weiß, was zu bauen ist und was nicht |
ALMOST | Eine Achse benötigt eine kleine Korrektur, bevor Sie beginnen |
DRAFT | Mehrere Achsen benötigen Arbeit, aber die Struktur ist vorhanden |
VAGUE | Gut organisiert, aber zu abstrakt, um darauf aufzubauen |
UNBOUNDED | Klares Ziel, aber keine Grenzen — Claude wird zu viel bauen |
OVER-CONSTRAINED | Viele Regeln, aber unklar, was das eigentliche Ziel ist |
SKETCH | Ausgangspunkt — benötigt Details auf den meisten Achsen |
Noch kein SHIP IT? Das Tool sagt Ihnen, welche Achse am schwächsten ist und was hinzugefügt werden muss. Korrigieren Sie diese Achse, bewerten Sie erneut und wiederholen Sie den Vorgang. Die meisten Spezifikationen erreichen SHIP IT in 2-3 Runden.
Installation
git clone https://github.com/openpoem/spec-score-mcp.git
cd spec-score-mcp && npm install && npm run build
claude mcp add spec-score -- node $(pwd)/dist/mcp.jsDie 3 Tools sind jetzt in jeder Claude Code-Sitzung verfügbar.
Verwendung
Slash-Befehle
Klonen Sie dieses Repo, um die integrierten Slash-Befehle zu erhalten:
/project:scan my-feature-spec.mdLiest die Datei, bewertet sie und schreibt eine my-feature-spec.md.scored.md mit Bewertungen, Urteil, Tipp und einem Netzdiagramm.
/project:compare blueprint.md implementation.mdBewertet beide Dateien und schreibt eine compared.scored.md mit Netzdiagrammen im direkten Vergleich.
Direkte Tool-Nutzung
Die 3 MCP-Tools funktionieren in jeder Claude Code-Konversation:
Tool | Funktion |
| Bewertet eine Spezifikation auf 4 Achsen, gibt Ausgewogenheitswert und Urteil zurück |
| Erzeugt ein SVG-Netzdiagramm aus den Bewertungen |
| Direkter Vergleich zweier bewerteter Spezifikationen |
Fragen Sie Claude: "Score this spec", "Show me the radar chart" oder "Compare these two specs".
Beispiel: von UNBOUNDED zu SHIP IT
Dieses Tool bewertet seine eigene Spezifikation — vier Runden, wobei jeweils die schwächste Achse korrigiert wurde:
Runde 1: die Idee
Baue ein Tool zur Bewertung von Spezifikationen
UNBOUNDED 0.12 Tip: What does 'scoring' mean? What axes? What output?Eine Achse ist hoch (Klarheit — das Ziel ist klar), alles andere liegt nahe bei Null. Claude würde... irgendetwas bauen. Eine Web-App? Ein CLI? Eine VS Code-Erweiterung? Keine Möglichkeit, das zu wissen.
Runde 2: Kontext hinzufügen
Baue einen MCP-Server, der Spezifikationen auf 4 Achsen bewertet: Vollständigkeit, Klarheit, Einschränkungen, Spezifität. Jede Achse ist 0,0-1,0. Gibt einen Ausgewogenheitswert und ein Urteil zurück.
ALMOST 0.67 Tip: What are the verdicts? What does the tool NOT do?Jetzt weiß Claude, was zu bauen ist. Aber die Einschränkungen sind immer noch schwach — es könnte automatische Korrekturen, CI-Integration oder eine Datenbank hinzufügen.
Runde 3: Grenzen hinzufügen
Drei Tools: spec_score, spec_visualize, spec_compare. Nicht-Ziele: keine automatische Korrektur, keine CI-Integration, keine Speicherung.
SHIP IT 0.84 Tip: Add testable criteria — what balance maps to which verdict?Die Schwelle wurde überschritten. Claude weiß jetzt, was zu bauen ist UND was nicht gebaut werden soll. Spezifität ist immer noch die schwächste Achse.
Runde 4: testbare Details hinzufügen
Balance = 1 - sqrt(Varianz)/Mittelwert. SHIP IT > 0,75, ALMOST > 0,60, plus musterbasierte Urteile. Node.js, MCP SDK, stdio-Transport.
SHIP IT 0.95 Spec is ready for implementation.Vier Runden: 0,12 → 0,67 → 0,84 → 0,95. Jede Runde hat genau eine Sache korrigiert.
Die Mathematik
Claude bewertet jede Achse (0,0 - 1,0)
Normalisierung des Vektors:
v / ||v||Ausgewogenheit:
1 - sqrt(Varianz) / MittelwertUrteil: Ausgewogenheitsschwellenwert + Achsen-Musterabgleich
Die Intelligenz der Bewertung kommt von Claude, nicht vom Algorithmus. Der Algorithmus misst nur die Ausgewogenheit.
Projektstruktur
src/
mcp.ts # MCP server (3 tools)
score.ts # Scoring engine
visualize.ts # SVG radar charts
.claude/
commands/
scan.md # /project:scan command
compare.md # /project:compare commandOpenPoem — spec-score-mcp
MIT-Lizenz.
© 2026 OpenPoem. info@openpoem.org
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
v2.0.2- First observed
spec_compare - First observed
spec_score - First observed
spec_visualize
TDQS
Scored across 3 tools
The tools have overlapping purposes that could cause confusion. spec_score and spec_visualize both score a spec on the same four axes and provide the same analysis, making them nearly redundant. Only spec_compare has a clearly distinct function by comparing two specs, but the other two tools are ambiguous in their differentiation.
The naming follows a consistent pattern with all tools using the prefix 'spec_' followed by a verb (compare, score, visualize). This makes the purpose of each tool predictable and readable, though the similarity in naming between spec_score and spec_visualize contributes to the disambiguation issue.
With 3 tools, the count is reasonable for a server focused on spec evaluation. It covers core functions like scoring, comparing, and visualizing specs, which aligns well with the server's purpose, though the overlap between spec_score and spec_visualize suggests the set could be streamlined without losing functionality.
The tool surface is mostly complete for spec evaluation, covering scoring, comparison, and visualization. However, there is a notable gap in tools for editing or updating specs based on the analysis, which could limit workflow coverage. The redundancy between spec_score and spec_visualize also indicates inefficiency rather than a functional gap.
Maintenance
Related MCP Connectors
PQS scores any prompt before the model runs. 8 dimensions. 5 frameworks. Pre-flight, not post-hoc.
Generate and validate a .specs/ bundle for your repo, then hand it to your AI coding agent
Commission a multi-model AI spec committee from your agent; get rubric-scored, build-ready specs.
Checks llms.txt, AI crawler access in robots.txt, and sitemap - with a 0-100 AI readiness score.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Spec-Driven Development toolkit that transforms LLMs into development agents by providing expert-crafted prompts for generating structured specifications and validating documents across the Requirements → Design → Tasks → Code workflow.1MIT
- AlicenseBqualityDmaintenanceAutomatically analyzes and optimizes AI prompts by calculating clarity scores, detecting risks, asking clarifying questions, and adding domain-specific requirements to improve AI interaction quality.1MIT
- AlicenseAqualityBmaintenanceVet ClawHub skills before installing them; detects prompt-injection, exfiltration, and other security issues, outputting a risk score with per-finding evidence.7MIT
- AlicenseAqualityFmaintenanceTurn rough requests into rigorously structured prompts for any coding agent. Quality-scored to ≥90/100 across 12 dimensions, calibrated on 1,000+ real coding cases.128 npm2MIT