Integrationen
PromptFlowEngine verbinden
In jeder Integration läuft dieselbe Engine. Wählen Sie danach, wo Ihre Prompts liegen: in einem Browser oder Editor (die Erweiterungen), in einem KI-Assistenten oder Agenten (MCP) oder in Ihrem eigenen Code (HTTP-API). Keine ruft ein Sprachmodell auf, und keine braucht ein Konto oder einen API-Schlüssel.
| Option | Am besten für | Läuft | Einrichtung |
|---|---|---|---|
| Chrome-Erweiterung | Prompts in ChatGPT, Claude, Gemini, Grok, Perplexity und DeepSeek prüfen | In Ihrem Browser | Aus dem Repository bauen und entpackt laden (noch nicht im Chrome Web Store) |
| VS-Code-Erweiterung | Von der Codebasis zum Prompt, mit Datenschutzwächter vor dem KI-Chat | In VS Code | Die Erweiterung installieren |
| MCP-Server | Copilot-Agentenmodus, Claude, Cursor, Windsurf, Gemini CLI oder Ihren Agenten die Engine als Tools aufrufen lassen | Lokaler Prozess, stdio | Einmal bauen, in die Konfiguration Ihres Clients eintragen |
| HTTP-API | Ihre Anwendung, Ihr Skript oder Backend | promptflowengine.com/api/v1 oder Ihr eigener Worker | Nichts: einfach JSON senden |
Option 1: MCP-Server
PromptFlowEngine liefert einen MCP-Server (v2.1.0); Ihr KI-Tool ist der Client. Der Transport ist ausschließlich stdio: Der Client startet node packages/mcp-server/dist/bin.js auf Ihrem Rechner. Es gibt keinen gehosteten MCP-Endpunkt und keine Authentifizierung, weil nur ein von Ihnen gestarteter Prozess mit ihm sprechen kann.
Voraussetzungen
- Node.js 22 oder neuer (Windows, macOS oder Linux) mit Corepack.
- Ein Checkout des PromptFlowEngine-Repositorys (die npm-Veröffentlichung steht noch aus). Einmal bauen:
corepack pnpm install --frozen-lockfile
corepack pnpm --filter @promptflow/engine build
corepack pnpm --filter @promptflow/mcp-server buildErsetzen Sie <ABSOLUTE_PATH_TO_CHECKOUT> unten durch Ihren Checkout. Verwenden Sie unter Windows in JSON normale Schrägstriche (C:/src/Prompt/…).
Client konfigurieren
{
"servers": {
"promptflow": {
"type": "stdio",
"command": "node",
"args": [
"<ABSOLUTE_PATH_TO_CHECKOUT>/packages/mcp-server/dist/bin.js"
]
}
}
}{
"mcpServers": {
"promptflow": {
"command": "node",
"args": [
"<ABSOLUTE_PATH_TO_CHECKOUT>/packages/mcp-server/dist/bin.js"
]
}
}
}claude mcp add promptflow -- node <ABSOLUTE_PATH_TO_CHECKOUT>/packages/mcp-server/dist/bin.js
claude mcp listDie Dateipfade richten sich nach der Dokumentation des jeweiligen Clients; verschiebt ein Client sie, gilt dessen Dokumentation. Der Server braucht keine Geheimnisse, tragen Sie also nie Zugangsdaten in diese Dateien ein.
Verifizieren
printf '%s\n' \
'{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"check","version":"1"}}}' \
'{"jsonrpc":"2.0","method":"notifications/initialized"}' \
'{"jsonrpc":"2.0","id":2,"method":"tools/list"}' \
| node packages/mcp-server/dist/bin.jsOder führen Sie das TypeScript-Beispiel aus, das den Server startet, seine Tools auflistet und einen Prompt bewertet und umstrukturiert: node --experimental-strip-types packages/mcp-server/examples/mcp-client.ts. Fragen Sie in Ihrem Client „List the promptflow tools“.
Tools (19)
| Tool | Erforderlich | Was es tut |
|---|---|---|
optimize_prompt | prompt | Optimize prompt |
optimize_prompt_pipeline | prompt | Optimize prompt (staged pipeline) |
compress_prompt | prompt | Compress prompt |
validate_prompt | prompt | Validate prompt |
estimate_tokens | prompt | Estimate tokens |
analyze_prompt | prompt | Analyze prompt |
extract_entities | prompt | Extract entities |
summarize_context | context | Summarize context |
score_prompt | prompt | Score prompt |
evaluate_prompt | prompt | Evaluate prompt |
compare_prompts | a, b | Compare prompts |
scan_prompt_security | prompt | Scan prompt security |
scan_sensitive_data | text | Scan sensitive data |
sanitize_prompt | text | Sanitize prompt |
restructure_prompt | prompt | Restructure prompt |
convert_structured_payload | json | Convert JSON to TOON |
simulate_cost | prompt | Simulate cost |
analyze_context_budget | sources | Analyze context budget |
run_prompt_tests | prompt, cases | Run prompt tests |
Argumente, Ergebnisse und Fehlerfälle jedes Tools: MCP-Referenz. Beispielanfrage in einem Agent-Chat:
Use promptflow to restructure this, then scan it for secrets:
"fix login issue and make google login work and don't break anything"Fehlerbehebung
- Server erscheint als fehlgeschlagen: Der Pfad ist falsch oder
dist/ist nicht gebaut. Neu bauen und den absoluten Pfad verwenden. nodenicht gefunden: Der Client hat kein Node.js im PATH. Tragen Sie den absoluten Pfad zunodeincommandein.Invalid arguments: Die Meldung nennt das Feld. Lange Eingabe:PROMPTFLOW_MCP_MAX_PROMPT_CHARSimenvdes Clients setzen.- Logs nötig:
PROMPTFLOW_MCP_LOG=debugsetzen; sie gehen auf stderr und enthalten nie Prompt-Text.
Option 2: HTTP-API
Basis-URL https://promptflowengine.com/api/v1. JSON rein, JSON raus, keine Authentifizierung, nichts wird gespeichert, 60 POST-Anfragen pro Minute und IP. Senden Sie keine Prompts mit Geheimnissen an einen Remote-Dienst; schwärzen Sie zuerst mit POST /sanitize, der CLI oder den Erweiterungen.
curl -s https://promptflowengine.com/api/v1/healthcurl -s https://promptflowengine.com/api/v1/analyze \
-H 'content-type: application/json' \
-d '{"prompt":"Write something about our product and stuff. Keep it short but also be detailed."}' \
| jq '{quality: .quality.overall, findings: [.findings[] | {severity, message}]}'curl -s https://promptflowengine.com/api/v1/optimize \
-H 'content-type: application/json' \
-d '{"prompt":"Please summarize the notes. Please summarize the notes.","mode":"balanced"}' \
| jq '{text: .selected.text, tokenDelta, changes: [.changes[].title]}'import { createClient, PromptFlowApiError } from './api-client';
const api = createClient({ baseUrl: process.env.PROMPTFLOW_API ?? 'https://promptflowengine.com' });
try {
const analysis = await api.analyze(userPrompt);
const critical = analysis.findings.filter((f) => f.severity === 'critical');
const { selected, tokenDelta } = await api.optimize(userPrompt, 'balanced');
console.log(critical.length, selected.text, tokenDelta);
} catch (err) {
// Typed errors carry status, type, message, and the request id for support.
if (err instanceof PromptFlowApiError) console.error(err.status, err.type, err.message, err.requestId);
else throw err;
}Jeder Endpunkt, jedes Feld und jeder Statuscode: HTTP-API-Referenz.
Lokal ausführen
corepack pnpm --filter @promptflow/web build
cd apps/web && corepack pnpm exec wrangler dev --local --env="" --port 8787
curl -s http://localhost:8787/api/v1/healthFehlerbehebung
- 400: Senden Sie
content-type: application/json; die Meldung nennt das Feld. - 404 „Unknown API version“: Verwenden Sie das Präfix
/api/v1/. - 405:
health,modelsundrulessind GET; der Rest ist POST. - 413: Der Body ist über 256 KB oder ein Feld über 100.000 Zeichen.
- 429: Warten Sie auf
retry-after(60 Sekunden) oder führen Sie die Engine lokal mit der CLI aus.