Skip to main content
Glama

prefab-mcp

Ein MCP-Server für Prefab, damit ein Agent deine Vorlagen sehen und eine für dich bereitstellen kann.

"Set up a new client folder for Northwind, autumn campaign, on my Desktop"

Was er bietet

Tool

Funktion

list_templates

Jede Vorlage: was sie erstellt und wonach sie fragt

describe_template

Eine Vorlage vollständig: Struktur, Platzhalter, Aktionen

preview_deploy

Was ein Deployment erzeugen würde und welche Werte noch fehlen. Erstellt nichts

deploy_template

Erstellt die Ordner und füllt die angegebenen Werte ein

list_watched_folders

Ordner, die Prefab überwacht, und die dazugehörigen Regeln

list_globals

Bibliotheksweite Platzhalter, Aktionen und Wertvorgaben

Related MCP server: macOS Companion MCP Server

Einrichtung

Funktioniert mit jedem Client, der MCP über stdio unterstützt.

Als Bundle – lade prefab.mcpb von der Releases-Seite herunter und doppelklicke die Datei. Clients, die MCP-Bundles installieren – darunter Claude Desktop – bringen ihr eigenes Node mit, sodass nichts weiter installiert werden muss.

Über die Befehlszeile (Claude Code und alles Vergleichbare):

claude mcp add prefab -- npx -y prefab-mcp

In einer Konfigurationsdatei – Cursor, Zed und die meisten anderen:

{
  "mcpServers": {
    "prefab": { "command": "npx", "args": ["-y", "prefab-mcp"] }
  }
}

Aktiviere dann die Option Agenten und Skripte dürfen Prefab steuern in Prefabs Einstellungen ▸ Berechtigungen. Die Option ist standardmäßig deaktiviert: Das Lesen deiner Vorlagen funktioniert auch ohne sie, das Erstellen und Bereitstellen aber nicht.

Der Schalter wird in Prefab 1.1.6 eingeführt. Auf älteren Versionen funktionieren die Lese-Werkzeuge; die übrigen Werkzeuge weisen darauf hin.

Voraussetzungen sind macOS, Prefab (einmal installiert und geöffnet), Node 18+ sowie – mit Ausnahme der .mcpb-Route.

So funktioniert es

Prefab läuft in einer Sandbox und hat keinen Netzwerkzugriff, kann also nichts hosten. Dieser Server läuft stattdessen daneben: Er liest die Bibliothek direkt aus der App-Gruppe (~/Library/Group Containers/group.VFDG327T66.prefab) und bittet die App, über dieselbe prefab://-URL zu deployen, die auch der Finder-Erweiterung verwendet. Zwei Konsequenzen solltest du wissen:

  • Prefab muss laufen, damit ein Deployment gelingt. Das Lesen funktioniert in beiden Fällen.

  • Das Ziel muss ein Ordner sein, auf den Prefab Zugriff hat. macOS hält eine Sandbox-App aus deinen Ordnern heraus, bis ihr Zugriff auf wirklich einen gewчат. preview_deploy und deploy_template prüfen das zuerst und weisen darauf hin, statt einen Berechtigungsdialog auf dem Bildschirm zu hinterlassen, den ein Agent nicht beantworten kann. Ordner vergibst du in Prefab unter Einstellungen ▸ Berechtigungen.

Nichts davon schreibt in Prefabs Bibliothek. Die Dateien gehören der App; wenn du sie hinter ihrem Rücken änderst, werden die Änderungen beim nächsten Speichern überschrieben.

Entwicklung

npm test    # checks placeholder resolution matches the app's Swift, case for case
npm run try '[["list_templates",{}]]'    # call a tool the way a client does

src/resolve.js ist eine bewusste Kopie von RenamePattern.swift. Wenn du die eine Datei änderst, ändere auch die andere: npm test kompiliert den Swift-Code und vergleicht die beiden.

Related MCP Connectors

Related MCP Servers