You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix(mcp): bound elicitation channel, warn on sensitive fields (#2524, #2523)
Replace the unbounded elicitation mpsc channel in McpManager with a bounded
channel (default capacity 16). Requests arriving when the queue is full are
auto-declined with a warning log, preventing memory exhaustion from misbehaving
or malicious MCP servers. Capacity is configurable via:
[mcp]
elicitation_queue_capacity = 16 # default
Add sensitive-field detection to the elicitation handler. Before prompting,
field names are matched case-insensitively against a list of sensitive patterns
(password, token, secret, key, credential, auth, private, passphrase, pin).
If any match, a warning is shown with the server name and field name so the
user can make an informed trust decision. Configurable via:
[mcp]
elicitation_warn_sensitive_fields = true # default
Also fix three pre-existing clippy warnings in the elicitation CLI prompt
builder (match-to-if-let, uninlined format args) and a stale test assertion.
Closes#2524, closes#2523
Copy file name to clipboardExpand all lines: CHANGELOG.md
+7Lines changed: 7 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,6 +13,13 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
13
13
14
14
### Fixed
15
15
16
+
- fix(mcp): replace unbounded elicitation mpsc channel with a bounded channel (default capacity 16) to prevent memory exhaustion from misbehaving MCP servers; requests that arrive when the queue is full are auto-declined with a warning log instead of accumulating indefinitely; capacity is configurable via `[mcp] elicitation_queue_capacity` (closes #2524)
17
+
- fix(mcp): pre-existing `clippy::non_exhaustive_omitted_patterns`, `match_single_binding`, and `uninlined_format_args` warnings in elicitation CLI prompt builder and test code (caught while adding bounded-channel support)
18
+
19
+
### Added
20
+
21
+
- security(mcp): warn user before prompting for elicitation fields whose names match sensitive patterns (password, token, secret, key, credential, auth, private, passphrase, pin, etc.); warning shows the server name and field name so the user can make an informed decision; configurable via `[mcp] elicitation_warn_sensitive_fields` (default `true`) (closes #2523)
22
+
16
23
- skills: raise `disambiguation_threshold` default from 0.05 to 0.20 to prevent low-confidence skill injection (#2512)
17
24
- skills: add `min_injection_score` config field (default 0.20) — skills scoring below threshold are no longer injected (#2512)
18
25
- skills: fix `process-management` SKILL.md false positive on user queries containing "memory" by replacing with "RAM" (#2513)
0 commit comments