Skip to main content

MCP server for systemic reasoning — 7-lens analytical framework, bileshke composite engine, kavaid constraints, kaskad generative cascade, inference chains, and Holographic Context Protocol. Plug into VS Code Copilot Chat.

Project description

dusun — Systemic Reasoning MCP Server

An MCP server that adds 7-lens systemic analysis to VS Code Copilot Chat. Install in 2 commands. Zero configuration.

pip install dusun
fw-engine --init

Restart VS Code. Done. The 8 tools appear in Copilot Chat automatically.

fw-engine --init creates .vscode/mcp.json in the current directory. Safe to re-run — won't overwrite existing config.


What It Does

dusun exposes a systemic reasoning engine as an MCP (Model Context Protocol) server. It gives your AI assistant structured analytical tools instead of relying on pure text generation:

Tool What It Does
run_single_lens Execute 1 of 7 analytical lenses on a concept
run_bileshke_pipeline Run all 7 lenses → composite score + quality report
check_kavaid Evaluate 8 formal constraints (boundary conditions)
verify_chains Verify inference chains from the framework DAG
get_framework_summary Aggregate summary from all modules
hcp_ingest Ingest context into the Holographic Context Protocol
hcp_query Query HCP for relevant chunks (seed-modulated attention)
hcp_diagnostics Return HCP diagnostic state

The 7 Lenses

Each lens is an independent analytical instrument (no shared state between them):

# Lens Domain Instrument
1 Ontoloji Concept ontology, Name mapping kavram_sozlugu
2 Mereoloji Part-whole, teleological structure mereoloji
3 FOL First-order logic, axiom extraction fol_formalizasyon
4 Bayes Bayesian inference, probability update bayes_analiz
5 OyunTeorisi Game theory, strategic interaction oyun_teorisi
6 KategoriTeorisi Functor verification, natural transformations kategori_teorisi
7 Topoloji + Holografik Topological/holographic analysis holografik

The bileshke (composite) engine combines all 7 lens outputs into a single quality score with coverage vectors, epistemic grades, and constraint checks.


Installation

Option 1: pip (recommended)

pip install dusun
fw-engine --init    # creates .vscode/mcp.json

Option 2: pipx (isolated environment)

pipx install dusun
fw-engine --init

Option 3: uvx (no install needed)

// .vscode/mcp.json
{
  "servers": {
    "fw-engine": {
      "type": "stdio",
      "command": "uvx",
      "args": ["--from", "dusun", "fw-engine"]
    }
  }
}

Option 4: From source

git clone https://github.com/kaantahti/dusun.git
cd dusun
pip install .

VS Code Setup

The easiest way (auto-generates config):

cd your-project
fw-engine --init    # creates .vscode/mcp.json

Or create .vscode/mcp.json manually:

{
  "servers": {
    "fw-engine": {
      "type": "stdio",
      "command": "fw-engine"
    }
  }
}

Windows with venv? Use the full path:

{
  "servers": {
    "fw-engine": {
      "type": "stdio",
      "command": "C:/Users/you/path/to/venv/Scripts/fw-engine.exe"
    }
  }
}

Restart VS Code. The fw-engine server appears in Copilot Chat's tool list. You can now use all 8 tools directly in chat.

3. Use in Copilot Chat

@copilot run the bileshke pipeline on the concept "tree"
@copilot check kavaid constraints with composite score 0.82
@copilot ingest this text into HCP and then query for "causation"

Claude Desktop Setup

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "fw-engine": {
      "command": "fw-engine"
    }
  }
}

CLI Usage

# Start MCP server on stdio
fw-engine

# Or run as a Python module
python -m fw_server

Architecture

Input → 7 Independent Lenses → Bileshke (Composite Engine) → Quality Report
              ↓                         ↓                         ↓
        Each lens runs              Weighted sum              Coverage vectors
        in isolation               (always < 1.0)            Epistemic grades
        (no shared state)                                    8 kavaid checks
                                                             AX57 disclosure

Key Properties

  • Independence (KV₇): Each lens runs in a fresh instance — no shared state, no contamination
  • Convergence bound (KV₄): Composite score is always strictly < 1.0 — the map is never the territory
  • Multiplicative gate (AX52): Zero in ANY dimension = system failure (not averaged away)
  • Epistemic ceiling (AX56): Maximum grade is İlmelyakîn (demonstrative certainty) — never claims more
  • Transparency (AX57): Every response discloses which lenses were used and which were not

Quality Framework

Component What It Checks
Q-1 Coverage Are all 7 faculties engaged? Multiplicative gate.
Q-2 Grade Epistemic degree: Tasavvur → Tasdik → İlmelyakîn
Q-3 Kavaid All 8 formal constraints pass?
Q-4 Completeness Max 6/7 — one dimension permanently inaccessible

Also Includes: ai_assert

A zero-dependency runtime constraint verifier for AI outputs:

from ai_assert import ai_assert, valid_json, max_length, contains

result = ai_assert(
    prompt="Return a JSON object with a 'greeting' key",
    constraints=[valid_json(), max_length(200), contains("hello")],
    generate_fn=my_llm,
    max_retries=3,
)

278 lines, zero dependencies, works with any LLM. See examples/basic_usage.py.


Also Includes: arc_solver

A pure-stdlib ARC-AGI solver with ~25 DSL primitives:

python arc_eval.py ARC-AGI/data/training -v
# 33/400 = 8.2% on ARC-AGI-1 training set, 83 seconds, zero dependencies

Requirements

  • Python ≥ 3.10
  • mcp >= 1.20 (installed automatically)

Development

git clone https://github.com/kaantahti/dusun.git
cd dusun
pip install -e .
python -m pytest tests/ -q

1694 tests, all passing.


License

MIT — see LICENSE.

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

dusun-1.5.0.tar.gz (356.6 kB view details)

Uploaded Source

Built Distribution

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

dusun-1.5.0-py3-none-any.whl (248.3 kB view details)

Uploaded Python 3

File details

Details for the file dusun-1.5.0.tar.gz.

File metadata

  • Download URL: dusun-1.5.0.tar.gz
  • Upload date:
  • Size: 356.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.2

File hashes

Hashes for dusun-1.5.0.tar.gz
Algorithm Hash digest
SHA256 348bbc0e70d92f8c73cd0b99e62340f0ad04cc11106e2753b024817ee4676c78
MD5 edb79fd4f4a9ff89ee693555654a0cf4
BLAKE2b-256 a9ff84d71f45c5a8a0d2eecafff34c73ccb2dfe0c1f9d8c5e1edbece613b91b2

See more details on using hashes here.

File details

Details for the file dusun-1.5.0-py3-none-any.whl.

File metadata

  • Download URL: dusun-1.5.0-py3-none-any.whl
  • Upload date:
  • Size: 248.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.2

File hashes

Hashes for dusun-1.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0f670ce6ad65122e7984b86244309ae00c4dde8eebae04d9e7af9bda2fd0f951
MD5 dcf24440836e1e73db9c4728a9d3badd
BLAKE2b-256 7b2efacee6b25db3397c0dfe3ce0a57afa878672ba7a62f52d51370047efd170

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