See every tool call your AI agent makes over MCP, hold the risky ones for your approval, give it only the folders it needs, and keep a secret-redacted journal that is tamper-evident with an external anchor. Self-hosted; grows into a control plane for many agents.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add mcpcut -- npx -y mcpcut --server '<SERVER_NAME>' '<SERVER_COMMAND>'~/.codex/config.toml
[mcp_servers.mcpcut]
command = "npx"
args = ["-y", "mcpcut", "--server", "<SERVER_NAME>", "<SERVER_COMMAND>"]
# codex mcp add mcpcut -- npx -y mcpcut --server '<SERVER_NAME>' '<SERVER_COMMAND>'~/.cursor/mcp.json
{
"mcpServers": {
"mcpcut": {
"command": "npx",
"args": [
"-y",
"mcpcut",
"--server",
"<SERVER_NAME>",
"<SERVER_COMMAND>"
]
}
}
}.vscode/mcp.json
{
"servers": {
"mcpcut": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcpcut",
"--server",
"<SERVER_NAME>",
"<SERVER_COMMAND>"
]
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"mcpcut": {
"command": "npx",
"args": [
"-y",
"mcpcut",
"--server",
"<SERVER_NAME>",
"<SERVER_COMMAND>"
]
}
}
}claude_desktop_config.json
{
"mcpServers": {
"mcpcut": {
"command": "npx",
"args": [
"-y",
"mcpcut",
"--server",
"<SERVER_NAME>",
"<SERVER_COMMAND>"
]
}
}
}.trae/mcp.json
{
"mcpServers": {
"mcpcut": {
"command": "npx",
"args": [
"-y",
"mcpcut",
"--server",
"<SERVER_NAME>",
"<SERVER_COMMAND>"
]
}
}
}