@strixgov/mcp-proxy 0.1.5 → 0.1.6
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.
- package/CHANGELOG.md +26 -0
- package/LICENSE +1 -1
- package/README.md +8 -8
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,32 @@ All notable changes to `@strixgov/mcp-proxy` are documented here.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.1.6]
|
|
9
|
+
|
|
10
|
+
Documentation + license-fidelity patch. No functional change to the proxy,
|
|
11
|
+
the receipt format, the signing flow, or any runtime behavior.
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
- **`LICENSE` corrected to canonical Elastic License 2.0.** The Limitations
|
|
15
|
+
clause read "provide the software to **others** as a hosted or managed
|
|
16
|
+
service"; the canonical ELv2 wording is "to **third parties**." Corrected
|
|
17
|
+
byte-for-byte against Elastic's published license. The `0.1.0` release note
|
|
18
|
+
flagged this exact verification ("verify the bundled LICENSE against
|
|
19
|
+
canonical ELv2 before tagging") — the deviation shipped anyway in 0.1.0 and
|
|
20
|
+
0.1.5. Legal-text fidelity only; no change to intent or the MIT/ELv2 split.
|
|
21
|
+
**Counsel should confirm before publish.**
|
|
22
|
+
- **README version labels.** Notes describing *current* behavior were tagged
|
|
23
|
+
`v0.1.0` (the floor where they were first true); a reader on npm sees
|
|
24
|
+
`0.1.5+`. Relabeled the current-behavior notes (transport scope, env-var
|
|
25
|
+
substitution, feature-table column, Mode-3 seam, single-tenant boundary) to
|
|
26
|
+
`v0.1.x`. Genuinely historical references (the `v0.1.0–v0.1.3` ephemeral-key
|
|
27
|
+
known issue, `v0.1.4+` default `storagePath`) are unchanged.
|
|
28
|
+
|
|
29
|
+
### Note
|
|
30
|
+
- Closes findings F-3 and F-4 of
|
|
31
|
+
`docs/reviews/mcp-proxy-publish-readiness-2026-06-07.md`. Repeatable
|
|
32
|
+
publish gate: `scripts/mcp-proxy-preflight.mjs`.
|
|
33
|
+
|
|
8
34
|
## [0.1.5]
|
|
9
35
|
|
|
10
36
|
Documentation-hygiene patch. No functional change to the proxy, the
|
package/LICENSE
CHANGED
|
@@ -13,7 +13,7 @@ to the limitations and conditions below.
|
|
|
13
13
|
|
|
14
14
|
Limitations
|
|
15
15
|
|
|
16
|
-
You may not provide the software to
|
|
16
|
+
You may not provide the software to third parties as a hosted or managed service,
|
|
17
17
|
where the service provides users with access to any substantial set of the
|
|
18
18
|
features or functionality of the software.
|
|
19
19
|
|
package/README.md
CHANGED
|
@@ -35,7 +35,7 @@ Tool implementations are untouched. The MCP client (Claude Desktop, mcp-cli,
|
|
|
35
35
|
IDE integration, your own code) doesn't need to know Strix exists — it just
|
|
36
36
|
spawns this proxy in place of the upstream server.
|
|
37
37
|
|
|
38
|
-
> **Transport scope (v0.1.
|
|
38
|
+
> **Transport scope (v0.1.x):** the proxy wraps MCP servers that speak
|
|
39
39
|
> the **stdio transport** — the `command` / `args` pattern in
|
|
40
40
|
> `claude_desktop_config.json`. It does **not** intercept HTTP-based
|
|
41
41
|
> hosted MCP servers (e.g. Notion's `https://mcp.notion.com/mcp`
|
|
@@ -121,7 +121,7 @@ for a complete example.
|
|
|
121
121
|
|
|
122
122
|
### Where the upstream's secrets should live
|
|
123
123
|
|
|
124
|
-
v0.1.
|
|
124
|
+
v0.1.x does **no env-var substitution inside the config file** — there
|
|
125
125
|
is no `${NOTION_TOKEN}` template syntax. Two supported patterns for
|
|
126
126
|
upstream secrets:
|
|
127
127
|
|
|
@@ -217,7 +217,7 @@ Run `strix-mcp-proxy --help` for the full flag list.
|
|
|
217
217
|
|
|
218
218
|
## What ships with the proxy
|
|
219
219
|
|
|
220
|
-
| Feature | v0.1.
|
|
220
|
+
| Feature | v0.1.x (shipped) | v0.2.0 (planned) |
|
|
221
221
|
|---|---|---|
|
|
222
222
|
| MCP stdio transport (consumer side) | ✓ | — |
|
|
223
223
|
| MCP stdio transport (upstream side) | ✓ | — |
|
|
@@ -241,7 +241,7 @@ at each enforcement strength.
|
|
|
241
241
|
## The upgrade path to Mode 3
|
|
242
242
|
|
|
243
243
|
Mode 3 — Capability-Enforced — is the upgrade, not a rewrite. The
|
|
244
|
-
v0.1.
|
|
244
|
+
v0.1.x proxy already routes every outbound call through a single
|
|
245
245
|
`buildUpstreamIface()` seam in `src/proxy.mjs`. In v0.2.0 a new option
|
|
246
246
|
(`mode: "enforced"`) will wrap that seam with the
|
|
247
247
|
`execution_authorization_v1` token mint + transport step per
|
|
@@ -254,7 +254,7 @@ refuse to act on sensitive tools unless the token is present.
|
|
|
254
254
|
|
|
255
255
|
The cryptographic primitive is already shipped — see
|
|
256
256
|
[`@strixgov/mcp-token-validator`](https://www.npmjs.com/package/@strixgov/mcp-token-validator).
|
|
257
|
-
v0.1.
|
|
257
|
+
v0.1.x of the proxy does not mint these tokens yet; what it does is
|
|
258
258
|
make sure the *seam* exists so v0.2.0 plugs in cleanly.
|
|
259
259
|
|
|
260
260
|
## Listening to receipts (programmatic embedding)
|
|
@@ -357,7 +357,7 @@ keys are strictly better in every dimension that isn't a one-off demo.
|
|
|
357
357
|
the library; the proxy is the standalone process. They share the
|
|
358
358
|
same governance core (`@strixgov/tool-gateway`) and produce
|
|
359
359
|
byte-identical receipts.
|
|
360
|
-
- **Not an interceptor of HTTP-transport MCP servers.** v0.1.
|
|
360
|
+
- **Not an interceptor of HTTP-transport MCP servers.** v0.1.x wraps
|
|
361
361
|
the stdio transport only. Hosted HTTP MCP servers (the Claude
|
|
362
362
|
Desktop "Add Connector" URL pattern, e.g.
|
|
363
363
|
`https://mcp.notion.com/mcp`) are not in scope — the client talks
|
|
@@ -365,7 +365,7 @@ keys are strictly better in every dimension that isn't a one-off demo.
|
|
|
365
365
|
Use the upstream's local stdio server in the meantime; the
|
|
366
366
|
HTTP-transport story is Posture B in
|
|
367
367
|
[`docs/architecture/mcp-mode-3-enforcement-v1.md`](https://github.com/Strixgov/strix/tree/main/docs/architecture/mcp-mode-3-enforcement-v1.md).
|
|
368
|
-
- **Not Mode 3 today.** v0.1.
|
|
368
|
+
- **Not Mode 3 today.** v0.1.x ships Mode 1 + Mode 2. Mode 3
|
|
369
369
|
enforcement is the v0.2.0 upgrade path, designed for, but not
|
|
370
370
|
implemented in, this release.
|
|
371
371
|
- **Not a credential vault.** Upstream tokens (`NOTION_TOKEN`,
|
|
@@ -405,7 +405,7 @@ posture, including:
|
|
|
405
405
|
- **Process model** — what happens on crash / mid-approval / disk
|
|
406
406
|
full. Fail-closed at every boundary; the proxy will not start
|
|
407
407
|
without a loadable signing key.
|
|
408
|
-
- **Multi-tenant boundary** — single-tenant by design in v0.1.
|
|
408
|
+
- **Multi-tenant boundary** — single-tenant by design in v0.1.x;
|
|
409
409
|
run one proxy process per tenant for isolation.
|
|
410
410
|
- **What the proxy does NOT govern** — out-of-wrapper traffic, the
|
|
411
411
|
agent's internal state, the upstream's own argument handling
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@strixgov/mcp-proxy",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Strix MCP Proxy — the distribution wedge for governed agent tool execution. Point your MCP client at the proxy instead of the underlying server; every callTool is intercepted, evaluated against policy, and emits a signed Ed25519 receipt. Designed so Mode 3 (capability-enforced) is the v0.2.0 upgrade path, not a rewrite.",
|
|
5
5
|
"license": "Elastic-2.0",
|
|
6
6
|
"type": "module",
|