Skip to main content
Glama
SamSoupSauce

deterministic-logic

by SamSoupSauce

Deterministic Logic Evaluation MCP Toolkit (deterministic-logic-mcp)

A Model Context Protocol (MCP) server providing high-performance, deterministic logic evaluation tools for AI assistants and automated systems.

Features & Logic Engines

  1. Propositional Logic & AST Evaluator: Parse and evaluate boolean expressions with full variable mapping. Supports &&, ||, !, ^ (XOR), => (IMPLIES), <=> (IFF), and custom operator notation.

  2. Truth Table Generator: Compute complete $2^N$ truth tables, check tautologies, contradictions, and satisfiability.

  3. DPLL SAT Solver: Convert formulas to Conjunctive Normal Form (CNF) and find satisfying variable assignments or prove UNSAT.

  4. JSON Logic Rule Engine: Deterministic evaluation of structured rules (boolean, arithmetic, comparison, array filters/maps, conditional branching) against JSON datasets.

  5. Decision Table Engine: Grid-based rule evaluation with support for wildcards, first_match, all_matches, and strict_single_match (determinism verification).

  6. State Machine Analyzer & Verifier: Check Finite State Machines (FSMs) for determinism, deadlocks, unreachable states, and state reachability path extraction.


Related MCP server: Logic-Thinking MCP Server

🛠️ MCP Tools Reference

Tool Name

Description

Key Arguments

evaluate_boolean

Evaluates a boolean logic expression with variable values

expression, env

generate_truth_table

Generates full truth table & computes Tautology / Contradiction

expression, maxVariables

solve_sat

DPLL SAT solver returning satisfying variable assignment or UNSAT

expression

evaluate_json_logic

Evaluates JSON logic rules against context JSON data

rule, data

evaluate_decision_table

Evaluates matrix decision table rules with determinism checks

rows, inputs, mode

analyze_state_machine

Checks FSM for determinism, deadlocks, and unreachable states

initialState, transitions, terminalStates

verify_state_reachability

Finds shortest execution path to target state in FSM

initialState, transitions, targetState

simulate_state_machine

Simulates an input sequence through an FSM step-by-step

initialState, transitions, inputSequence


🚀 Quickstart & Setup

Building Locally

npm install
npm run build
npm test

Configuring in MCP Clients (e.g. Claude Desktop, Cursor, AGY)

Add the following to your mcpServers configuration file (e.g. claude_desktop_config.json):

{
  "mcpServers": {
    "deterministic-logic": {
      "command": "node",
      "args": ["/home/mrovkill/Projects/deterministic-logic/dist/index.js"]
    }
  }
}

Or run directly via npx / tsx:

{
  "mcpServers": {
    "deterministic-logic": {
      "command": "npx",
      "args": ["tsx", "/home/mrovkill/Projects/deterministic-logic/src/index.ts"]
    }
  }
}

💡 Example Tool Usage

1. Truth Table Generation

Input: expression = "A => (B => A)"
Output: isTautology = true, isSatisfiable = true, truthTable rows showing all evaluated combinations.

2. DPLL SAT Solving

Input: expression = "(A || B) && (!A || B) && (!B)"
Output: satisfiable = false (UNSAT).

3. JSON Logic Rule Execution

Input:

{
  "rule": {
    "and": [
      { ">": [{ "var": "user.age" }, 18] },
      { "in": [{ "var": "user.role" }, ["admin", "editor"]] }
    ]
  },
  "data": { "user": { "age": 25, "role": "admin" } }
}

Output: result = true.


📄 License

MIT

Available Tools

8 tools
analyze_state_machineA

Formally analyzes a Finite State Machine (FSM) for determinism, unreachable states, and deadlock states.

ParametersJSON Schema
NameRequiredDescriptionDefault
statesNoOptional explicit list of all states
transitionsYesList of state transitions
initialStateYesInitial starting state of the FSM
terminalStatesNoList of designated terminal/accepting states

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so description carries full burden. It states the analysis type but does not disclose side effects, return format, or error conditions. Assumed read-only, but not explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence that is direct and informative, with no wasted words. Front-loaded with the primary purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity and lack of output schema, the description covers the main purpose adequately. However, it could mention what the output looks like (e.g., analysis results) for full completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents each parameter. The tool description adds no additional meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's action ('Formally analyzes') and specific analyses (determinism, unreachable states, deadlock states) on a Finite State Machine. It distinguishes from sibling tools like verify_state_reachability and simulate_state_machine.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied by the description (when formal analysis of an FSM is needed), but no explicit guidance on when not to use or alternatives is provided. Sibling context helps but description lacks direct instruction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evaluate_booleanA

Evaluates a boolean logic expression given a variable assignment map. Operators: &&, ||, !, ^ (XOR), => (IMPLIES), <=> (IFF).

ParametersJSON Schema
NameRequiredDescriptionDefault
envYesMap of variable names to boolean values (e.g., {"A": true, "B": false})
expressionYesThe boolean logic expression (e.g., "(A && B) || !C", "A => B")

TDQS

