MCP Catalogs
Home

chiasmus

by yogthos·178·Score 50

Chiasmus is an MCP server that provides LLMs with formal verification capabilities using Z3 and Prolog.

developer-toolssecurityai-llm
9
Forks
4
Open issues
this month
Last commit
2d ago
Indexed

Overview

Chiasmus is a sophisticated MCP server that bridges natural language reasoning with formal verification. It integrates Z3 (SMT solver) and SWI-Prolog to verify code correctness, detect conflicts in security policies, analyze code reachability, and perform dead code detection. The server uses tree-sitter for code analysis and includes a template-based system to translate natural language problems into formal logic. The server offers multiple tools for different verification tasks, from direct SMT-LIB/Prolog execution to high-level analysis like call graph traversal, impact analysis, and code review automation. It supports multiple programming languages and includes caching for improved performance. The unique ability to create custom verification templates makes it highly extensible for specialized use cases.

Try asking AI

After installing, here are 5 things you can ask your AI assistant:

you:Verifying consistency between frontend and backend validation rules
you:Analyzing call graphs for data flow and reachability in codebases
you:Performing dead code detection and impact analysis before refactoring
you:What programming languages does Chiasmus support for code analysis?
you:How does Chiasmus handle large codebases efficiently?

When to choose this

Choose Chiasmus when you need mathematically certain verification of code properties, security vulnerabilities, or system behavior beyond testing.

When NOT to choose this

Avoid if you need only basic code analysis or if your use case doesn't require formal mathematical verification capabilities.

Tools this server exposes

11 tools extracted from the README
  • chiasmus_verify

    Submit raw SMT-LIB or Prolog to get verified results from Z3 or SWI-Prolog solvers

  • chiasmus_graph

    Analyze source code call graphs via tree-sitter + Prolog for code structure, reachability, and impact

  • chiasmus_map

    Generate codebase outline showing exports, imports, and symbols without opening source files

  • chiasmus_skills

    Search the template library for formal verification patterns and examples

  • chiasmus_formalize

    Find the best verification template for a problem and get slot-filling instructions

  • chiasmus_solve

    End-to-end verification using templates, slot filling, and solver validation

  • chiasmus_craft

    Create new verification templates and add them to the skill library

  • chiasmus_review

    Generate a phased code review recipe with verification checks and analysis steps

  • chiasmus_search

    Semantic code search over files using embeddings to find functions by meaning

  • chiasmus_learn

    Extract reusable verification templates from successful solutions

  • chiasmus_lint

    Fast structural validation of specifications without running solvers

Comparable tools

semgrep-mcptree-sitter-mcpsonar-mcpverifiable

Installation

npm install -g chiasmus

For Claude Desktop:

{
  "mcpServers": {
    "chiasmus": {
      "command": "npx",
      "args": ["-y", "chiasmus"]
    }
  }
}

FAQ

What programming languages does Chiasmus support for code analysis?
Chiasmus has built-in support for TypeScript, JavaScript, Python, Go, and Clojure/ClojureScript. Additional languages can be added via custom adapters.
How does Chiasmus handle large codebases efficiently?
Chiasmus uses a content-hash cache system that can reduce parsing time by 60x for unchanged files. It uses native O(V+E) graph algorithms for scalable analyses.

Compare chiasmus with

GitHub →

Last updated · Auto-generated from public README + GitHub signals.