@contextstream/mcp-server 1.0.29 → 1.0.30

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 (3) hide show
  1. package/README.md +56 -0
  2. package/package.json +1 -1
  3. package/server.json +2 -2
package/README.md CHANGED
@@ -55,6 +55,34 @@ Then ask it to save a real decision and its reason. Start a new session and
55
55
  retrieve that decision without explaining it again. Indexing supplies code
56
56
  context; it cannot recover every undocumented decision.
57
57
 
58
+ ## Slipstream agents
59
+
60
+ When your workspace has Slipstream, the server adds one tool, `slipstream`, that hands a
61
+ whole job to a ContextStream specialist agent working with your workspace's context:
62
+ review a pull request against your team's decisions, write release notes, check docs
63
+ against the code, tend memory, write a repository guide, read an image, make a PDF, or
64
+ digest your mail (it never sends). Each agent is priced in credits per run and charged
65
+ only when the run succeeds; declined, failed, cancelled and timed-out runs are free.
66
+
67
+ - **Enabling.** A workspace owner or admin turns agents on in the workspace's Slipstream
68
+ settings. The tool is listed only for a workspace with at least one agent turned on, so
69
+ everywhere else it costs no prompt. Its description names each agent turned on, its
70
+ price and the input it needs, so you can just ask: "Which Slipstream agents can I use
71
+ here?" or "Have Slipstream review PR 42 in acme/api."
72
+ - **Workspace.** The local server lists it for the workspace of your session (or of
73
+ `CONTEXTSTREAM_WORKSPACE_ID`, or of the folder's mapping) and tells clients that follow
74
+ `notifications/tools/list_changed`, such as Claude Code, when that changes. A hosted
75
+ connection lists it for the workspace its `X-ContextStream-Workspace-Id` header names.
76
+ - **Prices.** A priced agent first answers with its price; your agent shows it to you and
77
+ runs the job once you accept. To let runs up to a price start without that step, set an
78
+ auto-accept cap: `CONTEXTSTREAM_SLIPSTREAM_AUTO_ACCEPT_MAX_CREDITS=500` in the local
79
+ server's environment (your MCP config's `env`), or the header
80
+ `X-ContextStream-Slipstream-Auto-Accept-Max-Credits: 500` on a hosted connection. Unset
81
+ or `0` always asks; the hosted gateway never sets a cap for you.
82
+ - **Runs.** A run waits up to 25 seconds for its result; a longer one returns its task id
83
+ for your agent to follow. A retried call never starts a second run.
84
+ - **Terminal.** The same agents run from a shell with `ss run <agent>` (alias `csa`).
85
+
58
86
  ## Proof and data controls
59
87
 
60
88
  **95 ms median code search in our published benchmark.** This is the measured
@@ -117,6 +145,34 @@ export CONTEXTSTREAM_API_KEY=... # or: printf %s "$KEY" | contextstream-mcp co
117
145
  contextstream-mcp setup --yes --editors=claude --workspace-id=<UUID> --project-path=.
118
146
  ```
119
147
 
148
+ ### Package Bouncer (opt-in)
149
+
150
+ A hook for Claude Code and Cursor that checks the packages an install command names
151
+ against their public registry before the command runs. It covers npm, pnpm, yarn, bun,
152
+ npx, pip, uv, uvx, pipx, poetry and cargo, including `claude mcp add ... -- npx ...`.
153
+
154
+ - It **denies** a package the registry does not have, naming the popular package it
155
+ looks like. An agent may have invented the name, and anyone can register it.
156
+ - It **asks** before a barely downloaded lookalike of a popular package.
157
+ - It **allows** everything else, including whenever a lookup fails or takes too long.
158
+
159
+ It skips projects and commands that use a private registry (`.npmrc`, `pip.conf`, uv or
160
+ poetry sources, `--registry`, `--index-url`). `CONTEXTSTREAM_PACKAGE_BOUNCER=off`
161
+ turns it off.
162
+
163
+ Claude Code: add this entry to `PreToolUse` in `~/.claude/settings.json`, next to the
164
+ hooks setup installed. `update-hooks` leaves it alone.
165
+
166
+ ```json
167
+ { "matcher": "Bash", "hooks": [{ "type": "command", "command": "contextstream-mcp hook package-bouncer", "timeout": 8 }] }
168
+ ```
169
+
170
+ Cursor (`~/.cursor/hooks.json`):
171
+
172
+ ```json
173
+ { "version": 1, "hooks": { "beforeShellExecution": [{ "command": "contextstream-mcp hook package-bouncer" }] } }
174
+ ```
175
+
120
176
  </details>
121
177
 
122
178
  ## Open source and contributing
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@contextstream/mcp-server",
3
3
  "mcpName": "io.github.contextstream/mcp-server",
4
- "version": "1.0.29",
4
+ "version": "1.0.30",
5
5
  "description": "Verified npm launcher for the open-source ContextStream Rust MCP server",
6
6
  "type": "module",
7
7
  "license": "MIT",
package/server.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "name": "io.github.contextstream/mcp-server",
4
4
  "title": "ContextStream MCP Server",
5
5
  "description": "Project memory, semantic code search, and grounded agent context.",
6
- "version": "1.0.29",
6
+ "version": "1.0.30",
7
7
  "repository": {
8
8
  "url": "https://github.com/contextstream/mcp-server",
9
9
  "source": "github"
@@ -20,7 +20,7 @@
20
20
  "registryType": "npm",
21
21
  "registryBaseUrl": "https://registry.npmjs.org",
22
22
  "identifier": "@contextstream/mcp-server",
23
- "version": "1.0.29",
23
+ "version": "1.0.30",
24
24
  "transport": {
25
25
  "type": "stdio"
26
26
  },