Chainweb API
FreeNot checkedChainweb HTTP API: local sim, pre-signed send, poll, table reads, SPV proofs, module deploys.
About
Chainweb HTTP API: local sim, pre-signed send, poll, table reads, SPV proofs, module deploys.
README
CI npm License: Apache-2.0 Node >= 20.11
Model Context Protocol servers that give your AI agent safe, auditable access to the Pact 5 development loop on Kadena Chainweb.
Run REPL tests, scan modules for critical language traps, estimate gas, and query or submit to Chainweb nodes — from Claude, Cursor, VS Code, or any MCP-compatible client. Every tool runs behind a strict, tested security baseline, and no tool ever touches a private key.
{
"mcpServers": {
"pact": {
"command": "npx",
"args": ["-y", "@pact-community/mcp-pact"],
"env": { "PACT_COMMUNITY_WORKSPACE_ROOT": "/path/to/your/project" }
}
}
}
Servers
| Server | Install | Tools | What it does |
|---|---|---|---|
| Pact Tooling — @pact-community/mcp-pact | npm | 6 | REPL test runs, critical-trap scanning, gas estimation, interface diff, format checks |
| Chainweb API — @pact-community/mcp-chainweb | npm | 11 | /local simulation, pre-signed /send, poll, table reads, SPV proofs, module deploys |
Both are listed in the official
MCP registry as
io.github.Pact-Community-Organization/pact and
io.github.Pact-Community-Organization/chainweb.
Install
VS Code (one click)
Using VS Code with GitHub Copilot? Install with a single click:
Install Pact Tooling in VS Code Install Chainweb API in VS Code
The button opens VS Code and pre-fills the configuration. You can also search the MCP Servers view, or add from the command line:
code --add-mcp '{"name":"pact","command":"npx","args":["-y","@pact-community/mcp-pact"],"env":{"PACT_COMMUNITY_WORKSPACE_ROOT":"${workspaceFolder}","PACT_COMMUNITY_PACT_BIN":"pact"}}'
On VS Code Insiders, use
vscode-insiders:in the links orcode-insiderson the command line.
Claude Code
claude mcp add pact -e PACT_COMMUNITY_WORKSPACE_ROOT=/path/to/your/project \
-- npx -y @pact-community/mcp-pact
Any MCP client
Add both servers to your client configuration:
{
"mcpServers": {
"pact": {
"command": "npx",
"args": ["-y", "@pact-community/mcp-pact"],
"env": {
"PACT_COMMUNITY_WORKSPACE_ROOT": "/path/to/your/project",
"PACT_COMMUNITY_PACT_BIN": "pact"
}
},
"chainweb": {
"command": "npx",
"args": ["-y", "@pact-community/mcp-chainweb"],
"env": {
"PACT_COMMUNITY_WORKSPACE_ROOT": "/path/to/your/project",
"PACT_COMMUNITY_CHAINWEB_MODE": "devnet",
"PACT_COMMUNITY_CHAINWEB_PROFILE": "devnet",
"PACT_COMMUNITY_CHAINWEB_BASE_URL": "http://localhost:8081",
"PACT_COMMUNITY_CHAINWEB_NETWORK_ID": "development"
}
}
}
}
Each server's README documents its full tool list and environment variables: Pact Tooling · Chainweb API.
Your first 10 minutes
- Install the Pact CLI — Pact Tooling uses it for REPL runs and gas
estimation. Download a release from
kadena-io/pact-5, put
pacton yourPATH, and verify withpact --version. - Add the servers to your client with the config above, pointing
PACT_COMMUNITY_WORKSPACE_ROOTat your contract project. - Ask your agent:
- "Scan
contracts/token.pactfor critical Pact 5 traps" — flags non-binary+, DB reads insideenforce, built-in shadowing, and more. - "Run
tests/token.repland summarize the failures" — executes the file with the real Pact interpreter and parses the results. - "Diff the public interface of
token.pactagainsttoken-v2.pact" — reports added/removed/changed functions and whether the change is breaking. - "What's the current block height on chain 0?" — queries a Chainweb node.
- "Scan
Everything in Pact Tooling works with just the CLI — no node required. Chainweb
API works against any Chainweb-compatible node: point
PACT_COMMUNITY_CHAINWEB_BASE_URL at your devnet, or use the read-only
testnet06 / mainnet profiles to query public networks.
Security
Both servers enforce the same tested baseline (details in SECURITY.md):
- No private keys, ever.
chainweb.send,chainweb.deploy_module, andchainweb.continue_pactrequire transactions to be signed externally (Ledger,@kadena/client, …) and passed in pre-signed. - Read-only public networks. The
testnet06andmainnetprofiles block every write tool withPROFILE_WRITE_BLOCKED. - Audit logging of every tool call with SHA-256 input hashes (never raw inputs).
- Prompt-injection stripping on all tool output before it reaches the model.
- Tool-schema locking — a server refuses to start if its tool schemas drift.
- Network and filesystem allowlists, no shell execution, and refusal to run as root.
Compatibility
| Server | Local devnet | Testnet | Mainnet |
|---|---|---|---|
| Pact Tooling | ✅ | — | — |
| Chainweb API | ✅ | ✅ read-only | ✅ read-only |
Contributing
git clone https://github.com/Pact-Community-Organization/pact-mcp.git
cd pact-mcp
pnpm install
pnpm build
pnpm test
Requires Node.js >= 20.11 and pnpm >= 9. See CONTRIBUTING.md for workflow, coding standards, and how to add or change a tool.
License
Install Chainweb API in Claude Desktop, Claude Code & Cursor
unyly install chainweb-apiInstalls into Claude Desktop, Claude Code, Cursor & VS Code — handles npx, uvx and build-from-source repos for you.
First time? Get the CLI: curl -fsSL https://unyly.org/install | sh
Or configure manually
Run in your terminal:
claude mcp add chainweb-api -- npx -y @pact-community/mcp-chainwebFAQ
Is Chainweb API MCP free?
Yes, Chainweb API MCP is free — one-click install via Unyly at no cost.
Does Chainweb API need an API key?
No, Chainweb API runs without API keys or environment variables.
Is Chainweb API hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Chainweb API in Claude Desktop, Claude Code or Cursor?
Open Chainweb API on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare Chainweb API with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All development MCPs
