FlowMCP Schema Specification v1.2.2
The definitive specification for creating valid FlowMCP schemas, based on the official FlowMCP Technical Standard.Schema Structure
Every FlowMCP schema must follow this exact structure from the v1.2.2 specification:General Validation Rules
| Field | Requirement |
|---|---|
namespace | Must be non-empty string; letters only (/^[a-zA-Z]+$/) |
flowMCP | Must be in "x.x.x" format, e.g. "1.2.2" |
root | Must be a valid URL; placeholders like {{API_KEY}} are allowed |
requiredServerParams | Must include all placeholders used in root, headers, and parameters.value (excluding {{USER_PARAM}}) |
tags | Format: "module.route" or "module.!route" using letters and dots only |
Route Structure
All routes must declare ALL required fields:modifiers: []
Parameter Formatting (Single Line)
Each parameter must be written on a single line - this is a strict convention in FlowMCP.✅ Correct Format:
❌ Incorrect Format:
{{USER_PARAM}} must include a valid z object with primitive and options.
Position Object
| Field | Values | Description |
|---|---|---|
| location | ”insert”, “query”, “body”, “header” | Where parameter goes |
| key | string | Parameter name |
| value | "" or "" | Parameter source |
Z Validation Object
Available Primitives and Options:
| Primitive | Available Options | Example |
|---|---|---|
string() | min(), max(), length(), regex(), email(), url() | ["length(24)", "regex(/^[a-zA-Z0-9-]+$/)"] |
number() | min(), max(), int(), positive(), negative() | ["min(0)", "max(100)", "int()"] |
boolean() | None | [] |
array() | min(), max(), length() | ["min(1)", "max(10)"] |
object() | Custom shape definitions | [] |
Complete Parameter Examples
Tags Format
Tags follow themodule.route pattern for granular control:
Complete Schema Example
Validation Checklist
Before using a schema, verify: ✅ Namespace contains only letters✅ flowMCP version is “1.2.2”
✅ Root URL is valid and uses correct parameter types
✅ All routes have ALL required fields (even if empty arrays)
✅ Parameters are single-line format
✅ All have z validation with primitive and options
✅ Server parameters are listed in requiredServerParams
✅ Tags follow module.route format if route-specific
Resources
- FlowMCP Core - Implementation and examples
- Schema Collection - Ready-to-use schemas