Skip to content

Add loopback TCP support for VS Code inproc MCPs - #622

Merged
Matthew Fisher (MicroFish91) merged 17 commits into
microsoft:mainfrom
MicroFish91:mwf/add-tcp-mcp
Oct 1, 2026
Merged

Matthew Fisher (MicroFish91) merged 17 commits into
microsoft:mainfrom
MicroFish91:mwf/add-tcp-mcp

Conversation

@MicroFish91

@MicroFish91 Matthew Fisher (MicroFish91) commented Sep 28, 2026 •

Copy link
Copy Markdown
Contributor

VS Code is transitioning away from their "Local" harness towards the "Copilot" harness which breaks us if we stick with a socket implementation. This gives us a new tcp transport option that we can leverage to keep our MCP support compatible.

Verified socket implementation still works with the local harness and the new tcp implementation works with the Copilot harness.

Copilot AI lite review requested due to automatic review settings September 28, 2026 17:48

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

One or more issues must be addressed before approval.

Review effort: Lite
Findings: 2 High severity · 1 Medium severity

Open (3)
What changed in this PR

Adds optional loopback TCP transport for in-process MCP servers to support VS Code’s Copilot harness while preserving socket-based transport by default.

Changes:

  • Starts TCP servers during MCP definition discovery.
  • Adds loopback binding, Host/Origin validation, and DNS rebinding protection.
  • Reorders package export conditions.
File Description
packages/​vscode-inproc-mcp/​src/​vscode/​registerMcpHttpProvider.ts Updated as part of this pull request.
packages/​vscode-inproc-mcp/​src/​vscode/​McpProviderOptions.ts Updated as part of this pull request.
packages/​vscode-inproc-mcp/​src/​vscode/​inProcHttpServer.ts Updated as part of this pull request.
packages/​vscode-inproc-mcp/​package.json Updated as part of this pull request.

💡 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread packages/vscode-inproc-mcp/src/vscode/inProcHttpServer.ts Outdated
Comment thread packages/vscode-inproc-mcp/src/vscode/registerMcpHttpProvider.ts Outdated
Comment thread packages/vscode-inproc-mcp/src/vscode/registerMcpHttpProvider.ts Outdated
@MicroFish91
Matthew Fisher (MicroFish91) marked this pull request as draft September 28, 2026 18:38
@MicroFish91
Matthew Fisher (MicroFish91) marked this pull request as ready for review September 28, 2026 19:01
Comment thread packages/vscode-inproc-mcp/src/vscode/McpProviderOptions.ts Outdated
Comment thread packages/vscode-inproc-mcp/src/vscode/registerMcpHttpProvider.ts Outdated
Comment thread packages/vscode-inproc-mcp/src/vscode/registerMcpHttpProvider.ts Outdated

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might need a version bump for release right?

@MicroFish91
Matthew Fisher (MicroFish91) merged commit 4937a06 into microsoft:main Oct 1, 2026
3 checks passed
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.

3 participants