A3.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It only states that it evaluates an expression but does not disclose error handling, syntax validation, return format, or any side effects. For a tool with no behavioral annotations, this is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-structured sentence that efficiently conveys the tool's purpose and key information (operators). No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having 2 parameters and no output schema, the description does not explain what the tool returns, how errors are reported, or how it compares to siblings. This leaves the agent without critical context for invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear parameter descriptions. The description adds value by listing supported operators (&&, ||, !, ^, =>, <=>) which are not in the schema, enhancing understanding of the expression syntax.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool evaluates a boolean logic expression given a variable assignment map, listing supported operators. This directly distinguishes it from siblings like generate_truth_table (which enumerates assignments) and solve_sat (which checks satisfiability).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for evaluating expressions with specific operators, but does not explicitly state when to use this tool versus alternatives (e.g., evaluate_json_logic, evaluate_decision_table). No when-not-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evaluate_decision_tableB

Evaluates a matrix of decision rules against input context. Checks table for completeness and determinism.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoEvaluation mode: first_match (default), all_matches, or strict_single_match (errors if non-deterministic)
rowsYesList of decision table rows
inputsYesCurrent input variables context (e.g., {"tier": "gold", "amount": 150})

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It discloses that the tool checks completeness and determinism, and hints at mode behavior (first_match default). However, it does not describe error handling, side effects, or what happens when conditions are not met.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two concise sentences, front-loaded with the core action, followed by additional checks. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema provided, and the description does not describe the return value or structure (e.g., match results, error messages). Given the complexity of nested objects and enums, this is a significant omission.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema provides 100% coverage with descriptions for each parameter. The description adds no additional semantic value beyond what is in the schema; it only mentions general behavior without elaborating on specific parameters.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the main action: evaluating a matrix of decision rules against input context, and explicitly mentions additional checks for completeness and determinism. This distinguishes it from sibling tools like evaluate_boolean or evaluate_json_logic.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. Siblings like analyze_state_machine or simulate_state_machine are not mentioned, and no when-not-to-use advice is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evaluate_json_logicA

Evaluates deterministic JSON Logic rules against a context dataset. Supports boolean, comparisons, math, conditionals, and array rules.

ParametersJSON Schema
NameRequiredDescriptionDefault
dataNoContext data object (e.g., {"age": 21, "valid": true})
ruleYesJSON Logic rule object (e.g., {"and": [{">": [{"var": "age"}, 18]}, {"==": [{"var": "valid"}, true]}]})

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description highlights 'deterministic' behavior and lists supported rule types, which is moderately transparent. However, without annotations, it fails to disclose error handling, side effects, or output format, leaving gaps for an agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences front-load the primary purpose and quickly enumerate supported features. Every word adds value; no fluff or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no output schema, the description omits the return value (e.g., evaluated result). It covers inputs and supported operations but lacks outcome details, which is a gap for completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so parameters are documented. The description adds no extra semantic detail beyond the schema examples. The mention of 'context dataset' and 'rule' aligns with schema but doesn't enhance meaning.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool evaluates deterministic JSON Logic rules against a context dataset, specifying supported rule types (boolean, comparisons, math, conditionals, array). This distinguishes it from siblings like solve_sat or analyze_state_machine, which target different domains.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for evaluating JSON Logic rules but does not explicitly guide when to choose this tool over alternatives (e.g., evaluate_boolean for simpler boolean logic). No exclusions or context for misuse are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

generate_truth_tableA

Generates a complete truth table for a boolean logic expression and analyzes whether it is a Tautology, Contradiction, or Satisfiable.

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYesThe boolean logic expression (e.g., "A => (B => A)")
maxVariablesNoSafety limit on max variables to compute truth table for (default: 12)

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavior. It only states the action and result, omitting details such as computational intensity, safety limits (though mentioned in schema), or any side effects. The description is too brief to adequately inform the agent about behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence with 18 words, conveying the core purpose efficiently without redundancy. It earns its place, though it could be slightly expanded for better completeness without losing conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 parameters, no output schema) and the clear description of output (truth table + classification), the description provides sufficient context for basic use. However, it lacks any mention of prerequisites or performance considerations.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema already documents both parameters. The description does not add additional meaning beyond what is in the schema. Baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it generates a complete truth table and classifies the expression as Tautology, Contradiction, or Satisfiable. This distinguishes it from siblings like evaluate_boolean or solve_sat, which have different purposes.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies the tool is used when a full truth table is needed, but it does not explicitly mention when to avoid this tool or suggest alternatives like evaluate_boolean for simple evaluation or solve_sat for SAT solving. No context or exclusion criteria are provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

simulate_state_machineC

Simulates a sequence of inputs step-by-step through a state machine deterministically.

