icon for mcp server

ZK Proof

STDIO

Zero-knowledge proof MCP server using circom for building, verifying, and managing ZK circuits.

zkMCP

A Model Context Protocol (MCP) server for zero-knowledge proofs using circom. This repository provides tools for building circuits, performing trusted setup, generating proofs, and verifying proofs.

Repository Structure

  • server/: The MCP server implementation
  • examples/: Example use cases for zero-knowledge proofs
    • age-verification/: An example that demonstrates how to verify a person's age without revealing their birth date

Installation

Server Installation

  1. Clone this repository:

    git clone https://github.com/yourusername/zkMCP.git cd zkMCP/server
  2. Install dependencies:

    npm install
  3. Build the server:

    npm run build
  4. Add the server to your MCP settings configuration file:

    { "mcpServers": { "zkproof": { "command": "node", "args": ["/path/to/zkMCP/server/build/index.js"], "env": { "ZKINTRO_DIR": "/path/to/circom/projects" }, "disabled": false, "autoApprove": [] } } }

Prerequisites

  • Node.js (v14 or later)
  • circom (v2.0.0 or later)
  • snarkjs

Usage

Once the server is installed and configured, you can use it to:

  1. Build circuits from Circom files
  2. Perform trusted setup for circuits
  3. Generate proofs for circuits
  4. Verify proofs

See the server README for detailed usage instructions.

Examples

Age Verification

The age verification example demonstrates how to use zero-knowledge proofs to verify that a person is above a certain age without revealing their actual birth date.

See the age verification README for more details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

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

Be the First to Experience MCP Now