Skip to content

Scope client-provided MCP servers to ACP sessions - #140

Closed
Maximooch wants to merge 2 commits into
test/acp-contract-cifrom
feat/acp-session-mcp
Closed

Maximooch wants to merge 2 commits into
test/acp-contract-cifrom
feat/acp-session-mcp

Conversation

@Maximooch

Copy link
Copy Markdown
Owner

Stacked on Run ACP contract tests on supported Python and operating systems (#139). ACP clients can supply stdio/HTTP/SSE MCP servers per session. The adapter combines them with configured servers, discovers tools before accepting the session, and keeps provider selection in request context instead of mutating shared ToolManager state. Async workers inherit the scoped provider; normal tool permission checks remain intact. Client env values stay literal, credentials stay out of persisted session metadata, and close releases provider resources. Load/resume require clients to resend server credentials/configuration.

The ACP extra pins the existing MCP integration to SDK 1.x; MCP 2.x removed APIs this repository uses. Migrating the whole integration to 2.x is separate.

Validation: aggregate ACP plus existing MCP suite passed 79 tests before one additional isolation/permission test, which also passed in the final 3-test MCP subset. Actual local MCP stdio servers demonstrated separate environments for two sessions, literal dollar-prefixed values, tool execution through ToolManager, and cleanup. Additional test verifies simultaneous context isolation and that denial prevents execution. Scoped Ruff and diff checks pass; ACP CI includes the new tests. HTTP/SSE use existing manager paths; no live remote endpoint test is claimed.

@vercel

vercel Bot commented Oct 28, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
penguin Ready Ready Preview Oct 28, 2026 5:24am UTC

@coderabbitai

coderabbitai Bot commented Oct 28, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@Maximooch

Copy link
Copy Markdown
Owner Author

Integrated with preserved commit history through #161 (main commit abd8a66). Closing this stacked review after verifying its current head is an ancestor of main.

@Maximooch Maximooch closed this Oct 28, 2026

This branch was successfully deployed

1 active deployment
Preview — 1ca5c8cd Deployed Oct 28, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant