windows-mcp
MCP server for Windows desktop file/folder management via the Model Context Protocol.
đź“‹ Table of Contents
OverviewRequirementsInstallationUsageAvailable ToolsProject StructureDevelopmentSecurityLicense
Overviewwindows-mcp is a Model Context Protocol (MCP) server that exposes tools to manage files and folders on the Windows Desktop. It communicates via stdio transport and is designed to be connected to any MCP-compatible client (e.g., Claude Desktop).
Requirements
Node.js >= 18Windows OS (relies on USERPROFILE and Desktop path conventions)npm >= 8
Installationbash# Clone the repositorygit clone https://github.com/your-username/windows-mcp.gitcd windows-mcp
Install dependencies
npm install
Build the project
npm run build
UsageStart the MCP serverbashnpm startThe server communicates over stdio and is ready to be connected to an MCP client.Connecting with Claude DesktopAdd the following to your claude_desktop_config.json:json{"mcpServers": {"windows-mcp": {"command": "node","args": ["C:/path/to/windows-mcp/dist/index.js"]}}}
Available Toolsdelete_folderDeletes a file or folder located on the Windows Desktop.ParameterTypeRequiredDescriptionpathstringâś…Relative path within the DesktopExample input:json{"path": "old-project"}Example response:json{"success": true,"deleted": "old-project"}
⚠️ Deletion is permanent and recursive. Use with caution.
Project Structurewindows-mcp/├── src/│ ├── index.ts # Entry point│ ├── server.ts # MCP server setup & request handlers│ ├── config/│ │ └── paths.ts # Desktop path resolution│ ├── handlers/│ │ └── deleteFolder.handler.ts # Business logic for delete tool│ ├── tools/│ │ └── deleteFolder.tool.ts # Tool schema definition│ └── utils/│ └── pathValidator.ts # Path safety validation├── dist/ # Compiled output (generated)├── tsconfig.json├── package.json└── README.md
DevelopmentScriptsCommandDescriptionnpm run buildCompile TypeScript to dist/npm startRun the compiled servernpm testRun tests (not yet configured)Buildbashnpm run buildTypeScript sources in src/ are compiled to dist/ using the config in tsconfig.json (target: ES2022, module: NodeNext).
SecurityAll file operations are restricted to the Windows Desktop directory. The server enforces:
Path traversal prevention — any path resolving outside the Desktop is rejected.Existence check — operations on non-existent paths return a descriptive error.
Paths like ../../Windows/System32 will be blocked with an error:Solo se permite borrar dentro del Escritorio
LicenseMIT © 2026 Emilio José Ugeda Sanoja — see LICENSE for details.