Browser MCP bridge for AI web chats
MCP Bridge
MCP Bridge is a browser extension plus a Windows Native Messaging host that lets supported web AI chat pages call local MCP tools.
The project is currently focused on DeepSeek Chat. Other platforms such as Qwen, ChatGPT, Gemini, and related web UIs are being actively explored, but they are not yet considered equally stable.
This project is for learning, research, and personal productivity experiments only. It is not a hardened security product and it still has many shortcomings that need continued optimization and fixes.
Current Status
- DeepSeek Chat: actively tested and currently the best supported target.
- Other platforms: adapters exist or are being explored, but compatibility may break when web UIs change.
- Windows support: the native host and command tools are designed around Windows first.
- Security model: permissions, confirmations, and filesystem scopes are implemented, but users must still review every powerful tool carefully.
Known limitations:
- Web chat DOM structures change frequently, so rendering, hiding raw tool calls, and auto-submit behavior can still need follow-up fixes.
- Long file writes and large tool outputs are handled more carefully now, but edge cases may remain.
- Command execution is powerful and inherently risky. Use the least permissive permission preset that fits your workflow.
- The project is young. Expect rough edges, logs that need cleanup, and platform-specific bugs.
Features
- Inject MCP tool instructions into supported AI web chats.
- Render tool calls as cards instead of raw XML/JSONL blocks.
- Execute MCP tools through a Native Messaging host.
- Built-in
cmd.executeandpowershell.executetools for Windows command execution. - Filesystem MCP integration with permission prompts.
- Settings panel for servers, permissions, prompt injection, shortcuts, skills, and project information.
- Session-level prompt injection tracking to reduce duplicate injection.
- Safer long-file rendering: long
filesystem.write_filecontent is summarized in the UI while the full content is still sent to the tool.
Community
- Issues: bug reports and feature requests
- Discussions: usage feedback, ideas, and platform adaptation notes
- Releases: public release notes
Repository Layout
mcp-bridge-extension/ Browser extension built with React and Vite
mcp-bridge-host/ Windows Native Messaging host and MCP server manager
docs/ Public installation, architecture, and roadmap notes
deploy.js Local helper for deploying a built host/extension to the installed host path
Requirements
- Windows 10/11
- Node.js 20 or newer recommended
- Microsoft Edge or Google Chrome
- Git
- Optional: MCP servers such as
@modelcontextprotocol/server-filesystem
Quick Start
- Install extension dependencies:
cd mcp-bridge-extension
npm install
npm run build
- Load the unpacked extension:
- Edge: open
edge://extensions/ - Chrome: open
chrome://extensions/ - Enable Developer mode
- Load unpacked extension from
mcp-bridge-extension/dist - Copy the generated extension ID
- Install the native host:
cd mcp-bridge-host
npm install
npm run build
.\install.bat
When prompted, paste the extension ID from the browser extension page.
- Open DeepSeek Chat and wait for MCP Bridge to connect.
Configuration
The native host reads:
%LOCALAPPDATA%\mcp-bridge-host\config.json
This repository includes mcp-bridge-host/config.example.json. The installer initializes config.json from that example if no local config exists.
Do not commit your real config.json. It may contain local paths, API tokens, private MCP server settings, and permission choices.
Permissions And Safety
MCP Bridge can allow an AI page to request local file access and command execution. Treat this as a privileged automation layer.
Recommended safety practices:
- Start with read-only or confirmation-based presets.
- Prefer
filesystemtools for file reads/writes instead of shell redirection. - Keep command execution behind confirmation unless you fully trust the workflow.
- Use workspace-scoped filesystem access for ordinary projects.
- Never paste or store API tokens in public screenshots or issue reports.
- Review every prompt, tool call, and permission request before allowing sensitive operations.
This project does not bypass browser or OS security. It uses the browser Native Messaging API and local MCP servers you configure.
Development
Build extension:
cd mcp-bridge-extension
npm run typecheck
npm run build
Build host:
cd mcp-bridge-host
npm run build
Run command executor smoke tests:
cd mcp-bridge-host
node test-cmd-executor.js
Deploy to an already installed local host:
node deploy.js
Then reload the extension in edge://extensions/ or chrome://extensions/.
Roadmap
- Continue stabilizing DeepSeek rendering, detection, and auto-submit behavior.
- Improve platform adapters for Qwen, ChatGPT, Gemini, and other web UIs.
- Add clearer diagnostics for native host and MCP server failures.
- Improve permission UX and documentation.
- Add more automated end-to-end tests for tool call rendering and result submission.
- Reduce assumptions about web page DOM structure.
Disclaimer
This repository is released publicly for learning and research. It is provided as-is, without warranty. You are responsible for your own configuration, data, permissions, and any commands or MCP tools you allow the AI to run.
Author
- GitHub: scmypapa
License
MIT License. See LICENSE.