@privacyscrubber/mcp-server 1.0.5 β†’ 1.6.8

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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "serverInfo": {
3
3
  "name": "privacyscrubber/pii-masking-mcp",
4
- "version": "1.0.4"
4
+ "version": "1.6.7"
5
5
  },
6
6
  "tools": [
7
7
  {
package/README.md CHANGED
@@ -1,28 +1,53 @@
1
- # PrivacyScrubber MCP Server v1.0.3
1
+ # @privacyscrubber/mcp-server
2
2
 
3
- Zero-Trust Data Sanitization (ZTDS) Model Context Protocol (MCP) server for local PII and secrets masking.
3
+ [![NPM Version](https://img.shields.io/npm/v/@privacyscrubber/mcp-server?color=blue)](https://www.npmjs.com/package/@privacyscrubber/mcp-server)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
+ [![smithery badge](https://smithery.ai/badge/privacyscrubber/pii-masking-mcp)](https://smithery.ai/servers/privacyscrubber/pii-masking-mcp)
6
+ [![Security: 100% Local](https://img.shields.io/badge/Security-100%25%20Local-emerald)](https://privacyscrubber.com)
7
+ [![Parity: 100% Core Match](https://img.shields.io/badge/Parity-100%25%20Core%20Match-blueviolet)](https://privacyscrubber.com)
4
8
 
5
- ## What's New in v1.0.3
6
- - **Robust Configuration Parsing**: Protected Smithery integration hooks from undefined configuration objects, ensuring reliable initialization across all MCP clients (Claude Desktop, Cursor, Windsurf).
7
- - **Microsoft Word (.docx) Support**: Enhanced the `sanitize_file` tool to parse and redact sensitive information from Word documents locally.
8
- - **Unified Branding & Metadata**: Corrected repository fields and aligned server identity across NPM, Smithery, and Glama registries.
9
- - **Enhanced Scanner Discovery**: Implemented static `server-card.json` configurations to support automated registry scanning.
9
+ **CISO-Approved Zero-Trust PII & Secrets Redaction MCP Server for Cursor, Windsurf, and Claude Desktop.**
10
+ Locally scrubs PII, secrets, credentials, and custom regex rules from files and text contexts before they reach remote LLM providers to prevent API leaks and ensure HIPAA/SOC 2 compliance at the developer endpoint.
10
11
 
11
- ## Key Features & Security Guarantees
12
- - **100% Local Processing**: All regex scanning, PII tokenization, and reverse-scrubbing occur directly in your machine's RAM.
13
- - **Airplane Mode Verified**: Fully operational without an internet connection after the initial download.
14
- - **Zero Server Logs**: No data, credentials, or prompts are sent to external APIs or remote databases.
12
+ ---
15
13
 
16
- ## Quick Start
17
- Run the server instantly without local installation:
14
+ ## πŸ”’ Zero-Trust Data Flow
15
+
16
+ All sensitive parameters, identifiers, and variables are intercepted locally inside your machine's RAM. They are replaced by tokens (e.g. `[EMAIL_1]`) before being sent to the AI. Once the AI responds, the tokens are safely swapped back to original values in your local context.
17
+
18
+ ```text
19
+ [Raw Input / Files] ──> [MCP sanitize_text] ──> [Masked Tokens] ──> [LLM API]
20
+ β”‚ β”‚
21
+ (In-Memory Map) (Result)
22
+ β”‚ β”‚
23
+ [Original Output] <─── [MCP reveal_text] <β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
24
+ ```
25
+
26
+ ---
27
+
28
+ ## πŸš€ Installation
29
+
30
+ ### 1. Install via Smithery
31
+ To automatically configure and run with your preferred client, install using Smithery:
32
+ ```bash
33
+ npx -y @smithery/cli install @privacyscrubber/mcp-server --write-to-clients
34
+ ```
35
+
36
+ ### 2. Instant Run with NPX
37
+ Run the server directly without local installation:
18
38
  ```bash
19
39
  npx -y @privacyscrubber/mcp-server
20
40
  ```
21
41
 
22
- ## Client Integration Examples
42
+ ---
43
+
44
+ ## βš™οΈ Client Integrations
23
45
 
24
46
  ### Claude Desktop
25
- Add to your `claude_desktop_config.json`:
47
+ Add this to your Claude Desktop config file:
48
+ * **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
49
+ * **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
50
+
26
51
  ```json
27
52
  {
28
53
  "mcpServers": {
@@ -38,13 +63,210 @@ Add to your `claude_desktop_config.json`:
38
63
  ```
39
64
 
40
65
  ### Cursor / Windsurf
41
- Add a new command-type MCP server:
42
- - **Name**: `privacyscrubber`
43
- - **Command**: `npx -y @privacyscrubber/mcp-server`
44
-
45
- ## Useful Links
46
- - **Official Website**: https://privacyscrubber.com
47
- - **Chrome Web Store Extension**: https://chromewebstore.google.com/detail/privacyscrubber-%E2%80%94-pii-red/pimoejgefeilajmmbpghifdmhdlkgjol
48
- - **MCP Documentation**: https://privacyscrubber.com/pii-mcp/
49
- - **Pricing & Licensing**: https://privacyscrubber.com/pricing/
50
- - **GitHub Repository**: https://github.com/moxno/privacyscrubber-mcp
66
+ 1. Navigate to Settings -> Features -> MCP.
67
+ 2. Add new MCP server:
68
+ * **Name:** `privacyscrubber`
69
+ * **Type:** `command`
70
+ * **Command:** `npx -y @privacyscrubber/mcp-server`
71
+ 3. Optional: Set `PRIVACYSCRUBBER_KEY` as an environment variable in your system shell.
72
+
73
+ ---
74
+
75
+ ## πŸ› οΈ Provided Tools & JSON-RPC Specifications
76
+
77
+ ### 1. `sanitize_text`
78
+ Redacts PII, secrets, API keys, and credentials from a text block and populates the volatile local replacement mapping.
79
+
80
+ * **Arguments:**
81
+ * `text` (string, required): The raw content or logs to sanitize.
82
+ * `profile` (string, optional): Gated industry detection profile (e.g., 'General', 'Dev', 'Medical', 'Legal', 'Compliance'). Defaults to 'General'.
83
+ * **JSON-RPC Call Example:**
84
+ ```json
85
+ {
86
+ "method": "tools/call",
87
+ "params": {
88
+ "name": "sanitize_text",
89
+ "arguments": {
90
+ "text": "Contact me at dev-key-1234 or jane.doe@company.com",
91
+ "profile": "General"
92
+ }
93
+ }
94
+ }
95
+ ```
96
+ * **Response Example:**
97
+ ```json
98
+ {
99
+ "content": [
100
+ {
101
+ "type": "text",
102
+ "text": "Contact me at [SECRET_1] or [EMAIL_1]"
103
+ }
104
+ ]
105
+ }
106
+ ```
107
+
108
+ ### 2. `reveal_text`
109
+ Detokenizes the AI response back to the original values locally.
110
+
111
+ * **Arguments:**
112
+ * `text` (string, required): The response from the LLM containing tokenized placeholders.
113
+ * **JSON-RPC Call Example:**
114
+ ```json
115
+ {
116
+ "method": "tools/call",
117
+ "params": {
118
+ "name": "reveal_text",
119
+ "arguments": {
120
+ "text": "Please reach out to [EMAIL_1] regarding the update."
121
+ }
122
+ }
123
+ }
124
+ ```
125
+ * **Response Example:**
126
+ ```json
127
+ {
128
+ "content": [
129
+ {
130
+ "type": "text",
131
+ "text": "Please reach out to jane.doe@company.com regarding the update."
132
+ }
133
+ ]
134
+ }
135
+ ```
136
+
137
+ ### 3. `sanitize_file`
138
+ Reads a local file, extracts text, sanitizes it, and returns the redacted template for LLM analysis.
139
+ * **Supported Formats:** Plain text (source code, logs, CSV, JSON, markdown) and Microsoft Word (`.docx`) documents.
140
+ * **Arguments:**
141
+ * `filePath` (string, required): Absolute file path to read and sanitize.
142
+ * `profile` (string, optional): The industry detection profile.
143
+
144
+ ---
145
+
146
+ ## 🌐 Browser Extension & Web Client
147
+
148
+ Looking for real-time protection directly inside your web browser?
149
+ * **Chrome Extension:** Get the [PrivacyScrubber Chrome Extension](https://chromewebstore.google.com/detail/privacyscrubber-%E2%80%94-pii-red/pimoejgefeilajmmbpghifdmhdlkgjol) to sanitize prompts directly inside ChatGPT, Claude, and Gemini in real-time.
150
+ * **Web Sandbox:** Use the zero-server browser sanitization tools at [PrivacyScrubber Homepage](https://privacyscrubber.com/).
151
+
152
+ ## πŸ“„ License & Commercial Upgrade
153
+
154
+ By default, the server runs under the **Free Tier** (restricted to 50,000 characters per request and the basic `General` PII profile). To unlock advanced engineering, medical, legal, and financial PII profiles, as well as team-wide custom rules, you can purchase a commercial license.
155
+
156
+ ### Feature Comparison
157
+
158
+ | Feature | Free Tier | PRO Tier | TEAMS Tier |
159
+ | :--- | :--- | :--- | :--- |
160
+ | **Volatile Tokenization** | βœ… Yes | βœ… Yes | βœ… Yes |
161
+ | **Standard PII Masking** | βœ… Yes | βœ… Yes | βœ… Yes |
162
+ | **Max Character Length** | 50,000 chars | ♾️ Unlimited | ♾️ Unlimited |
163
+ | **Industry Profiles** | General Only | 22+ Profiles | 22+ Profiles |
164
+ | **Custom Regex Rules** | ❌ Locked | ♾️ Unlimited | ♾️ Unlimited |
165
+ | **Team Rules Sync (GPO)** | ❌ No | ❌ No | βœ… Yes (Shared Link) |
166
+ | **Licensing Cost** | $0 | **$110 Lifetime** | **$99/mo Flat Rate** |
167
+
168
+ πŸ‘‰ **[Acquire a PRO / TEAMS License Key at privacyscrubber.com/pricing](https://privacyscrubber.com/pricing)**
169
+
170
+ ---
171
+
172
+ ### 4. `check_status`
173
+
174
+ Returns a visual dashboard showing your current tier, session request count, active profiles, and upgrade instructions. Use it at any time to check your license status or get setup help.
175
+
176
+ * **Arguments:** _(none required)_
177
+ * **JSON-RPC Call Example:**
178
+ ```json
179
+ {
180
+ "method": "tools/call",
181
+ "params": { "name": "check_status", "arguments": {} }
182
+ }
183
+ ```
184
+ * **Response Example (Free Tier):**
185
+ ```
186
+ ╔══════════════════════════════════════════════════╗
187
+ β•‘ PrivacyScrubber MCP Server v1.6.6 β•‘
188
+ ╠══════════════════════════════════════════════════╣
189
+ β•‘ πŸ”“ Tier: FREE β•‘
190
+ β•‘ πŸ“Š Session requests: 5 β•‘
191
+ β•‘ πŸ“ Input size limit: 50,000 characters per requestβ•‘
192
+ ╠══════════════════════════════════════════════════╣
193
+ β•‘ 🏷️ Profiles: General only β€” PRO unlocks 22 more β•‘
194
+ β•‘ πŸ“‹ Custom rules: πŸ”’ Locked β€” requires PRO β•‘
195
+ ╠══════════════════════════════════════════════════╣
196
+ β•‘ πŸ’³ Upgrade to PRO β€” $110 Lifetime β•‘
197
+ β•‘ https://privacyscrubber.com/pricing β•‘
198
+ ╠══════════════════════════════════════════════════╣
199
+ β•‘ After purchase, add your key to MCP config: β•‘
200
+ β•‘ "PRIVACYSCRUBBER_KEY": "<your-key-here>" β•‘
201
+ β•‘ Full setup guide: β•‘
202
+ β•‘ https://privacyscrubber.com/features/mcp/ β•‘
203
+ β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•
204
+ ```
205
+
206
+ ---
207
+
208
+ ## πŸ” After Purchase: Activate PRO in Your MCP Client
209
+
210
+ After purchasing a PRO license at [privacyscrubber.com/pricing](https://privacyscrubber.com/pricing), you will receive a license key. Add it to your MCP client config as an environment variable: `PRIVACYSCRUBBER_KEY`.
211
+
212
+ ### Claude Desktop
213
+
214
+ Edit `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
215
+
216
+ ```json
217
+ {
218
+ "mcpServers": {
219
+ "privacyscrubber": {
220
+ "command": "npx",
221
+ "args": ["-y", "@privacyscrubber/mcp-server"],
222
+ "env": {
223
+ "PRIVACYSCRUBBER_KEY": "YOUR_LICENSE_KEY_HERE"
224
+ }
225
+ }
226
+ }
227
+ }
228
+ ```
229
+
230
+ Restart Claude Desktop after saving.
231
+
232
+ ### Cursor
233
+
234
+ 1. Go to **Settings β†’ Features β†’ MCP Servers**.
235
+ 2. Find `privacyscrubber` and click **Edit**.
236
+ 3. Add the environment variable: `PRIVACYSCRUBBER_KEY=YOUR_LICENSE_KEY_HERE`.
237
+ 4. Restart Cursor.
238
+
239
+ Alternatively, export it system-wide so all tools pick it up:
240
+ ```bash
241
+ # macOS / Linux β€” add to ~/.zshrc or ~/.bashrc
242
+ export PRIVACYSCRUBBER_KEY="YOUR_LICENSE_KEY_HERE"
243
+ ```
244
+
245
+ ### Windsurf
246
+
247
+ Edit `~/.codeium/windsurf/mcp_config.json`:
248
+
249
+ ```json
250
+ {
251
+ "mcpServers": {
252
+ "privacyscrubber": {
253
+ "command": "npx",
254
+ "args": ["-y", "@privacyscrubber/mcp-server"],
255
+ "env": {
256
+ "PRIVACYSCRUBBER_KEY": "YOUR_LICENSE_KEY_HERE"
257
+ }
258
+ }
259
+ }
260
+ }
261
+ ```
262
+
263
+ ### Verify Activation
264
+
265
+ After adding the key, ask your AI agent to call `check_status`:
266
+
267
+ ```
268
+ Use the check_status tool from PrivacyScrubber MCP
269
+ ```
270
+
271
+ The dashboard should show **Tier: PRO** and all profiles unlocked.
272
+
package/bundle.mcpb CHANGED
Binary file