@sirrlock/mcp 1.0.32 → 1.0.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +48 -16
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -74,14 +74,25 @@ Or use `npx` without a global install — see the configuration block below.
74
74
 
75
75
  ## Quick start
76
76
 
77
- 1. **Start Sirr** run the Sirr server and note the `SIRR_MASTER_KEY` you set (or the one it printed on first launch).
78
- 2. **Set your token** — `SIRR_TOKEN` in your MCP config must equal that `SIRR_MASTER_KEY` value (or a principal key for org-scoped access).
79
- 3. **Add to `.mcp.json`**paste the config block below, substituting your server URL and key.
80
- 4. **Verify** run `sirr-mcp --health` to confirm the connection before starting your AI session.
77
+ ### Sirr Cloud (recommended)
78
+
79
+ 1. **Sign up** at [sirrlock.com](https://sirrlock.com/sign-in)free tier includes 3 seats and unlimited secrets.
80
+ 2. **Get your principal key** from the dashboard (Settings API Keys).
81
+ 3. **Add to `.mcp.json`** — paste the config block below with your key and org ID.
82
+ 4. **Verify** — run `sirr-mcp --health` to confirm the connection.
83
+
84
+ ### Self-Hosted
85
+
86
+ 1. **Start Sirr** — run `sirrd serve` and note the `SIRR_MASTER_API_KEY` you set.
87
+ 2. **Set your token** — `SIRR_TOKEN` in your MCP config must equal that key value.
88
+ 3. **Add to `.mcp.json`** — use the self-hosted config block below.
89
+ 4. **Verify** — run `sirr-mcp --health` to confirm the connection.
81
90
 
82
91
  ## Configuration
83
92
 
84
- Add Sirr to your project's `.mcp.json` or `~/.claude/settings.json`:
93
+ ### Sirr Cloud (default)
94
+
95
+ No `SIRR_SERVER` needed — defaults to `https://sirr.sirrlock.com`.
85
96
 
86
97
  ```json
87
98
  {
@@ -89,8 +100,8 @@ Add Sirr to your project's `.mcp.json` or `~/.claude/settings.json`:
89
100
  "sirr": {
90
101
  "command": "sirr-mcp",
91
102
  "env": {
92
- "SIRR_SERVER": "http://localhost:39999",
93
- "SIRR_TOKEN": "your-sirr-master-key"
103
+ "SIRR_TOKEN": "your-principal-key",
104
+ "SIRR_ORG": "your-org-id"
94
105
  }
95
106
  }
96
107
  }
@@ -105,24 +116,42 @@ Using `npx` without a global install:
105
116
  "sirr": {
106
117
  "command": "npx",
107
118
  "args": ["-y", "@sirrlock/mcp"],
119
+ "env": {
120
+ "SIRR_TOKEN": "your-principal-key",
121
+ "SIRR_ORG": "your-org-id"
122
+ }
123
+ }
124
+ }
125
+ }
126
+ ```
127
+
128
+ ### Self-Hosted
129
+
130
+ Point `SIRR_SERVER` at your own `sirrd` instance:
131
+
132
+ ```json
133
+ {
134
+ "mcpServers": {
135
+ "sirr": {
136
+ "command": "sirr-mcp",
108
137
  "env": {
109
138
  "SIRR_SERVER": "http://localhost:39999",
110
- "SIRR_TOKEN": "your-sirr-master-key"
139
+ "SIRR_TOKEN": "your-master-api-key"
111
140
  }
112
141
  }
113
142
  }
114
143
  }
115
144
  ```
116
145
 
117
- > **What is `SIRR_TOKEN`?** For single-tenant usage, set it to `SIRR_MASTER_KEY` (full access). For multi-tenant org-scoped usage, set it to a principal key. A mismatch is the most common cause of 401 errors. See [sirr.dev/errors#401](https://sirr.dev/errors#401).
146
+ > **What is `SIRR_TOKEN`?** On Sirr Cloud, use a **principal key** from the sirrlock.com dashboard. For self-hosted, use the `SIRR_MASTER_API_KEY` value (full access) or a principal key for org-scoped access. A mismatch is the most common cause of 401 errors. See [sirr.dev/errors#401](https://sirr.dev/errors#401).
118
147
 
119
148
  ### Environment variables
120
149
 
121
150
  | Variable | Default | Description |
122
151
  |---|---|---|
123
- | `SIRR_SERVER` | `http://localhost:39999` | Sirr server URL |
124
- | `SIRR_TOKEN` | — | Bearer token — `SIRR_MASTER_KEY` for full access, or a principal key for org-scoped access |
125
- | `SIRR_ORG` | — | Organization ID for multi-tenant mode. When set, all secret/audit/webhook/prune paths are prefixed with `/orgs/{id}/`. Leave unset for single-tenant usage. |
152
+ | `SIRR_SERVER` | `https://sirr.sirrlock.com` | Sirr server URL. Omit for Cloud; set to your instance URL for self-hosted. |
153
+ | `SIRR_TOKEN` | — | Bearer token — a principal key (Cloud or org-scoped) or `SIRR_MASTER_API_KEY` (self-hosted full access) |
154
+ | `SIRR_ORG` | — | Organization ID. Required for Cloud; optional for self-hosted single-tenant usage. |
126
155
 
127
156
  ## CLI flags
128
157
 
@@ -130,8 +159,11 @@ Using `npx` without a global install:
130
159
  # Print the installed version and exit
131
160
  sirr-mcp --version
132
161
 
133
- # Check that the MCP server can reach Sirr and exit
134
- SIRR_SERVER=http://localhost:39999 SIRR_TOKEN=mykey sirr-mcp --health
162
+ # Check connectivity (Cloud)
163
+ SIRR_TOKEN=your-principal-key SIRR_ORG=your-org-id sirr-mcp --health
164
+
165
+ # Check connectivity (self-hosted)
166
+ SIRR_SERVER=http://localhost:39999 SIRR_TOKEN=your-master-key sirr-mcp --health
135
167
  ```
136
168
 
137
169
  `--health` exits with code `0` on success and `1` on failure, making it safe to use in scripts and CI.
@@ -201,7 +233,7 @@ SIRR_SERVER=http://localhost:39999 SIRR_TOKEN=mykey sirr-mcp --health
201
233
 
202
234
  | Tool | Description |
203
235
  |---|---|
204
- | `sirr_role_create(org_id, name, permissions)` | Create a custom role. Permissions: C=create R=read P=patch D=delete L=list M=manage A=admin |
236
+ | `sirr_role_create(org_id, name, permissions)` | Create a custom role. Permission letters: `r`=read-own `R`=read-org `l`=list-own `L`=list-org `c`=create `C`=create-on-behalf `p`=patch-own `P`=patch-org `a`=account-read `A`=account-read-org `m`=account-manage `M`=manage-org `S`=sirr-admin `d`=delete-own `D`=delete-org |
205
237
  | `sirr_role_list(org_id)` | List all roles in an org (built-in and custom) |
206
238
  | `sirr_role_delete(org_id, role_name)` | Delete a custom role — must not be in use |
207
239
 
@@ -259,4 +291,4 @@ Use `check_secret` to inspect a secret's status without consuming a read — use
259
291
  | [sirr (PyPI)](https://github.com/sirrlock/python) | Python SDK |
260
292
  | [Sirr.Client (NuGet)](https://github.com/sirrlock/dotnet) | .NET SDK |
261
293
  | [sirr.dev](https://sirr.dev) | Documentation |
262
- | [secretdrop.app](https://secretdrop.app) | Hosted service + license keys |
294
+ | [sirrlock.com](https://sirrlock.com) | Managed cloud + license keys |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sirrlock/mcp",
3
- "version": "1.0.32",
3
+ "version": "1.0.33",
4
4
  "description": "Sirr MCP server — lets Claude Code read and write ephemeral secrets",
5
5
  "license": "MIT",
6
6
  "repository": {