ParametersJSON Schema
NameRequiredDescriptionDefault
transitionsYesList of state transitions
initialStateYesInitial starting state
inputSequenceYesSequence of input tokens to execute

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden for behavioral disclosure. It only mentions 'deterministically' but fails to describe what happens on undefined transitions, whether it returns a final state or full path, or any side effects. This is insufficient for reliable tool usage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence of 12 words, conveying the core functionality without any fluff. It is appropriately front-loaded with the key verb and resource, making it efficient for an agent to parse.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of state machine simulation (3 required params, no output schema, related siblings), the description lacks details about return value, error handling, and input constraints. It is too terse to fully prepare an agent for correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with each parameter having a brief description. The tool description adds no extra meaning beyond the schema. Baseline 3 is appropriate as the schema already documents the parameters adequately.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool simulates inputs step-by-step through a state machine deterministically. It specifies the verb and resource, but does not explicitly distinguish from sibling tools like analyze_state_machine or verify_state_reachability, which are related but not focused on simulation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention use cases, prerequisites, or situations where other tools are preferred, leaving the agent to infer context from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

solve_satA

DPLL SAT solver for boolean satisfiability. Converts expression to Conjunctive Normal Form (CNF) and finds satisfying assignments or proves UNSAT.

ParametersJSON Schema
NameRequiredDescriptionDefault
expressionYesThe boolean expression to solve (e.g., "(A || B) && (!A || B) && (!B)")

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses key behaviors: expression is converted to CNF, and results are satisfying assignments or UNSAT. However, it does not mention error handling or performance considerations for large expressions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, dense sentence with no wasted words. It front-loads the core purpose and efficiently covers input, process, and output.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has only one parameter, no output schema, and no nested objects, the description is complete. It covers input, processing steps, and possible outputs.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter. The description provides an example syntax for the expression, adding meaning beyond the schema's type and description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it is a DPLL SAT solver for boolean satisfiability, specifying the process (conversion to CNF) and output (satisfying assignments or UNSAT). It distinguishes from sibling tools like evaluate_boolean or generate_truth_table through its specific purpose.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description does not explicitly state when to use this tool versus alternatives, nor does it provide exclusions or guidance. Usage is implied through the tool name and purpose, but lacks explicit context for an agent.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

verify_state_reachabilityA

Checks whether a target state can be reached from the initial state in a state machine, returning the shortest path execution sequence.

ParametersJSON Schema
NameRequiredDescriptionDefault
targetStateYesTarget state to check reachability for
transitionsYesList of state transitions
initialStateYesInitial starting state

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses the return of shortest path execution sequence, but lacks details on behavior for unreachable states, performance limits, or input validation. Adequate but not comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single sentence, no filler, front-loaded with purpose. Every word is necessary. Excellent conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given moderate complexity and no output schema, the description covers key aspects: input, operation, and output. Missing explicit handling of unreachable cases, but overall sufficient for a read-only verification tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already describes all three parameters adequately. The tool description adds no additional meaning beyond the schema, meeting baseline but not exceeding.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool checks reachability from initial to target state and returns shortest path. Specific verb 'checks' and resource 'state machine reachability' distinguish it from sibling tools like simulate_state_machine or analyze_state_machine.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. While the purpose is clear, the description does not mention when not to use it or provide context about sibling tools like analyze_state_machine or simulate_state_machine.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updatesv1.0.0
    • First observedanalyze_state_machine
    • First observedevaluate_boolean
    • First observedevaluate_decision_table
    • First observedevaluate_json_logic
    • First observedgenerate_truth_table
    • First observedsimulate_state_machine
    • First observedsolve_sat
    • First observedverify_state_reachability

TDQS

A3.7/5.0
Disambiguation5/5

Each tool targets a distinct aspect of logic and state machine analysis: boolean logic evaluation, truth table generation, SAT solving, JSON logic evaluation, decision table analysis, FSM analysis, reachability, and simulation. No significant overlap.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern (evaluate_boolean, generate_truth_table, solve_sat, etc.), with clear verbs and specific nouns. The naming is predictable and easy to understand.

Tool Count5/5

Eight tools is well-scoped for the domain, covering boolean logic, SAT, JSON logic, decision tables, and state machines without being too few or too many. Each tool serves a clear purpose.

Completeness4/5

The tool surface covers core operations for boolean logic (evaluate, truth table, SAT) and state machines (analysis, reachability, simulation). Minor gaps exist (e.g., no JSON logic validation, no state machine minimization) but do not hinder primary workflows.

Maintenance

ActivitySlowing
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Enables first-order logic reasoning including theorem proving, model finding, counterexample detection, and category theory diagram verification using pure TypeScript with no external dependencies.
    13
    4
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables formal logical reasoning, mathematical problem-solving, and proof construction across 11 logic systems including propositional, predicate, modal, fuzzy, and probabilistic logic. Integrates external solvers (Z3, ProbLog, Clingo) for advanced reasoning, with support for proof storage, argument scoring, and cross-system translation.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides deterministic tools for transforming, formatting, and inspecting structured data for AI agents.
    5
    19
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides deterministic tools for symbolic math, equation solving, relation verification, reasoning structure audits, and validated CAD primitives, returning evidence artifacts for every result.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SamSoupSauce/deterministic-logic'

If you have feedback or need assistance with the MCP directory API, please join our Discord server