Server definition
- Hash
- sha256:93aafe94c40ee8eb066f3d20aff3525a88ea8c350ef847e4b9682df45752bc6e
- What it is
- What a remote MCP server returned when asked what it offers: 4 tools
The blob, as servednamed by its sha256
{
"instructions": "Spintax template tools backed by @spintax/core, the reference engine. validate_spintax returns diagnostics with line/column; render_spintax produces seeded variants; analyze_spintax reports variables, directives and construct counts; spintax_authoring_guide returns the authoring rules for a locale — call it BEFORE writing a template, the verifiers cannot teach what a template lacks. #include is disabled. Docs: https://spintax.net/llms.txt (Markdown mirrors of every page).",
"tools": [
{
"description": "Reports what the template needs and contains: refs (variables referenced), sets (#set macros, re-picked per reference), defs (#def, rolled once per render), includes, diagnostics, and best-effort construct counts. Answers \"what variables must I supply\" — it is NOT a variant-cardinality counter.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"knownVariables": {
"items": {
"type": "string"
},
"type": "array"
},
"locale": {
"description": "Locale for {plural …} arity, e.g. \"en\" (2-form), \"ru\" (3-form: ru/uk/be/sr/hr/bs) or \"ar\" (6-form). Omit for the 2-form default.",
"type": "string"
},
"template": {
"description": "Spintax template source (max 8192 characters). #include is disabled on this server.",
"maxLength": 8192,
"type": "string"
}
},
"required": [
"template"
],
"type": "object"
},
"name": "analyze_spintax",
"outputSchema": {
"properties": {
"constructs": {
"additionalProperties": {
"type": "integer"
},
"type": "object"
},
"defs": {
"items": {
"type": "string"
},
"type": "array"
},
"diagnostics": {
"items": {
"properties": {
"code": {
"description": "Stable machine code, e.g. plural.arity",
"type": "string"
},
"column": {
"description": "1-based",
"type": "integer"
},
"data": {
"type": "object"
},
"endColumn": {
"type": "integer"
},
"endLine": {
"type": "integer"
},
"line": {
"description": "1-based",
"type": "integer"
},
"message": {
"type": "string"
},
"severity": {
"enum": [
"error",
"warning"
],
"type": "string"
}
},
"required": [
"severity",
"code",
"message",
"line",
"column"
],
"type": "object"
},
"type": "array"
},
"includes": {
"items": {
"type": "string"
},
"type": "array"
},
"refs": {
"items": {
"type": "string"
},
"type": "array"
},
"sets": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"refs",
"sets",
"defs",
"includes",
"diagnostics",
"constructs"
],
"type": "object"
}
},
{
"description": "Renders up to 20 variants. With a seed the output is deterministic (variant i uses seed \"<seed>#<i>\"); without one it is random. The engine is lenient: structural mistakes never throw, they surface in the output — run validate_spintax first.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"context": {
"additionalProperties": {
"type": "string"
},
"description": "Variable map, e.g. {\"CITY\": \"Prague\"}. Overrides #set/#def definitions.",
"type": "object"
},
"count": {
"default": 3,
"description": "Number of variants (1–20).",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"locale": {
"description": "Locale for {plural …} arity, e.g. \"en\" (2-form), \"ru\" (3-form: ru/uk/be/sr/hr/bs) or \"ar\" (6-form). Omit for the 2-form default.",
"type": "string"
},
"seed": {
"description": "Deterministic RNG seed; omit for random output.",
"type": [
"string",
"number"
]
},
"template": {
"description": "Spintax template source (max 8192 characters). #include is disabled on this server.",
"maxLength": 8192,
"type": "string"
}
},
"required": [
"template"
],
"type": "object"
},
"name": "render_spintax",
"outputSchema": {
"properties": {
"variants": {
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"variants"
],
"type": "object"
}
},
{
"description": "Read this BEFORE writing or editing a spintax template — it is the canonical authoring guide the whole spintax toolchain is written against, not a tutorial. Pass the locale you will author in: for ru/uk/be and sr/hr/bs it carries the agreement and case rules that decide whether the variants read as human writing, which is the hard part and the part a valid template can still get wrong; for ar, the six plural forms and their order. Returns text to read, not a template.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"locale": {
"description": "Language you will author in, e.g. \"en\" or \"ru\". Selects the grammar rules and the worked examples. Omit for the language-neutral rules only.",
"type": "string"
},
"variationLevel": {
"description": "How much markup to use. Omit to decide for yourself — the guide then states no level.",
"enum": [
"conservative",
"balanced",
"aggressive"
],
"type": "string"
}
},
"type": "object"
},
"name": "spintax_authoring_guide",
"outputSchema": {
"properties": {
"locale": {
"type": "string"
},
"promptVersion": {
"description": "Version of the rules TEXT (@spintax/authoring-prompt PROMPT_VERSION). Moves when the wording changes in a way that can change what a model writes.",
"type": "string"
},
"rules": {
"description": "The authoring rules, as text to read.",
"type": "string"
}
},
"required": [
"rules",
"promptVersion"
],
"type": "object"
}
},
{
"description": "Static validation: returns diagnostics with severity, stable code, message and 1-based line/column. No \"error\"-severity diagnostic means the template is structurally sound — read the warnings before rendering, because some of them (plural.locale-missing) mean a block will not resolve. Pass knownVariables for names you will supply at render time to silence their variable.undefined warnings.",
"inputSchema": {
"additionalProperties": false,
"properties": {
"knownVariables": {
"description": "Variable names the caller will supply at render time (case-insensitive).",
"items": {
"type": "string"
},
"type": "array"
},
"locale": {
"description": "Locale for {plural …} arity, e.g. \"en\" (2-form), \"ru\" (3-form: ru/uk/be/sr/hr/bs) or \"ar\" (6-form). Omit for the 2-form default.",
"type": "string"
},
"template": {
"description": "Spintax template source (max 8192 characters). #include is disabled on this server.",
"maxLength": 8192,
"type": "string"
}
},
"required": [
"template"
],
"type": "object"
},
"name": "validate_spintax",
"outputSchema": {
"properties": {
"diagnostics": {
"items": {
"properties": {
"code": {
"description": "Stable machine code, e.g. plural.arity",
"type": "string"
},
"column": {
"description": "1-based",
"type": "integer"
},
"data": {
"type": "object"
},
"endColumn": {
"type": "integer"
},
"endLine": {
"type": "integer"
},
"line": {
"description": "1-based",
"type": "integer"
},
"message": {
"type": "string"
},
"severity": {
"enum": [
"error",
"warning"
],
"type": "string"
}
},
"required": [
"severity",
"code",
"message",
"line",
"column"
],
"type": "object"
},
"type": "array"
},
"errorCount": {
"type": "integer"
},
"valid": {
"description": "True when no error-severity diagnostics.",
"type": "boolean"
},
"warningCount": {
"type": "integer"
}
},
"required": [
"valid",
"errorCount",
"warningCount",
"diagnostics"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:93aafe94c40ee8eb066f3d20aff3525a88ea8c350ef847e4b9682df45752bc6e | sha256sum