OCTAVE MCP Server - Lenient-to-Canonical OCTAVE pipeline with schema validation and generative holographic contracts
Project description
OCTAVE MCP Server
Production-grade MCP server implementing the OCTAVE v6 document protocol: Generative Holographic Contracts.
Table of Contents
- For AI Agents
- What It Does
- Quick Start
- Installation
- MCP Tools
- When OCTAVE Helps
- Documentation
- Contributing
For AI Agents
Reading this section makes you OCTAVE-literate. The ~200-token primer below is all you need to write valid OCTAVE:
===OCTAVE_LITERACY_PRIMER===
META:
TYPE::PRIMER
VERSION::"6.0.0"
TOKENS::~200
§1::ESSENCE
PURPOSE::"Write OCTAVE"
OCTAVE::"Semantic DSL for LLMs"
STRUCTURE::KEY::value,[list],indent_2
§2::SYNTAX
::→assign
→→flow
⊕→synthesis
⇌→tension
§3::ONE_SHOT
IN::"flow from A to B"
OUT::A→B
§4::VALIDATE
MUST::[valid_OCTAVE,preserve_§_names,"===END==="]
===END===
Project Context (for working on this codebase):
===AGENT_BOOTSTRAP===
QUALITY_GATES::[mypy,ruff,black,pytest]
DEV_SETUP::docs/guides/development-setup.md
SPECS::src/octave_mcp/resources/specs/
PRIMERS::src/octave_mcp/resources/primers/
IMMUTABLES::[
I1::SYNTACTIC_FIDELITY, // Preserve semantic meaning exactly
I2::DETERMINISTIC_ABSENCE, // Distinguish absent vs null vs default
I3::MIRROR_CONSTRAINT, // Reflect only what exists, create nothing
I4::TRANSFORM_AUDITABILITY, // Log every transformation with IDs
I5::SCHEMA_SOVEREIGNTY // Make validation status visible
]
===END===
What It Does
This repository ships the OCTAVE MCP Server (v1.5.0)—a Model Context Protocol implementation that transforms OCTAVE documents from passive text into Generative Holographic Contracts.
OCTAVE (Olympian Common Text And Vocabulary Engine) is a deterministic document format and control plane for LLM systems. It keeps meaning durable when text is compressed, routed between agents, or projected into different views.
Core Philosophy: Validation Precedes Generation
OCTAVE v6 introduces the principle that schemas should constrain LLM output during generation, not just validate it afterward. The META block can compile to strict grammars (Regex/GBNF) for constrained generation.
Implementation Status (v0.6.0): Grammar compilation is implemented and available via
debug_grammar=True. However, the MCP tools (octave_validate,octave_write) currently perform post-hoc validation rather than enforcing grammar constraints during generation. See the architecture spec for details.
- Generative Constraints:
META.CONTRACTcompiles to regex/GBNF grammar (usedebug_grammar=Trueto inspect). - Holographic Sovereignty: The document defines its own schema laws inline.
- Hermetic Anchoring: No network calls in the hot path. Standards are frozen or local.
- Auditable Loss: Compression tiers declared in
META(LOSSLESS,AGGRESSIVE).
Language, operators, and readability
- Syntax: Unicode-first operators (
→,⊕,⧺,⇌,∨,∧,§) with ASCII aliases. - Vocabulary: Mythological terms as semantic compression shorthands.
- Authoring: Humans write in the lenient view; tools normalize to canonical Unicode.
Mythological compression
OCTAVE's name -- Olympian Common Text And Vocabulary Engine -- reflects a foundational design insight: LLMs have deep training data saturation in classical mythology, making mythological terms function as pre-trained compression already in the weights. SISYPHEAN::BUILD_FAILURES encodes repetition, frustration, cyclicality, and futility in one word -- achieving 60-70% token reduction with 10x semantic density and 100% zero-shot comprehension across all tested models.
LLMs exhibit a documented paradigm blindness: when asked theoretically whether mythology helps, they hesitate; when given JOURNEY::ODYSSEAN practically, they understand instantly. If you just parsed that term without needing a definition, you've proven the thesis. Use mythology freely -- start with Greek, extend across world traditions as semantics demand.
See The Mythological Compression Principle for evidence and guidance. See research evidence for the full empirical basis.
See the protocol specs in src/octave_mcp/resources/specs/ for v6.0.0 rules.
What this server provides
octave-mcp bundles the OCTAVE tooling as MCP tools and a CLI.
- 4 MCP tools:
octave_validate,octave_write,octave_eject,octave_compile_grammar - Grammar Compiler: Compiles
META.CONTRACTconstraints to GBNF grammars (inspect viadebug_grammar=True). - Hermetic Hydrator: Resolves standards without network dependency.
When OCTAVE Helps
Use OCTAVE when documents must survive multiple agent/tool hops, repeated compression, or auditing:
- Self-Validating Agents: Agents that define their own output grammar.
- Coordination Briefs: Decision logs that circulate between agents.
- Compressed Context: Reusable prompts needing stable structure (54–68% token reduction).
Installation
PyPI:
pip install octave-mcp
# or
uv pip install octave-mcp
From source:
git clone https://github.com/elevanaltd/octave-mcp.git
cd octave-mcp
uv pip install -e ".[dev]"
Quick Start
CLI
# Validate and normalize (v6 auto-detection)
octave validate document.oct.md
# Write with validation (from content)
echo "===DOC===\nMETA:\n TYPE::LOG\n CONTRACT::GRAMMAR[...]\n..." | octave write output.oct.md --stdin
# Project to a view/format
octave eject document.oct.md --mode executive --format markdown
MCP Setup
Add to Claude Desktop (claude_desktop_config.json) or Claude Code (~/.claude.json):
{
"mcpServers": {
"octave": {
"command": "octave-mcp-server"
}
}
}
MCP Tools
| Tool | Purpose |
|---|---|
octave_validate |
Schema validation + repair suggestions + grammar compilation |
octave_write |
Unified file creation/modification with validation (includes normalize mode) |
octave_eject |
Format projection and template generation |
octave_compile_grammar |
Direct GBNF grammar compilation from META.CONTRACT constraints |
See API Reference for full parameter documentation.
Generative Holographic Contracts (v6)
OCTAVE v6 introduces the Holographic Contract concept:
- Read META: The parser reads the
METAblock first. - Compile Grammar: Constraints (
REQ,ENUM,REGEX) compile into GBNF grammar (available viadebug_grammar=True). - Generate/Validate: The body can be validated against this bespoke grammar.
Note: In v0.6.0, grammar compilation is implemented but tools perform post-hoc validation. Grammar-constrained generation is a roadmap feature.
Documentation
| Doc | Content |
|---|---|
| Usage Guide | CLI, MCP, and API examples |
| API Reference | Python API documentation |
| MCP Configuration | Client setup and integration |
| Protocol Specs | v6.0.0 Generative Holographic Specs |
| EBNF Grammar | Formal v1.0.0 grammar specification |
| Development Setup | Dev environment, testing, quality gates |
| Architecture Decisions | Architecture Decision Records (ADRs) |
| Research | Benchmarks and validation studies |
Contributing
See CONTRIBUTING.md for development setup, testing, and guidelines.
# Quick dev setup
git clone https://github.com/elevanaltd/octave-mcp.git
cd octave-mcp
uv venv && source .venv/bin/activate
uv pip install -e ".[dev]"
# Run tests
pytest
# Quality checks
ruff check src tests && mypy src && black --check src tests
License
Apache-2.0 — Built with MCP Python SDK.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file octave_mcp-1.5.0.tar.gz.
File metadata
- Download URL: octave_mcp-1.5.0.tar.gz
- Upload date:
- Size: 227.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7e78c467d3c25b8e486ab18b0d3a981fbedc8b16899ae1094a823b5c6cbf5085
|
|
| MD5 |
9c2cf80c36731a0061fcececbea18e21
|
|
| BLAKE2b-256 |
960b9770c57bfe586ce00299540bdaa9b8b3b8409fd2866210672689e62171fd
|
Provenance
The following attestation bundles were made for octave_mcp-1.5.0.tar.gz:
Publisher:
publish.yml on elevanaltd/octave-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
octave_mcp-1.5.0.tar.gz -
Subject digest:
7e78c467d3c25b8e486ab18b0d3a981fbedc8b16899ae1094a823b5c6cbf5085 - Sigstore transparency entry: 984925174
- Sigstore integration time:
-
Permalink:
elevanaltd/octave-mcp@5614548585066d795d2a3363852794be28b61d04 -
Branch / Tag:
refs/tags/v1.5.0 - Owner: https://github.com/elevanaltd
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5614548585066d795d2a3363852794be28b61d04 -
Trigger Event:
release
-
Statement type:
File details
Details for the file octave_mcp-1.5.0-py3-none-any.whl.
File metadata
- Download URL: octave_mcp-1.5.0-py3-none-any.whl
- Upload date:
- Size: 246.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc7d5e61e6379d4f1ab4a62831446179dba66747a5de3fe3f521c2df03f8765d
|
|
| MD5 |
b1172ee0ce7db2c034eb7a9e7acea138
|
|
| BLAKE2b-256 |
e807312da02e3d9254d2f7d5fc4f96a3b89463f880b7a3dc1671253bb34d0bd5
|
Provenance
The following attestation bundles were made for octave_mcp-1.5.0-py3-none-any.whl:
Publisher:
publish.yml on elevanaltd/octave-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
octave_mcp-1.5.0-py3-none-any.whl -
Subject digest:
cc7d5e61e6379d4f1ab4a62831446179dba66747a5de3fe3f521c2df03f8765d - Sigstore transparency entry: 984925180
- Sigstore integration time:
-
Permalink:
elevanaltd/octave-mcp@5614548585066d795d2a3363852794be28b61d04 -
Branch / Tag:
refs/tags/v1.5.0 - Owner: https://github.com/elevanaltd
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5614548585066d795d2a3363852794be28b61d04 -
Trigger Event:
release
-
Statement type: