zkproof.com
zkproof.com logo

ZKProof

Enables privacy-preserving computations with zero-knowledge proofs for verifying claims like age requirements without re...

Created byApr 23, 2025

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: ```bash git clone https://github.com/yourusername/zkMCP.git cd zkMCP/server ```
  1. Install dependencies: ```bash npm install ```
  1. Build the server: ```bash npm run build ```
  1. Add the server to your MCP settings configuration file: ```json { "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
  1. Perform trusted setup for circuits
  1. Generate proofs for circuits
  1. Verify proofs
See the [server README](server/README.md) 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](examples/age-verification/README.md) 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.