About Countersign
Countersign exposes a shared spending policy, freeze control, and tamper-evident ledger for AI agents using different wallet backends. This MCP server is for teams that need approval and spending controls across an agent fleet; it requires a running Countersign Core.
Key features
- 01Check spending before wallet actions
- 02Freeze agents across backends
- 03Apply shared spending policies
- 04Manage human approval requests
- 05Read and verify audit ledger
Use cases
- 01Block spending beyond configured limits
- 02Freeze agents across wallet backends
- 03Review and verify spending records
MCP support
Provides MCP tools for spend checks, policy management, approvals, freezes, agent status, and ledger access. It connects to a running Countersign Core using COUNTERSIGN_URL and, when enabled, COUNTERSIGN_API_KEY.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @countersign/mcpCOUNTERSIGN_URLBase URL of the Countersign Core to govern (hosted or self-hosted).COUNTERSIGN_API_KEYSecretAPI key for the Core (self-serve one at https://app.countersign.network/start or POST /signup).Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
13Saved tool list · updated 2w ago
This tool takes no parameters.
Details
From the project README@countersign/mcp
The cross-vendor kill switch + spend guard for AI agents — as MCP tools, inside any MCP client.
Countersign is a neutral control plane that holds one policy, one freeze, and one tamper-evident audit ledger across every agent-wallet backend at once. This package exposes it as Model Context Protocol tools, so an agent (or you, from chat in Claude / Cursor) can ask "may I spend this?" before acting — and freeze everything in under a second.
Tools
| Tool | What it does |
|---|---|
countersign_request_spend | Pre-flight guard — ask whether a spend is allowed before touching the wallet (allow / deny / needs_approval). |
countersign_freeze | The kill switch — freeze every agent on every backend at once. |
countersign_apply_policy | Apply one unified policy (caps, allow/deny lists, approval threshold) across all backends. |
countersign_list_agents / countersign_health | See the governed fleet + control-plane health. |
countersign_list_approvals / countersign_approve / countersign_deny | The human-approval queue. |
countersign_ledger | Read + re-verify the append-only, hash-chained audit ledger. |
countersign_unfreeze | Lift a freeze (recover). |
Setup
It governs a running Countersign Core. The hosted Core at app.countersign.network is paused since
2026-09-18 and answers 503, so point this at a Core you run yourself. Set:
COUNTERSIGN_URL— your Core, e.g.https://app.countersign.networkCOUNTERSIGN_API_KEY— required when the Core has auth enabled
Claude Desktop / Claude Code / Cursor
Add to your MCP config (claude_desktop_config.json, or claude mcp add, or Cursor's mcp.json):
{
"mcpServers": {
"countersign": {
"command": "npx",
"args": ["-y", "@countersign/mcp"],
"env": {
"COUNTERSIGN_URL": "https://app.countersign.network",
"COUNTERSIGN_API_KEY": "csk_…"
}
}
}
}
That's it — your agent now has the spend guard and the kill switch.
Show it (the "powered by" badge)
If Countersign guards your agent, say so — it tells users (and other agents) that spending is governed, and points the next operator at the same kill switch. Drop this in your README:
[](https://countersign.network)
Listing in MCP registries (distribution)
Countersign spreads by being easy to discover wherever agent builders look for tools. The metadata below is ready to submit to the common registries — copy it as-is.
- Official MCP registry (
registry.modelcontextprotocol.io/ themcp-registryrepo) — entry:{ "name": "io.github.countersign-network/countersign", "description": "Cross-vendor kill switch + spend guard for AI agents that spend money — one policy, one freeze, one tamper-evident ledger across every wallet/card backend.", "homepage": "https://countersign.network", "repository": "https://github.com/countersign-network/countersign", "packages": [ { "registry": "npm", "name": "@countersign/mcp", "runtime": "npx" } ], "license": "Apache-2.0" } - mcp.so — submit
@countersign/mcp; category Finance / Security / Agents. - Smithery —
npx-launched server; envCOUNTERSIGN_URL(defaulthttps://app.countersign.network) + optionalCOUNTERSIGN_API_KEY. - awesome-mcp-servers lists — one-liner:
Countersign — cross-vendor spend guard + sub-second kill switch + tamper-evident ledger for AI agents that move money (Coinbase, Turnkey, Openfort, Visa card). Testnet.
Standard listing fields:
| Field | Value |
|---|---|
| Server id | countersign |
| Launch | npx -y @countersign/mcp |
| Tools | countersign_request_spend, countersign_freeze, countersign_apply_policy, countersign_list_agents, countersign_health, countersign_list_approvals, countersign_approve, countersign_deny, countersign_ledger, countersign_unfreeze |
| Tags | payments · security · kill-switch · spend-guard · agent-payments · wallet |
Nothing here is auto-submitted — listings are made deliberately by a maintainer.
Apache-2.0. Countersign holds policy/freeze/ledger; it never takes custody of funds. Testnet only.
Comments
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.