Skip to main content
MCP server CX Codex

Touchstone — Claude Code MCP server: audit agent actions

Touchstone records agent activity in an externally anchored log and signs entries on your machine. Use it to share or verify recorded actions.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env TOUCHSTONE_RECORDER=<TOUCHSTONE_RECORDER> --env TOUCHSTONE_SUBJECT=<TOUCHSTONE_SUBJECT> --env TOUCHSTONE_API_KEY=<TOUCHSTONE_API_KEY> --env TOUCHSTONE_SIGNING_KEY=<TOUCHSTONE_SIGNING_KEY> --env TOUCHSTONE_KEY_FILE=<TOUCHSTONE_KEY_FILE> --transport stdio touchstone -- npx -y @touchstone-cv/mcp
Open on GitHub

What Touchstone does

This local MCP server sends agent events to a Touchstone recorder. It canonicalizes each payload and signs it with an Ed25519 key on your machine; the key stays in the server process. The server uses stdio and needs Node 18+, a recorder ID and an API key. Recording also requires a subject and signing key.

Use touchstone_disclose to create a shareable disclosure link, or touchstone_verify to check a disclosure bundle. Those tools contact the remote service. Selective disclosure lets you reveal chosen fields while keeping others hidden. Disclosure and verification therefore depend on that service.

What it helps with

  • write agent actions to a signed audit log
  • create a shareable link for a recorded event
  • check a disclosure bundle
  • reveal selected event fields with Merkle proofs

Example prompts for the agent

  • Record this agent action with touchstone_record.
  • Create a disclosure link for sequence n using touchstone_disclose.
  • Check this disclosure bundle with touchstone_verify.

How to install Touchstone

1Platform CLI

claude mcp add --env TOUCHSTONE_RECORDER=<TOUCHSTONE_RECORDER> --env TOUCHSTONE_SUBJECT=<TOUCHSTONE_SUBJECT> --env TOUCHSTONE_API_KEY=<TOUCHSTONE_API_KEY> --env TOUCHSTONE_SIGNING_KEY=<TOUCHSTONE_SIGNING_KEY> --env TOUCHSTONE_KEY_FILE=<TOUCHSTONE_KEY_FILE> --transport stdio touchstone -- npx -y @touchstone-cv/mcp

Replace <…> with your own values. 1 more environment variable is in the server README

2Platform CLI: remote server

claude mcp add --transport http touchstone https://touchstone.cv/mcp

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about Touchstone

How do I install Touchstone in Claude Code?

Add the local server with `claude mcp add touchstone -e TOUCHSTONE_RECORDER=<TOUCHSTONE_RECORDER> -e TOUCHSTONE_SUBJECT=<TOUCHSTONE_SUBJECT> -e TOUCHSTONE_API_KEY=<TOUCHSTONE_API_KEY> -e TOUCHSTONE_SIGNING_KEY=<TOUCHSTONE_SIGNING_KEY> -- npx -y @touchstone-cv/mcp`. Set the recorder ID, subject, API key and signing key for recording.

What does Touchstone do?

It records agent events in a log, signs them with a local key, and provides tools to disclose and verify entries.

Can I share only some fields from an event?

Yes. Record with selective_disclosure: true, then choose which fields to reveal. Hidden values stay out of the disclosure; revealed fields include Merkle proofs.

Similar MCP servers

All MCP servers for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor