Skip to main content

MCP server exposing the Ten formal algebra for machine intelligence communication

Project description

ten-mcp-server

MCP server exposing the Ten formal algebra for machine intelligence communication.

Ten treats messages as math, not natural language. This server gives LLMs structured access to Ten's algebraic operations via the Model Context Protocol.

Tools

Tool Description
ten_encode Build a Ten expression from a structured dict and return its binary wire format
ten_decode Deserialize wire bytes back into a structured expression
ten_compose Algebraically combine two expressions (sequence, product, nest, union, intersect)
ten_project Extract a subset of facet dimensions from an expression
ten_filter Evaluate expressions against facet-based filter criteria
ten_describe Return a human-readable structural description of an expression
ten_verify Validate expression tree integrity and check assertion metadata

All operations are pure code — no AI inference, no LLM calls. Encoding is building a data structure. Decoding is deserializing bytes. Filtering is numeric comparison.

Installation

One-click (MCP clients)

mcp install ten-mcp-server

From PyPI

pip install ten-mcp-server

From source

git clone https://github.com/johnbeans/Ten.git
cd Ten
pip install ./tenlang           # install Python bindings first
pip install ./ten_mcp_server    # install MCP server

Usage

As an MCP server (stdio transport)

ten-mcp-server
# or
python -m ten_mcp_server

Claude Desktop configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "ten": {
      "command": "ten-mcp-server"
    }
  }
}

Expression Format

Expressions are JSON-friendly dicts with a type field:

# Scalar: a numeric value with dimension and precision
{"type": "scalar", "dimension": 0, "value": 42.0, "precision": "64bit"}

# Operation: a verb with optional arguments
{"type": "operation", "verb": "query", "args": [
    {"type": "scalar", "dimension": 1, "value": 100.0}
]}

# Assertion: a claim with confidence and identity
{"type": "assertion", "claim": {"type": "scalar", "dimension": 0, "value": 1.0},
 "who": {"type": "identity", "pubkey": "AAAA..."},
 "confidence": 0.95}

# Compositions: combine expressions algebraically
{"type": "sequence", "left": {...}, "right": {...}}
{"type": "nesting", "envelope": {...}, "payload": {...}}

Facets

Expressions can carry facet vectors — fixed-position sortable metadata:

urgency, cost, privilege, confidence, ttl, effort, reputation, value

Use ten_filter to evaluate expressions against facet criteria (e.g., "urgency >= 0.8 AND cost <= 50.0").

Dependencies

  • tenlang — Python bindings for the Ten algebra (wraps libten C core)
  • mcp — Model Context Protocol SDK

License

Apache-2.0 — Jolly Logic, LLC

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ten_mcp_server-0.1.0.tar.gz (11.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ten_mcp_server-0.1.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file ten_mcp_server-0.1.0.tar.gz.

File metadata

  • Download URL: ten_mcp_server-0.1.0.tar.gz
  • Upload date:
  • Size: 11.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ten_mcp_server-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2864eaad01bce255e46851b4f5e8a29c211ca6abe16c230c7cd971beb67964f7
MD5 ccd993a9877de2a71df60b7cb82f198d
BLAKE2b-256 f12fec94727e1ff00ffe4c6846d43102b0f3a504041ab3f6c12cb827fa39c6e4

See more details on using hashes here.

File details

Details for the file ten_mcp_server-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ten_mcp_server-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for ten_mcp_server-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 923acb6894efe84c639f21e39226a77ed66f068c3f660ad91539eb0a16309e5e
MD5 ae321422b53347cf5f0d9c9d77607c56
BLAKE2b-256 3254034d2b89fbf4a6bd4a7924c1e5379287789932f4a49815875019d8f1fa6a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page