DevMCP
Provides a Git wrapper for version control operations, including status, diff, log, commit, and other Git commands.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@DevMCPshow me the project tree"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
DevMCP
A single-file MCP server that turns any folder on your machine into a workspace an AI agent can work in: read and edit files, search code, run shell commands, manage background jobs, test HTTP endpoints, browse pages in headless Chromium, extract PDFs, and capture the screen.
It speaks streamable HTTP, so any remote MCP client can connect through an ngrok tunnel.
How it works
dev_server.pyruns an MCP server on127.0.0.1:8787. The folder it is launched from becomes the workspace root — file tools are sandboxed to it; shell tools are not.ngrokexposes the port publicly so your MCP client can reach it.The client calls the tools to read/edit files, run commands, and inspect images or screenshots.
Related MCP server: local-mcp
Tools
Tool | Purpose |
| Project path plus system details: OS, architecture, shell, Python |
| Manifests (package.json, pyproject.toml, ...) and README head |
| Depth-limited directory tree |
| Single-directory listing with sizes |
| Recursive file list (capped, junk dirs skipped) |
| Read a file slice with line numbers |
| Class/function/export lines with line numbers |
| Create or overwrite a file (UTF-8) |
| Exact-match single replacement |
| ripgrep search with a pure-Python fallback |
| Shell command in the project folder (blocking) |
| PowerShell in the project folder (blocking) |
| Git wrapper (status, diff, log, commit, ...) |
| Run a long command in the background, returns a job id |
| Job status plus the tail of its output |
| Kill a background job's process tree |
| Test HTTP/API endpoints, including localhost |
| Load a URL in headless Chromium (JS-rendered text or HTML) |
| Screenshot of a URL rendered in headless Chromium |
| Send an image file from the project to the client |
| Capture a monitor |
| Extract text from a PDF |
| Render one PDF page as an image |
| Restart to pick up |
| Shut down; the launcher cleans up ngrok |
Requirements
Python 3.11+
ngrok (a free account with a reserved domain is recommended)
Optional, for faster code search: ripgrep (e.g.
winget install BurntSushi.ripgrep.MSVC)
Launchers: devmcp.ps1 / devmcp.bat (Windows) and devmcp.sh (Linux; run chmod +x devmcp.sh after cloning).
Setup
Clone the repository and install dependencies:
pip install -r requirements.txt playwright install chromiumReserve a domain in the ngrok dashboard and point the launcher at it:
setx DEVMCP_NGROK_URL "https://your-domain.ngrok-free.dev"If unset, ngrok assigns a random URL each run (check the inspector at
http://127.0.0.1:4040).Add this folder to your
PATHsodevmcpworks from anywhere.Start it from a project folder:
cd path/to/project devmcpIn your MCP client, add a server with:
URL:
https://your-domain.ngrok-free.dev/mcp(the path must end in/mcp)Transport: streamable HTTP
Auth: bearer token with any value (the server does no authentication itself)
Ctrl+C stops the server and the tunnel.
Configuration
Variable | Default | Meaning |
| (unset) | Reserved ngrok domain used by the launcher |
|
| Local port for the server and tunnel |
|
| Bind address for the server |
All variables are optional — the server runs fine with the defaults. Instead of setting them globally, you can copy .env.example to .env next to the launcher and edit it there; both launchers load it automatically (.env is gitignored).
Output caps, ignored directories, and the browser user agent are constants at the top of dev_server.py.
Security
File tools reject paths that escape the launch folder. Shell tools are not sandboxed — they run arbitrary commands with your user's privileges.
There is no real authentication. Anyone with the tunnel URL can control your machine: keep the URL private and stop the tunnel when not in use.
Notes
Commands that may run longer than ~60 seconds (dev servers, builds) should use
start_process+check_process, not a blockingrun_cmd.Every tool returns a readable
ERROR (...)string instead of raising; a transport-level connection failure means the server or tunnel is down.After editing
dev_server.py, callrestart_serverand retry tools after ~10 seconds.Most MCP clients cache the tool list at connect time — refresh the connection after adding or renaming tools.
Troubleshooting
Symptom | Fix |
| ngrok is missing |
"Failed to connect" / timeouts | Server or tunnel not running (or mid-restart); wait ~10 s and retry, or rerun |
Stray ngrok process |
|
Editor import warnings | Wrong Python interpreter selected, not a real error |
This server cannot be deployed
Maintenance
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
OCR, transcription, file extraction, and image generation for AI agents via MCP.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Related MCP Servers
- AlicenseBqualityDmaintenanceProduction-grade MCP server that gives AI agents safe access to your local dev environment: filesystem, databases, processes, and OpenAPI specs.1528 npm3MIT
- AlicenseNot gradedqualityDmaintenanceA lightweight, stdio-based MCP server enabling AI assistants to perform local file system operations like reading, writing, searching, and executing commands.2,994 npmMIT
- AlicenseNot gradedqualityCmaintenanceA self-hosted MCP server that gives AI agents controlled access to a machine: filesystem, shell, background processes, git, web fetching and persistent key-value memory.GPL 3.0
- FlicenseBqualityCmaintenanceA lightweight MCP server that enables AI assistants to interact with the local machine through terminal, filesystem, and Python execution tools.91-