This service is under active development. Features may change without notice.
← Back to Docs

MCP Integration

Give AI assistants like Claude direct access to your Sirr vault. The @sirrlock/mcp server exposes 13 tools for managing secrets, audit logs, webhooks, and API keys — all from within a conversation.

View on GitHub →

Installation

npm install -g @sirrlock/mcp

Or use npx without a global install — see the configuration examples below.

Configuration

Add Sirr to your project's .mcp.json or ~/.claude/settings.json:

{
  "mcpServers": {
    "sirr": {
      "command": "sirr-mcp",
      "env": {
        "SIRR_SERVER": "http://localhost:39999",
        "SIRR_TOKEN": "your-sirr-master-key"
      }
    }
  }
}

Using npx without a global install:

{
  "mcpServers": {
    "sirr": {
      "command": "npx",
      "args": ["-y", "@sirrlock/mcp"],
      "env": {
        "SIRR_SERVER": "http://localhost:39999",
        "SIRR_TOKEN": "your-sirr-master-key"
      }
    }
  }
}
VariableDefaultDescription
SIRR_SERVERhttp://localhost:39999Sirr server URL
SIRR_TOKENBearer token — must match SIRR_MASTER_KEY on the server

Available Tools

Secrets

ToolDescription
get_secret(key)Retrieve a secret value (increments read counter; burns if max_reads reached)
push_secret(key, value, ttl_seconds?, max_reads?)Store a secret with optional expiry and read limit
list_secrets()List all active secrets — metadata only, values never returned
delete_secret(key)Burn a secret immediately, regardless of TTL or read count
prune_secrets()Delete all expired secrets in one sweep
health_check()Verify the Sirr server is reachable and healthy

Audit

ToolDescription
sirr_audit(since?, action?, limit?)Query the audit log — secret creates, reads, deletes, and key events

Webhooks

ToolDescription
sirr_webhook_create(url, events?)Register a webhook URL; returns ID and signing secret (shown once)
sirr_webhook_list()List all registered webhooks (signing secrets redacted)
sirr_webhook_delete(id)Remove a webhook by ID

API Keys

ToolDescription
sirr_key_create(label, permissions, prefix?)Create a scoped API key; raw key returned once — save it
sirr_key_list()List all scoped API keys (key hashes never returned)
sirr_key_delete(id)Delete an API key by ID

Inline Secret References

Reference secrets inline in any prompt using the sirr: prefix:

"Use sirr:DATABASE_URL to run a migration"
"Deploy with sirr:DEPLOY_TOKEN"

Claude automatically fetches the secret from the vault when it sees the sirr:KEYNAME pattern.

Security Notes

  • Claude only sees secret values when you explicitly ask it to fetch via get_secret
  • list_secrets returns metadata only — values are never included
  • Set max_reads=1 on any secret shared for a single AI session
  • The MCP server never logs secret values
  • Use HTTPS when SIRR_SERVER points to a remote host — plain HTTP transmits secrets unencrypted

Troubleshooting

SymptomFix
Sirr 401SIRR_TOKEN doesn't match SIRR_MASTER_KEY — verify both values match exactly
Sirr 402Free-tier limit of 100 secrets reached — delete unused secrets or add a license key
Secret not foundSecret expired, was burned, or key was mistyped — re-push if needed
Did not respond within 10sSirr server is unreachable — check SIRR_SERVER URL and run sirr-mcp --health
MCP server not foundsirr-mcp not on PATH — install globally or use the npx config variant

Open source

The MCP server is open source under the MIT license. Bug reports, feature requests, and pull requests are welcome.

github.com/sirrlock/mcp →