Windows Developer MCP Server
The Windows Developer MCP Server is a production-grade MCP server that lets AI clients securely execute commands, manage files, and orchestrate full developer workflows natively on Windows. Key capabilities include:
π» Terminal & Shell Execution: Run PowerShell (
run_powershell) or CMD (run_cmd) commands, execute.ps1/.bat/.cmdscripts (run_script), with configurable timeouts and security validation (destructive commands likeformat/shutdownare blocked).π Filesystem Management: Read, write, append, copy, move, and delete files; create directories; list directory contents; search with glob patterns; check file existence/info; and render tree views β all sandboxed to the workspace boundary to prevent path traversal.
π§ Session & Workspace Control: Manage working directory, view/set environment variables, inspect session info and command history, and clear history.
π Git Version Control: Initialize or clone repos, check status, view logs, diffs, branches, tags, blame annotations, stage/commit, push/pull, stash, and manage remotes.
π Python Development: Create, activate, and deactivate virtual environments; run Python scripts; install, uninstall, list, and inspect packages via pip; freeze requirements; and check Python/pip environment info.
π© Node.js & npm: Run JS scripts with Node, execute npm scripts and npx commands, install/list/fetch info about npm packages, and check Node/npm versions.
π³ Docker Orchestration: Build images; run, list, stop, remove, and exec into containers; pull images; view logs; manage Docker Compose services (up/down/logs); and inspect system info/version.
πͺ Windows System Intelligence: Comprehensive system/OS version info, CPU/disk/memory statistics, process listing and inspection, and Windows service status.
π Network Diagnostics: Ping hosts, DNS lookups, traceroute, list open ports, get local IP/adapter info, and perform HTTP GET requests.
ποΈ SQLite Database Access: Search for databases, inspect schemas and column definitions, run read-only SELECT queries, and execute write operations (with confirmation).
π AI Project Analysis: Detect project types and frameworks, count lines of code, find TODO/FIXME/HACK tags, generate comprehensive project summaries, and inspect
package.json/pyproject.toml.π GitHub Integration: Check authentication status, fetch repo info, and create issues via GitHub CLI (requires
GITHUB_TOKEN).π Built-in Security: Sandbox boundary enforcement, destructive-command validation, rate limiting, and structured audit logging for every executed command.
Provides container listing, inspection, log tailing, image management, and compose state checks.
Provides repository status, commit logs, branch management, diffs, and staging support.
Provides public/private repository inspection, issue tracking, PR status, release fetching, and search via GitHub API or gh CLI.
Provides Node.js version detection, global/local package details, and script runner inspection.
Provides npm version detection and global/local package details.
Provides virtual environment management, package inspection, module verification, and version details.
Provides database schema inspection, safe parameterized queries, table listing, and index overview.
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., "@Windows Developer MCP Server show me the current git status and recent commits"
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.
Windows Developer MCP Server
Windows Developer MCP gives AI assistants (Claude Desktop, LM Studio, Cursor, etc.) safe, native developer superpowers on Windows β including terminal execution, Git/GitHub integration, Docker management, filesystem operations, and AI project diagnostics.
β‘ 1-Minute Quick Start
Step 1: Install uv
If you don't have uv installed, open PowerShell and run:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"Step 2: Configure Your AI Client
π€ Claude Desktop Setup
Edit %APPDATA%\Claude\claude_desktop_config.json:
{
"mcpServers": {
"windows-developer-mcp": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\windows-developer-mcp",
"run",
"windows-developer-mcp"
],
"env": {
"MCP_SERVER__PROFILE": "developer",
"MCP_WORKSPACE__PATH": "C:\\path\\to\\your\\project"
}
}
}
}π» LM Studio / Local LLM Setup
Edit your LM Studio MCP server configuration:
{
"mcpServers": {
"windows-developer-mcp": {
"command": "uv",
"args": [
"--directory",
"C:\\path\\to\\windows-developer-mcp",
"run",
"windows-developer-mcp"
],
"env": {
"MCP_SERVER__PROFILE": "minimal",
"MCP_WORKSPACE__PATH": "C:\\path\\to\\your\\project"
}
}
}
}Related MCP server: allcanuse-mcp
π₯ Key Features
π‘οΈ Workspace-Confined & Sandboxed: All commands are executed securely with strict path normalization, denylists, and audit logging.
β‘ Dual-Profile Engine:
minimal: Optimized for Local LLMs (7B/8B) in LM Studio (<1.2K token context footprint).developer: Ideal for Claude Desktop / GPT-4o (~3.8K token footprint).full: Complete exposure for 70B+ LLMs & Glama Indexing.
π§° 40+ Developer Tools across 12 Modules: Terminal, Git, GitHub, Docker, Filesystem, Python, Node, SQLite, Windows, Network, Browser, and AI Project Analysis.
π§° Available Tool Modules
Module | Core Tools Exposed | Description |
Terminal |
| Safe PowerShell & CMD subprocess execution. |
Filesystem |
| Workspace-restricted file & directory operations. |
Git |
| Git branch, commit, diff, and remote management. |
GitHub |
| GitHub API for repos, PRs, issues, and releases. |
Docker |
| Container, image, and Compose orchestration. |
Python |
| Virtual environment management & execution. |
Node.js |
| Node.js script execution & npm package management. |
SQLite |
| Database queries & schema inspection. |
Windows |
| System metrics, process list, and environment vars. |
Network |
| Network diagnostics & connectivity checks. |
Project (AI) |
| Tech stack detection, security audit, & code gen. |
Browser |
| Web page fetching & clean text extraction. |
π§ AI-Native Project Analysis Tools
ProjectProvider provides intelligent tools designed specifically for codebase comprehension:
π
project_analyze: Auto-detects frameworks, tech stacks, and entry points.π‘οΈ
project_security_scan: Static audit for hardcoded API keys, tokens, and credentials.π³
project_summarize: Hierarchical directory tree generator.π¦
project_dependencies: Cross-language dependency analysis.π
project_generate_readme: Drafts a complete README.md based on codebase analysis.π§ͺ
project_generate_tests: Generates pytest unit test skeletons for source files.
π‘οΈ Safety & Security Features
Workspace Boundary Sandbox: Operations are strictly restricted to the specified workspace path (
MCP_WORKSPACE__PATH).Command Denylist: Blocks dangerous operations (
format,shutdown,del /f /s /q, etc.).Audit Logging: All executed actions are recorded in
logs/audit.log.
π Documentation Suite
π Provider Reference
π‘οΈ Security Model
π₯οΈ Claude Desktop Setup Guide
π€ Contributing Guide
π Changelog
π License
Distributed under the MIT License. See LICENSE for details.
Available Tools
112 toolsactivate_venvA
Register a virtual environment as active in the current session.
This does not "activate" the venv in a shell sense (which is a shell-level operation). Instead, it records the venv path in the session so that subsequent python_* and pip_* tool calls use the venv's interpreter and pip automatically.
Inputs: path. Returns: object
analyze_projectA
Detect project type, framework, and key configuration files.
Identifies Python, Node.js, .NET, Rust, Go, Java, Docker, and other project types automatically by checking for characteristic files.
Inputs: path. Returns: object
append_fileA
Append content to an existing file (or create it if it does not exist).
Args:
path: Path to the file.
content: Content to append.
encoding: File encoding. Default: "utf-8".
Returns:
A dict with keys: status, data (path, total_size_bytes).
Examples:
append_file("log.txt", "New entry
") append_file("output.csv", "row1,row2 ")
Inputs: path (required), content (required), encoding. Returns: object
check_packageA
Check whether a package is installed and return its version.
Inputs: package (required). Returns: object
check_urlA
Send an HTTP HEAD request to verify URL accessibility and inspect response headers.
Inputs: url (required). Returns: object
clear_session_historyA
Clear the session command history.
This does not affect the working directory, environment variables, or any other session state. Only the command history is cleared.
Returns: A dict with keys: status, data (confirmation message).
Examples: clear_session_history()
Inputs: no named parameters. Returns: object
copy_fileB
Copy a file to a new location within the workspace.
Inputs: dst (required), src (required), confirm. Returns: object
count_lines_of_codeA
Count lines of code across the codebase.
Counts total lines, code lines (non-blank, non-comment), blank lines, and comment lines per file extension.
Inputs: path, extensions, exclude_dirs. Returns: object
cpu_infoA
Return CPU usage statistics and core information.
Returns: A dict with keys: status, data (cores, usage%, frequency).
Examples: cpu_info()
Inputs: no named parameters. Returns: object
create_directoryA
Create a directory and all necessary parent directories.
Inputs: path (required). Returns: object
create_venvA
Create a new Python virtual environment.
Inputs: path. Returns: object
deactivate_venvA
Deactivate the current session's virtual environment.
After this call, python_* and pip_* tools will use the system Python interpreter.
Returns: A dict with keys: status, data (confirmation).
Examples: deactivate_venv()
Inputs: no named parameters. Returns: object
delete_fileA
Permanently delete a file from the workspace.
This operation is irreversible. Requires explicit confirmation
when security.require_confirmation is enabled (default: True).
Inputs: path (required), confirm. Returns: object
disk_infoA
Return disk partition information and usage for each drive.
Returns: A dict with keys: status, data (list of partition details).
Examples: disk_info()
Inputs: no named parameters. Returns: object
dns_lookupB
Perform a DNS lookup for the given hostname.
Inputs: hostname (required). Returns: object
docker_buildB
Build a Docker image from a Dockerfile.
Inputs: tag, confirm, context, dockerfile. Returns: object
docker_compose_downB
Stop and remove Docker Compose services.
Inputs: file, confirm, volumes. Returns: object
docker_compose_logsB
Return logs from Docker Compose services.
Inputs: file, tail, service. Returns: object
docker_compose_upB
Start Docker Compose services.
Inputs: file, detach, confirm, services. Returns: object
docker_execA
Execute a command inside a running container.
Inputs: command (required), container (required). Returns: object
docker_infoA
Return Docker system-wide information.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: docker_info()
Inputs: no named parameters. Returns: object
docker_list_containersB
List Docker containers.
Inputs: all_containers. Returns: object
docker_list_imagesC
List Docker images.
Inputs: all_images. Returns: object
docker_logsC
Return logs from a container.
Inputs: container (required), tail, follow. Returns: object
docker_pullB
Pull a Docker image from a registry.
Inputs: image (required), confirm. Returns: object
docker_remove_containerB
Remove a Docker container.
Inputs: container (required), force, confirm. Returns: object
docker_runC
Run a Docker container.
Inputs: image (required), env, name, ports, +4 more. Returns: object
docker_stopB
Stop a running container.
Inputs: container (required). Returns: object
docker_versionA
Return the installed Docker version.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: docker_version()
Inputs: no named parameters. Returns: object
extract_textA
Fetch a web page and extract human-readable body text.
Strips script, style, and HTML markup tags to produce clean text.
Inputs: url (required), max_chars. Returns: object
fetch_pageC
Fetch static web page content over HTTP/HTTPS.
Inputs: url (required), timeout. Returns: object
file_existsB
Check whether a path exists within the workspace.
Inputs: path (required). Returns: object
file_infoA
Return metadata for a file or directory.
Includes size, creation time, modification time, file type, and whether the path is readable/writable.
Inputs: path (required). Returns: object
find_todosB
Search for TODO/FIXME/HACK and similar tags in source files.
Inputs: path, tags, extensions, max_results. Returns: object
get_environment_variableA
Return the value of an environment variable.
Checks session-scoped overrides first, then falls back to the inherited process environment.
Inputs: name (required). Returns: object
get_ip_infoA
Return local network adapter information and IP addresses.
Includes all IPv4 and IPv6 addresses for each active adapter.
Returns: A dict with keys: status, data (hostname, adapters list).
Examples: get_ip_info()
Inputs: no named parameters. Returns: object
get_open_portsA
List locally open (listening) TCP and UDP ports.
Inputs: include_remote. Returns: object
get_processB
Return detailed information about a specific process.
Inputs: pid (required). Returns: object
get_session_historyA
Return recent command history for the current session.
History entries include the command, tool name, exit code, timestamp, and duration. History is capped at 500 entries.
Inputs: limit. Returns: object
get_session_infoA
Return a snapshot of the current session state.
Includes the working directory, last exit code, active virtual environment, active Git repository, active project, and session start time.
Returns: A dict with keys: status, data (session snapshot).
Examples: get_session_info()
Inputs: no named parameters. Returns: object
get_working_directoryA
Return the current session working directory.
The working directory persists across all tool calls within the same server session. It defaults to the user's home directory on startup.
Returns: A dict with keys: status, data (containing cwd, exists, is_dir).
Examples: get_working_directory()
Inputs: no named parameters. Returns: object
git_addA
Stage files for commit.
Inputs: files. Returns: object
git_blameB
Show line-by-line authorship information for a file.
Inputs: file_path (required), line_range. Returns: object
git_branchA
List local (or all) branches and indicate the current branch.
Inputs: all_branches. Returns: object
git_checkoutA
Switch to a branch, or restore a file to its last committed state.
Inputs: branch_or_file (required). Returns: object
git_cloneA
Clone a remote repository into a local directory.
The destination must be within the workspace boundary.
Inputs: url (required), destination. Returns: object
git_commitA
Create a commit with the staged changes.
Requires explicit confirmation when security.require_confirmation
is enabled in config (default: True).
Inputs: message (required), confirm, all_changes. Returns: object
git_create_branchA
Create a new branch and switch to it.
Inputs: name (required), from_branch. Returns: object
git_diffA
Show changes between commits, working tree, or index.
Inputs: staged, file_path, stat_only. Returns: object
github_auth_statusA
Check GitHub authentication status and token validity.
Returns whether a token is configured and (if so) the authenticated user's login name.
Returns: A dict with keys: status, data (authenticated, token_present, user).
Examples: github_auth_status()
Inputs: no named parameters. Returns: object
github_create_issueA
Create a new GitHub issue.
Requires a GITHUB_TOKEN with issue write permissions and explicit confirmation when required by config.
Inputs: repo (required), owner (required), title (required), body, +2 more. Returns: object
github_get_issueA
Get a specific GitHub issue by number.
Inputs: repo (required), owner (required), number (required). Returns: object
github_get_prA
Get a specific pull request by number.
Inputs: repo (required), owner (required), number (required). Returns: object
github_list_issuesB
List issues for a GitHub repository.
Inputs: repo (required), owner (required), label, limit, +1 more. Returns: object
github_list_prsB
List pull requests for a repository.
Inputs: repo (required), owner (required), limit, state. Returns: object
github_list_releasesB
List releases for a repository.
Inputs: repo (required), owner (required), limit. Returns: object
github_rate_limitA
Check the current GitHub API rate limit status.
Returns: A dict with keys: status, data (core, search, and graphql limits).
Examples: github_rate_limit()
Inputs: no named parameters. Returns: object
github_repo_infoA
Return metadata for a GitHub repository.
Inputs: repo (required), owner (required). Returns: object
github_search_reposB
Search GitHub repositories.
Inputs: query (required), sort, limit, order. Returns: object
git_initB
Initialise a new Git repository.
The target path must be within the workspace boundary.
Inputs: path. Returns: object
git_logC
Return recent commit history.
Inputs: limit, since, author, oneline. Returns: object
git_pullB
Pull changes from a remote repository.
Inputs: branch, remote. Returns: object
git_pushA
Push commits to a remote repository.
Requires explicit confirmation when security.require_confirmation
is enabled in config (default: True).
Inputs: force, branch, remote, confirm. Returns: object
git_remote_infoA
Show configured remote repositories and their URLs.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: git_remote_info()
Inputs: no named parameters. Returns: object
git_stashB
Stash or restore uncommitted changes.
Inputs: action, message. Returns: object
git_statusA
Return the current Git working tree status.
Shows the state of the index and working directory β which files are staged, unstaged, or untracked.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: git_status()
Inputs: no named parameters. Returns: object
git_tagsA
List all tags in the repository.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: git_tags()
Inputs: no named parameters. Returns: object
http_getA
Perform an HTTP GET request and return the response.
Useful for testing APIs and web endpoints. Response body is truncated at 10,000 characters.
Inputs: url (required), headers, timeout. Returns: object
install_packageA
Install a Python package with pip.
Requires explicit confirmation when security.require_confirmation
is enabled in config.
Inputs: package (required), confirm, upgrade, version. Returns: object
list_directoryB
List the contents of a directory.
Inputs: path, show_hidden. Returns: object
list_environment_variablesB
List all environment variables visible to the MCP server process.
Returns both process-level and session-scoped overrides. Session
overrides are marked with source: "session" in the output.
Inputs: filter_prefix. Returns: object
list_packagesA
List all installed Python packages.
Inputs: format. Returns: object
list_processesA
List running processes with resource usage.
Inputs: limit, sort_by, filter_name. Returns: object
list_servicesA
List Windows services with their status.
Inputs: filter_name, status_filter. Returns: object
memory_infoA
Return RAM and virtual memory statistics.
Returns: A dict with keys: status, data (total, available, used, percent for RAM and swap).
Examples: memory_info()
Inputs: no named parameters. Returns: object
move_fileB
Move or rename a file within the workspace.
Inputs: dst (required), src (required), confirm. Returns: object
node_run_scriptC
Execute a JavaScript file with Node.js.
Inputs: path (required), args, timeout. Returns: object
node_versionA
Return the installed Node.js version.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: node_version()
Inputs: no named parameters. Returns: object
npm_infoA
Fetch information about an npm package from the registry.
Inputs: package (required). Returns: object
npm_installC
Install npm packages.
Inputs: confirm, packages, save_dev. Returns: object
npm_listB
List installed npm packages.
Inputs: depth, global_packages. Returns: object
npm_runA
Run an npm script defined in package.json.
Inputs: script (required), args. Returns: object
npm_versionA
Return the installed npm version.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: npm_version()
Inputs: no named parameters. Returns: object
npx_runB
Execute a command with npx.
Inputs: command (required), args, timeout. Returns: object
open_urlB
Open a URL in the default system web browser.
Inputs: url (required). Returns: object
pingB
Ping a host and return round-trip statistics.
Inputs: host (required), count. Returns: object
pip_freezeA
Output installed packages in requirements.txt format.
Useful for generating a requirements.txt file or auditing the exact package versions in the current environment.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: pip_freeze()
Inputs: no named parameters. Returns: object
pip_versionA
Return the current pip version.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: pip_version()
Inputs: no named parameters. Returns: object
project_summaryA
Return a comprehensive project overview combining multiple analyses.
Combines project type detection, LOC counting, and TODO/FIXME listing into a single structured report.
Inputs: path. Returns: object
python_infoA
Return comprehensive Python environment information.
Includes version, executable path, platform, prefix, and active virtual environment (if any).
Returns: A dict with keys: status, data (detailed env info).
Examples: python_info()
Inputs: no named parameters. Returns: object
python_versionA
Return the current Python interpreter version.
Returns: A dict with keys: status, exit_code, stdout, stderr, output, duration_ms.
Examples: python_version()
Inputs: no named parameters. Returns: object
read_fileB
Read and return the contents of a text file.
Inputs: path (required), encoding, max_bytes. Returns: object
read_package_jsonA
Parse and summarise a package.json file.
Returns project name, version, description, scripts, dependencies, and devDependencies.
Inputs: path. Returns: object
read_pyproject_tomlA
Parse and summarise a pyproject.toml file.
Returns project name, version, description, dependencies, and tool configurations.
Inputs: path. Returns: object
run_cmdA
Execute a CMD command and return the output.
Useful for legacy batch operations, tools that behave differently under CMD, or when PowerShell is unavailable.
Inputs: command (required), timeout. Returns: object
run_powershellA
Execute a PowerShell command and return the output.
The command passes through the full security validation pipeline before execution. Dangerous commands (format, shutdown, etc.) are blocked automatically.
Inputs: command (required), timeout. Returns: object
run_python_scriptA
Execute a Python script file.
The script must be within the workspace boundary. Uses the active virtual environment's Python if one is registered in the session.
Inputs: path (required), args, timeout. Returns: object
run_scriptA
Execute a PowerShell (.ps1) or batch (.bat/.cmd) script file.
Resolves the script path relative to the current working directory. The script must exist within the configured workspace boundary.
Inputs: path (required), args, timeout. Returns: object
search_filesB
Search for files matching a glob pattern.
Inputs: path, pattern, recursive, max_results. Returns: object
set_working_directoryA
Change the current session working directory.
The new directory must exist and must be within the configured workspace boundary. Relative paths are resolved against the current working directory.
Inputs: path (required). Returns: object
sqlite_databasesA
Search for SQLite database files within the workspace.
Inputs: search_path. Returns: object
sqlite_executeA
Execute any SQL statement against a SQLite database.
Write operations (INSERT, UPDATE, DELETE, CREATE, DROP, etc.) require explicit confirmation.
Inputs: sql (required), database (required), params, confirm. Returns: object
sqlite_list_tablesA
List all tables in a SQLite database file.
Inputs: database (required). Returns: object
sqlite_queryA
Execute a read-only SELECT query against a SQLite database.
Only SELECT statements are allowed. Use sqlite_execute for writes.
Inputs: sql (required), database (required), params, max_rows. Returns: object
sqlite_schemaA
Return the CREATE statement(s) for tables in a database.
Inputs: database (required), table. Returns: object
sqlite_table_infoB
Return column definitions for a specific table.
Inputs: table (required), database (required). Returns: object
system_infoA
Return comprehensive system information.
Includes OS version, hostname, uptime, Python version, architecture, and processor brand.
Returns: A dict with keys: status, data (detailed system snapshot).
Examples: system_info()
Inputs: no named parameters. Returns: object
tracerouteB
Trace the network route to a host.
Inputs: host (required), max_hops. Returns: object
treeA
Return a directory tree view up to a specified depth.
Inputs: path, max_depth, show_hidden. Returns: object
uninstall_packageA
Uninstall a Python package with pip.
Requires explicit confirmation (passes --yes to pip to avoid interactive prompt).
Inputs: package (required), confirm. Returns: object
windows_versionA
Return detailed Windows version information.
Returns: A dict with keys: status, data (version, build, edition strings).
Examples: windows_version()
Inputs: no named parameters. Returns: object
write_fileA
Create or overwrite a file with the given content.
Creates parent directories automatically. Overwrites existing files
without warning β use file_exists() first if unsure.
Requires explicit confirmation when ``security.require_confirmation``
is enabled in config.
Args:
path: Path to write (absolute or relative to cwd).
content: The text content to write.
encoding: File encoding. Default: "utf-8".
confirm: Set to True to confirm when required by config.
Returns:
A dict with keys: status, data (path, size_bytes, lines).
Examples:
write_file("notes.txt", "Hello, World!")
write_file("src/config.py", "DEBUG = True
", confirm=True)
Inputs: path (required), content (required), confirm, encoding. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 112 tools
Most tools are separated by clear domain prefixes such as docker_, git_, github_, sqlite_, and npm_, which helps differentiate them. However, several tools overlap in purpose: fetch_page/extract_text/http_get/check_url all deal with web content, run_powershell and run_script both execute PowerShell scripts, and tree/list_directory/search_files share file-discovery territory.
The dominant pattern is snake_case verb_noun or domain_verb_noun naming, e.g. delete_file, git_commit, docker_stop, and npm_install. Minor deviations like tree, ping, traceroute, and github_auth_status break the pattern slightly, but overall the naming is predictable and not chaotic.
112 tools is an extreme count for a single MCP server, spanning file operations, shell execution, Docker, system information, Python, Node.js, Git, GitHub, networking, SQLite, and project analysis. This broad sprawl imposes a heavy selection burden on agents and goes far beyond a well-scoped tool set.
The server covers a wide range of developer workflows, but individual clusters have notable gaps: GitHub only lists/gets issues and PRs without create/merge/update operations, Docker lacks image removal and container start, and environment variables can be read but not set. These holes force agents to fall back to generic shell commands or external workflows.
Maintenance
Related MCP Connectors
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
MCP server for building and testing AI agents with multi-model experimentation and insights.
One MCP server for the services your AI needs: memory, files, Microsoft 365, kanban and more.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA production-ready MCP server that provides AI assistants with comprehensive GitHub developer tooling including PR analysis, code review, changelog generation, dependency auditing, commit summarization, and refactoring suggestions.7 npmISC
- AlicenseNot gradedqualityDmaintenanceA MCP server for Windows/Linux that provides 90+ tools enabling AI assistants to systematically manage local systems, including system probing, command execution, file editing, network diagnostics, and more.13MIT
- AlicenseBqualityDmaintenanceHigh-performance MCP server giving AI agents advanced filesystem and automation capabilities on Windows, with 26 tools across file I/O, search, Git, process management, and more.262MIT
- AlicenseBqualityCmaintenanceA comprehensive MCP server for developers providing file operations, shell execution, git integration, and smart caching to enhance AI-assisted development.1122 npmMIT