mcpField
M
MCP-RoCQ (Coq Reasoning Server)

MCP-RoCQ (Coq Reasoning Server)

Local
github.com/angrysky56AI & Agents10Updated 91w ago

About MCP-RoCQ (Coq Reasoning Server)

MCP-RoCQ connects the Coq proof assistant to MCP for users working on type checking, inductive type definitions, and property proofs. Its README notes that Claude may currently encounter syntax problems when using it.

Key features

  1. 01Dependent type checking
  2. 02Define inductive types
  3. 03Prove properties with tactics
  4. 04Structured Coq communication
  5. 05Type and proof error feedback

Use cases

  1. 01Check a term against an expected type
  2. 02Define and verify an inductive type
  3. 03Attempt automated logical proofs

MCP support

This MCP server exposes Coq tools for type checking, inductive type definitions, and property proving to MCP clients. The README notes that Claude may not currently use the tools correctly.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP-RoCQ (Coq Reasoning Server)

Currently shows tools but Claude can't use it properly for some reason- invalid syntax generally seems the issue but there could be something else.

There may be a better way to set this up with the coq cli or something. Anyone want to try and fix it who knows what they are doing would be great.

MCP-RoCQ is a Model Context Protocol server that provides advanced logical reasoning capabilities through integration with the Coq proof assistant. It enables automated dependent type checking, inductive type definitions, and property proving with both custom tactics and automation.

Features

  • Automated Dependent Type Checking: Verify terms against complex dependent types
  • Inductive Type Definition: Define and automatically verify custom inductive data types
  • Property Proving: Prove logical properties using custom tactics and automation
  • XML Protocol Integration: Reliable structured communication with Coq
  • Rich Error Handling: Detailed feedback for type errors and failed proofs

Installation

  1. Install the Coq Platform 8.19 (2024.10)

Coq is a formal proof management system. It provides a formal language to write mathematical definitions, executable algorithms and theorems together with an environment for semi-interactive development of machine-checked proofs.

https://github.com/coq/platform

  1. Clone this repository:
git clone https://github.com/angrysky56/mcp-rocq.git

cd to the repo

uv venv
./venv/Scripts/activate
uv pip install -e .

JSON for the Claude App or mcphost config- set your paths according to how you installed coq and the repository.

    "mcp-rocq": {
      "command": "uv",
      "args": [
        "--directory",
        "F:/GithubRepos/mcp-rocq",
        "run",
        "mcp_rocq",
        "--coq-path",
        "F:/Coq-Platform~8.19~2024.10/bin/coqtop.exe",
        "--lib-path",
        "F:/Coq-Platform~8.19~2024.10/lib/coq"
      ]
    },

This might work- I got it going with uv and most of this could be hallucinatory though:

  1. Install dependencies:
pip install -r requirements.txt

Usage

The server provides three main capabilities:

1. Type Checking
{
    "tool": "type_check",
    "args": {
        "term": "<term to check>",
        "expected_type": "<type>",
        "context": ["relevant", "modules"] 
    }
}
2. Inductive Types
{
    "tool": "define_inductive",
    "args": {
        "name": "Tree",
        "constructors": [
            "Leaf : Tree",
            "Node : Tree -> Tree -> Tree"
        ],
        "verify": true
    }
}
3. Property Proving
{
    "tool": "prove_property",
    "args": {
        "property": "<statement>",
        "tactics": ["<tactic sequence>"],
        "use_automation": true
    }
}

License

This project is licensed under the MIT License - see the LICENSE file for details.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.