{"$schema":"https://json-schema.org/draft/2020-12/schema","manifestVersion":"1.0.0","generatedAt":"2026-03-04T00:00:00Z","service":{"name":"FlowZap","description":"AI-first diagramming platform. Create workflow, sequence, and architecture diagrams from structured DSL code. Optimized for LLM generation and agentic automation pipelines.","version":"1.4.3","homepage":"https://flowzap.xyz","logo":"https://flowzap.xyz/icon-512.png","publisher":{"name":"FlowZap","contact":"feedback@flowzap.xyz","supportUrl":"https://flowzap.xyz/feedback"},"domains":["diagramming","visualization","workflow-automation","sequence-diagrams","architecture-diagrams","developer-tools","devops","n8n","make-com","zapier"],"tags":["diagram","flowchart","workflow","sequence","architecture","mcp","ai-native","dsl","no-auth"]},"protocols":[{"name":"mcp","version":"2025-11-05","transport":"stdio","installation":{"command":"npx","args":["-y","flowzap-mcp"],"npmPackage":"flowzap-mcp","npmUrl":"https://www.npmjs.com/package/flowzap-mcp","packageVersion":"1.4.3","minNodeVersion":"18.0.0"},"configExample":{"mcpServers":{"flowzap":{"command":"npx","args":["-y","flowzap-mcp"]}}},"compatibleClients":["Claude Desktop","Claude Code","Cursor","Windsurf IDE","OpenAI Codex","Warp Terminal","Zed Editor","Cline (VS Code)","Roo Code (VS Code)","Continue.dev","Sourcegraph Cody"]},{"name":"http-rest","version":"1.0","transport":"https","baseUrl":"https://flowzap.xyz/api","authenticationRequired":false}],"capabilities":{"tools":[{"name":"flowzap_get_syntax","protocol":"mcp","purpose":"Retrieve complete FlowZap Code syntax documentation","inputSchema":{"type":"object","properties":{},"required":[]},"outputFormat":"text","sideEffects":false,"costEstimate":"free","cacheable":true,"p95LatencyMs":50,"description":"Returns the full DSL syntax guide. Call once per session before generating code."},{"name":"flowzap_validate","protocol":"mcp","purpose":"Validate FlowZap Code syntax","inputSchema":{"type":"object","properties":{"code":{"type":"string","maxLength":50000,"description":"FlowZap Code to validate"}},"required":["code"]},"outputFormat":"json","outputSchema":{"valid":"boolean","errors":"array of {line, message, fix}","warnings":"array of {line, message, recommendation}","stats":"{lanes, nodes, edges, loops}"},"sideEffects":false,"costEstimate":"free","cacheable":true,"p95LatencyMs":200,"description":"Validates DSL syntax. Always call before creating a playground.","validationHighlights":["Lane comments must be on the same line as the lane opening brace.","Node numbering gaps are blocking errors.","Wrong node property syntax and wrong edge label syntax are blocking errors.","Sequence diagrams enforce ordered request-response ping-pong pairing.","Missing return edges, multiple outbound requests before a response, and chronological pairing violations fail validation."]},{"name":"flowzap_create_playground","protocol":"mcp","purpose":"Create a shareable playground URL with the diagram","inputSchema":{"type":"object","properties":{"code":{"type":"string","maxLength":50000,"description":"FlowZap Code"},"view":{"type":"string","enum":["workflow","sequence","architecture"],"default":"workflow"}},"required":["code"]},"outputFormat":"json","outputSchema":{"url":"string (shareable playground URL)","tokenExpiresAt":"ISO 8601 datetime"},"sideEffects":true,"costEstimate":"free","cacheable":false,"p95LatencyMs":800,"sessionTTL":"60 minutes","description":"Creates a shareable diagram URL. Auto-validates before creating. No auth required to view."},{"name":"flowzap_export_graph","protocol":"mcp","purpose":"Export FlowZap Code as structured JSON graph (lanes, nodes, edges)","inputSchema":{"type":"object","properties":{"code":{"type":"string","maxLength":50000}},"required":["code"]},"outputFormat":"json","sideEffects":false,"costEstimate":"free","cacheable":true,"p95LatencyMs":100,"description":"Parses DSL into a structured JSON graph for programmatic analysis."},{"name":"flowzap_artifact_to_diagram","protocol":"mcp","purpose":"Parse HTTP logs, OpenAPI specs, or code snippets into FlowZap diagrams","inputSchema":{"type":"object","properties":{"artifactType":{"type":"string","enum":["http_logs","openapi","code"]},"content":{"type":"string","maxLength":100000},"view":{"type":"string","enum":["workflow","sequence","architecture"]}},"required":["artifactType","content"]},"outputFormat":"json","sideEffects":true,"costEstimate":"free","cacheable":false,"p95LatencyMs":1200,"description":"Converts technical artifacts into FlowZap Code + auto-creates playground URL."},{"name":"flowzap_diff","protocol":"mcp","purpose":"Compare two versions of FlowZap Code and return structured diff","inputSchema":{"type":"object","properties":{"oldCode":{"type":"string","maxLength":50000},"newCode":{"type":"string","maxLength":50000}},"required":["oldCode","newCode"]},"outputFormat":"json","sideEffects":false,"costEstimate":"free","cacheable":true,"p95LatencyMs":100,"description":"Returns structured diff showing added, removed, and updated nodes/edges."},{"name":"flowzap_apply_change","protocol":"mcp","purpose":"Apply structured patch operations to existing FlowZap Code","inputSchema":{"type":"object","properties":{"code":{"type":"string","maxLength":50000},"operations":{"type":"array","items":{"type":"object","properties":{"op":{"type":"string","enum":["insertNode","removeNode","updateNode","insertEdge","removeEdge"]}},"required":["op"]}}},"required":["code","operations"]},"outputFormat":"json","sideEffects":true,"costEstimate":"free","cacheable":false,"p95LatencyMs":900,"description":"Applies incremental changes to diagrams. Auto-creates playground URL with result."},{"name":"flowzap_compliance_check","protocol":"mcp","purpose":"Run automated SOC2, GDPR, and PIPL compliance analysis on a FlowZap Code data-flow diagram","inputSchema":{"type":"object","properties":{"code":{"type":"string","maxLength":50000},"lng":{"type":"string","enum":["en","fr","zh"],"default":"en"}},"required":["code"]},"outputFormat":"markdown","sideEffects":false,"costEstimate":"rate-limited","cacheable":false,"p95LatencyMs":8000,"rateLimit":"Strict — 3/day per IP, 1/hour burst, global circuit breaker","description":"Backed by Deepseek LLM. Returns a Markdown audit report with risks, recommendations, and links to the manual checker at https://flowzap.xyz/soc2-gdpr-pipl-compliance-checker."}],"endpoints":[{"path":"/api/validate","method":"POST","purpose":"Validate FlowZap Code syntax","authenticationRequired":false,"requestBody":{"code":"string"},"responseBody":{"valid":"boolean","errors":"array","warnings":"array","stats":"{ lanes, nodes, edges, loops }"},"validationHighlights":["Same-line lane labels are enforced.","Numbering gaps and wrong property syntax are blocking errors.","Sequence request-response chronology is enforced for cross-lane edges."],"rateLimit":"30 requests/minute per IP","costEstimate":"free","p95LatencyMs":200},{"path":"/api/playground/create","method":"POST","purpose":"Create shareable playground URL","authenticationRequired":false,"requestBody":{"code":"string (optional)","view":"string (optional: workflow | sequence | architecture)"},"responseBody":{"success":"boolean","url":"string","tokenExpiresAt":"ISO 8601 datetime"},"rateLimit":"5 requests/minute, 50/day per IP","costEstimate":"free","p95LatencyMs":800}]},"sla":{"availability":"99.5%","p99LatencyMs":{"validate":500,"createPlayground":1500,"getSyntax":100,"exportGraph":200,"artifactToDiagram":2000,"diff":200,"applyChange":1500,"complianceCheck":8000},"uptimeMonitor":"https://flowzap.xyz/status","degradationStrategy":"graceful","fallbackBehavior":{"playgroundCreationFails":"Return FlowZap Code as text; user can paste at https://flowzap.xyz/playground","validationFails":"Agent should apply built-in syntax rules from flowzap_get_syntax output","networkTimeout":"Retry once after 5 seconds; if still failing, return raw DSL code to user"}},"rateLimits":{"validate":{"maxRequests":30,"windowSeconds":60,"scope":"per-IP"},"playground":{"maxRequests":5,"windowSeconds":60,"dailyLimit":50,"scope":"per-IP"},"mcpClient":{"maxRequests":30,"windowSeconds":60,"scope":"per-client"},"complianceCheck":{"dailyLimit":3,"hourlyBurstLimit":1,"globalCircuitBreakerSeconds":300,"scope":"per-IP or per-mcpIdentity","notes":"Strict limits due to Deepseek LLM cost. Only successful calls count toward quota."}},"security":{"authenticationRequired":false,"apiKeyRequired":false,"oauthRequired":false,"ssrfPrevention":"Only connects to flowzap.xyz and www.flowzap.xyz via HTTPS","inputValidation":{"maxCodeLength":50000,"maxInputLength":100000,"nullByteRemoval":true,"controlCharacterSanitization":true},"dataPrivacy":{"userDataStored":false,"sessionTTL":"60 minutes","tracking":false,"cookies":false,"pii":"none"},"requestTimeout":"30 seconds"},"billing":{"model":"free","pricingUrl":null,"creditSystem":false,"allToolsFree":true,"noSignupRequired":true,"rationale":"All public tools run locally or use minimal server resources. No LLM inference cost."},"discovery":{"humanDocs":"https://flowzap.xyz/docs/mcp","machineDocs":"https://flowzap.xyz/docs/mcp.json","syntaxSpec":"https://flowzap.xyz/flowzap-code","llmsTxt":"https://flowzap.xyz/llms.txt","llmsFullTxt":"https://flowzap.xyz/llms-full.txt","templates":"https://flowzap.xyz/templates","playground":"https://flowzap.xyz/playground","changelog":"https://flowzap.xyz/changelog","skillManifest":"https://skills.sh/flowzap-xyz/flowzap-mcp/flowzap-diagrams","npmPackage":"https://www.npmjs.com/package/flowzap-mcp","sourceCode":"https://github.com/flowzap-xyz/flowzap-mcp","serverCard":"https://flowzap.xyz/.well-known/mcp/server-card.json","usageStats":"https://flowzap.xyz/.well-known/flowzap-stats.json","officialRegistry":"https://registry.modelcontextprotocol.io/?q=flowzap","smitheryServer":"https://smithery.ai/server/@flowzap/flowzap","smitherySkill":"https://smithery.ai/skills/Flowzap/diagram-skill","pulseMcp":"https://www.pulsemcp.com/servers/flowzap","glama":"https://glama.ai/mcp/servers/flowzap-xyz/flowzap-mcp","mcpServersOrg":"https://mcpservers.org/servers/flowzap-xyz-docs-mcp","aiBase":"https://mcp.aibase.com/server/1639702939289526535","huggingFaceDataset":"https://huggingface.co/datasets/Jules-OC/flowzap-sequence-workflows/tree/main"},"humanEscalation":{"supportEndpoint":"https://flowzap.xyz/feedback","contactEmail":"feedback@flowzap.xyz","escalationTriggers":["Repeated validation failures after 3 correction attempts","Rate limit exceeded with no workaround","Playground URL returns 404 or 500","Requested diagram type not supported by DSL"]},"agentWorkflow":{"description":"Optimal tool-call sequence for AI agents generating diagrams","steps":[{"step":1,"action":"flowzap_get_syntax","note":"Learn DSL rules. Cache result for session."},{"step":2,"action":"generate_code","note":"Agent generates FlowZap Code based on user request."},{"step":3,"action":"flowzap_validate","note":"Validate before sharing. Fix any errors."},{"step":4,"action":"flowzap_create_playground","note":"Create shareable URL. Use view='architecture' for multi-system overviews."},{"step":5,"action":"present_to_user","note":"Share playground URL. Diagram is interactive and editable."}]}}