feat(transport): add transport-neutral MCP bind seam (Closes #931) #966

Merged
sysadmin merged 4 commits from feat/issue-931-transport-neutral-bind-seam into master 2026-07-28 13:36:49 -05:00
2 changed files with 5 additions and 3 deletions
Showing only changes of commit 2fb835a1aa - Show all commits
+1 -1
View File
@@ -8,7 +8,7 @@
"document. #930's inventory had no such guard and its gitea_mcp_server.py", "document. #930's inventory had no such guard and its gitea_mcp_server.py",
"anchors drifted between 7bf4f125 and aad5c8b4." "anchors drifted between 7bf4f125 and aad5c8b4."
], ],
"generated_against_commit": "aad5c8b42361d380a8eeb07b94b90815e594c2c5", "generated_against_commit": "c1626081757dff76ea49fcb1869fc0362dea45b1",
"anchors": [ "anchors": [
{"anchor": "gitea_mcp_server.py:24728", "expect": "mcp_daemon_guard.bind_native_mcp_transport()"}, {"anchor": "gitea_mcp_server.py:24728", "expect": "mcp_daemon_guard.bind_native_mcp_transport()"},
{"anchor": "mcp_daemon_guard.py:49", "expect": "_PRODUCTION_TRANSPORTS = mcp_transport_config.SUPPORTED_TRANSPORTS"}, {"anchor": "mcp_daemon_guard.py:49", "expect": "_PRODUCTION_TRANSPORTS = mcp_transport_config.SUPPORTED_TRANSPORTS"},
+4 -2
View File
@@ -5,7 +5,9 @@ What the adversary is, what each boundary protects, and which services may share
- **Issue:** #956 (Remote-MCP threat model), child of epic #929, cross-linked to #955. - **Issue:** #956 (Remote-MCP threat model), child of epic #929, cross-linked to #955.
- **Depends on:** #930 (closed) — `docs/remote-mcp/coupling-inventory.md`. - **Depends on:** #930 (closed) — `docs/remote-mcp/coupling-inventory.md`.
- **Blocks:** #932, #933, #934, #938. - **Blocks:** #932, #933, #934, #938.
- **Generated against commit:** `aad5c8b42361d380a8eeb07b94b90815e594c2c5` (`master`). - **Generated against commit:** `c1626081757dff76ea49fcb1869fc0362dea45b1` (#931's transport
bind seam). Originally generated against `aad5c8b42361d380a8eeb07b94b90815e594c2c5`
(`master`) and re-anchored when #931 shifted the cited lines.
- **Scope:** documentation only. This child changes no server behavior. It adds one - **Scope:** documentation only. This child changes no server behavior. It adds one
document, one anchor fixture, and the test that enforces them. document, one anchor fixture, and the test that enforces them.
@@ -71,7 +73,7 @@ authenticate the *caller*, not the *intent*.
## 3. Trust boundaries ## 3. Trust boundaries
"Crossing requires today" is what the code actually enforces at "Crossing requires today" is what the code actually enforces at
`aad5c8b42361d380a8eeb07b94b90815e594c2c5`, not what the design intends. `c1626081757dff76ea49fcb1869fc0362dea45b1`, not what the design intends.
| ID | Boundary | Protects | Crossing requires today | Crossing must require remotely | | ID | Boundary | Protects | Crossing requires today | Crossing must require remotely |
| -- | -------- | -------- | ----------------------- | ------------------------------ | | -- | -------- | -------- | ----------------------- | ------------------------------ |