angular-signal-forms-migration-mcp
angular-signal-forms-migration-mcp
Ein MCP-Server, der einem KI-Codierungsagenten hilft, Angular Reactive Forms zu Angular Signal Forms zu migrieren.
Er findet die Reactive-Forms-Konstrukte in Ihrer Codebasis, trennt die sicheren, mechanischen Umbenennungen von denen, die eine menschliche Entscheidung brauchen, und liefert Vorher→Nachher-Rezepte zurück, die gegen eine echte Angular-Version verifiziert sind, statt aus dem Gedächtnis geschrieben zu werden.
Installation
Erfordert Node.js 20+. Es gibt nichts zu klonen — npx holt es bei Bedarf.
claude mcp add signal-forms-migration -- npx -y angular-signal-forms-migration-mcp@latestOder fügen Sie es zu einer beliebigen MCP-Client-Konfiguration hinzu:
{
"mcpServers": {
"signal-forms-migration": {
"command": "npx",
"args": ["-y", "angular-signal-forms-migration-mcp@latest"]
}
}
}@latest sorgt dafür, dass npx bei jedem Start neu auflöst, sodass Ihr Editor nach einem Neustart neue Releases übernimmt. Ohne @latest liefert npx weiterhin die Version aus, die es zuerst gecacht hat. Richten Sie die Konfiguration daher auf @latest aus oder leeren Sie den Cache mit npm cache clean --force.
Der Server prüft außerdem einmal täglich, ob es eine neuere Version gibt, und schreibt eine einzeilige Benachrichtigung nach stderr. Die Prüfung wird gedrosselt, läuft nach 2 Sekunden in ein Timeout, greift nie auf stdout zu und bleibt bei Fehlern stills. To switch it off, add "env": { "SIGNAL_FORMS_MCP_NO_UPDATE_CHECK": "1" } toden obigen Konfigurationsblock hinzu. Um zu sehen, was actually läuft:
npx angular-signal-forms-migration-mcp@latest --version[!IMPORTANT] Führen Sie kein
npm installin Ihrer Angular-App aus. Es handelt sich um einen eigenständigen Prozess, den der Editor starten — um eine Bibliothek, die Ihr Projekt benötigt.npxhält sie außerhalb Ihres Projekts in einem Zwischenspeicher.
[!NOTE] Es erkennt und berät. Es bearbeitet Ihren Code nicht. Es gibt hier kein Tool, das in Ihre Quelldateien schreibt, und es werde nie eines geben. Der Server liefert Befunde und Empfehlungen; Ihr Agent entscheidet, was geändert wird, and führt die Änderungen aus, sodass jede Änderung weiterhin durch die gewohnte Überprüfung und Versionsverwaltung läuft.
Related MCP server: VA Form Generation MCP Server
Wie es aussieht
> Migrate the forms in src/app/checkout to Signal Forms.
1. find_form_candidates { path: ".../src/app/checkout" }
→ 9 findings across 2 files: 6 mechanical, 3 judgment
(the FormArray of line items is judgment — its shape changes)
2. get_signalforms_recipe { construct: "FormBuilder.group" }
→ before/after + caveats
3. the agent applies the edits, you review the diff
4. verify_migration { path: ".../checkout.component.ts" }
→ traps that compile and are still wrongVoraussetzungen, die es prüft, bevor es irgendetwas empfiehlt
Ein Migrationsbericht zuerst die Dinge, die eine Migration unmöglich machen – denn ein Plan, den Sie nicht ausführen Sie können, ist schlimmer als gar kein Plan:
Angular 21+.
@angular/forms/signalsexistiert erst in v21. Darunter liefert der Server keinen Migrationsplan, sondern einen Upgrade-Plan.Deklarierte und installierte Versionen stimmen überein. Ein alter Branch, der anderen neueren
node_modulesausgecheckt ist, überschreitet die v21-Grenze. Wer gegen das installiert ist, dennpm cizurück auf eine Version wirken ihn, in der die Ziel-API fehlt – das Server weigert sich daher, eine Seite zu wählen, und zwar darauf.moduleResolutionunterstützt Exporte (bundler,node16odernodenext).@angular/forms/signalsist ein paketexports-Unterpfad; die altee Auflösungnodekann ihn nicht nicht sehen, und der Import schlägt fehl mit einem Fehler, der wie fehlende Abhängigkeit aussieht.
Werkzeuge
Tool | Was es beantwortet |
| Wo befinden sich die Reactive-Forms-Konstrukte und welche brauchen eine Person? |
| Was ist das verifizierte Vorher→Nachher für dieses Konstrukt? |
| Wie klein groß ist diese Aufgabe, und mit welcher Datei sollte ich begonnen? |
| Gib mir das alles bitte als ein Markdown-Dokument. |
| Ich habe schon migriert – was kompiliert, aber ist eigentlich noch wrong? |
| Ich unter v21. Wie komme zu einer Version die das unterstützen? |
Vollständige Parameter, Antwortstrukturen und Geltungsgrenzen: docs/TOOLS.md.
Wie die Rezepte verifiziert werden
Signal Forms ist neu und in keiner Modell-Trainingdaten zuverlässig enthalten. From memory church Rezepte sind falsch – und zwar falsch, so dass sie richtig aussehen. Deshalb davon keines geschrieben.
Rezepte werden gegen Angular v22 geprüft, mithilfe des offiziellen Angular-CLI-MCP-Servers, und mit angular.dev überprüft. Sie tragen eine strukturierte Herkunft (verifiedAgainstVersion, retrievedISO, sources), die in diary tool response enthalten ist, damit treuer Agent einschätzt, wie aktuell die Hinweis ist. Recipe mit leerer sources-Liste Figure brings CI zum Fehler.
Dieses von Doku nicht beantwortet eine Frage kann, ** die Rezepte say dies in seine caveats**, stattchap answer zu erfinden – UNVERIFIED — confirmali> und UNVERIFIED — tool-authored guidance dort, wo Angular Migration keinen no there ist (siehe RxJS-Stream-Ebenen sind der waren Hauptfall: Die Primitive sind referenced und compose; die Wahl zwischen e dienen jedoch Tun dieser Werkzeugs Богов.)
Let me further complete the final translation rather than the fragment. Continue.…und nicht die von Angular. 14 von 37 Rezepten tragen derzeit ein solches Kennzeichen. Genau Das ist sie Pflicht ehrliche output, no bug — and a test keeps this number.
The recipes are prove also. CI installs an official @angular/forms@22 and typechecks so that fixtures exercise exactly every API these recipes use. So a recipe that имяacon a function that doesn't exist — or actually calls it with the wrong wireformat — braches the buildulate. Damit wurde die v22-Signatur von disabled(path,{ when }) etabliert, die weder die Dokumente noch die schematische Dok-u für schema() und apply() darstellen.
Zwei Dinge, die der Rest gefunden hat, bei manan memory falsch hat:
Das Binding-Direktiv ist
[formField]/FormField– nicht[control]/Control, das im Pre-Release v21 des v21 Material vorkam and von den Modenmodelle reproduziert wird.Die formulation
disabled()/hidden(): it's die in v22 wieder als Option-Objekt-Formen hinzugekommen sind und die reine callback@deprecatedverbunden, not unsentfernt. Deshalb compilieren eine v21-artige rule noch, with a warning. Das wurde klar gewonnen aus den Diff über Overloads, nicht aus den Guides.
Recipes whose Verhalten zwischen Versionen tatsächlich differiert uprated ein VERSION-SENSITIVE caveat, ist die Forge haben die jeweiligen Version it until e – The server shows sie at the project somewhere now. Das caveats-Array bitte lesen – das sind die came with. The complete re-verification process for a new Angular release is REVERIFICATION.md.
Es sagt Ihnen, wenn es keine glatte Lösung gibthello Re-Formation? no Signal Forms entsprechend, and what accuse instead is: a migration tool behaves who knows that is worse than by that.
Form streams are is nach den RxJS Operations in ihrer .pipe() chain kategorisiert:
Stufe | Operatoren | 最佳 Antwort |
trivial | keine / nur |
|
moderate |
|
|
schwierig |
| kein direct Equivalent |
Für die schweren Stufe sagt das Rezept das offen, and does provide practical strategies – Nicht AI sync validation rules, rxResource or RxJS behind toObservable / toSignal verdient –, rather than die line to invent the nonexistent be.
Similarly addControl()/ removeControl()` do not at all an equivalent: statement tree is from colon. The recipe tells you the three actual answers, not by pretending there is an API that can compiled.
Was es nicht tun lassen
Dateien zu bearbeiten. The behavior is permanently.
To prove the belonging of the migration.
verify_migrationshows only the absence He weiss known defects. Use it aftertsc, not replacement.Handle Template-DrivenForms. The migration of
ngModelis not documented upstream; would be a guess-gambling exactly the error mode an diesem project project stuck to avoid.Take template literal syntax
${...}because their text is not that text Angular compiler also stays. *are standalone template: String will scanned without placeholders.CSS cannot scrape, or types over file boundaries/ phenomenon – detection is a single-file syntatic pass,
ts.Programfar not.
ROADMAP.md trackt; the report of the migration is repeated in its own section, without thereby appearing Complete.
Why not just the official Angular MCP server?
Do both. **The official @angular/cli MCP point knows Angular;` this one knows migration– any existing Konstrukte – which of these mechanical, which own a decision, and what the verified The policy is. from here you the key get more as proof, then even anything current or project-specific undo before, it should tartared.
Current status
Function well finally M16. Six Tools be delivered, with validated recipes for basics, Form Arrays, surely changed runtime, Async validators, Custom Controls, the three RxJS stream layers, Read and write detail from Form State, sendForm, Model-Form-Limitierung. After suffering from CSS and. HTML template layer - bindings, status query, <select multiple> blocker and Notice the key changed in errorkey"components.
Stdio is the transport, so stdout belongs to protocol and stdout all output is in stderr.
Make contributions and local development: CONTRIBUTING.md.
MIT License
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables LLMs to apply Martin Fowler's 71+ refactoring patterns to codebases through a pluggable, language-agnostic architecture. Supports previewing and applying refactorings, analyzing code smells, and inspecting code structure with safe-by-default operations.54MIT
- FlicenseBqualityDmaintenanceProvides tools for auditing and fixing scaffolded VA forms to ensure they follow best practices and VA.gov content standards. Enables automated validation, agent prompt generation, and orchestration of form fixes across any vets-website workspace.51
- AlicenseNot gradedqualityFmaintenanceHelps migrate projects from AI SDK 4.x to 5.0 by generating a migration checklist and searching the official migration guide for code and data changes.14MIT
- AlicenseBqualityDmaintenanceEnables AI agents to safely upgrade JavaScript and TypeScript projects through dependency analysis, upgrade path detection, breaking change identification, codemod application, and PR summary generation.1428MIT
Related MCP Connectors
Lints + auto-fixes how AI coding agents discover any new product. 24 rules, 6 tools, score 0-100.
AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).
Code intelligence for coding agents: semantic, AST, graph, and full-text search. 279+ languages.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Alvi97/angular-signal-forms-migration-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server