Skip to main content
Glama
Windows Command Line MCP Server

Windows Command Line MCP Server

Windows Command Line MCP Server

A secure Model Context Protocol (MCP) server that enables AI models to interact with Windows command-line functionality safely and efficiently.

Version License: MIT

Overview

The Windows Command Line MCP Server provides a robust, secure bridge between AI models and Windows system operations. It allows controlled execution of commands, project creation, and system information retrieval while maintaining strict security protocols.

Related MCP server: Windows CLI MCP Server

Key Features

🔒 Enhanced Security

  • Comprehensive command allowlist

  • Strict input validation

  • Prevention of destructive system operations

  • Configurable security levels

🛠 Development Tools Support

  • Project creation for React, Node.js, and Python

  • Safe development environment interactions

  • Expanded command support for development workflows

🖥 System Interaction Capabilities

  • Execute Windows CLI commands

  • Run PowerShell scripts

  • Retrieve system and network information

  • Manage processes and services

Installation

Installing via Smithery

To install Windows Command Line MCP Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @alxspiker/Windows-Command-Line-MCP-Server --client claude

Prerequisites

  • Node.js 16 or later

  • npm or yarn

  • Windows operating system

Setup

git clone https://github.com/alxspiker/Windows-Command-Line-MCP-Server.git
cd Windows-Command-Line-MCP-Server
npm install
npm run build

Usage

Command Line Options

  • Default mode: Uses predefined safe commands

  • --allow-all: Run in extended mode (with additional precautions)

  • Custom command lists can be specified as arguments

Project Creation

Create new projects safely with the built-in project creation tool:

  • Supported project types: React, Node.js, Python

  • Projects created in a sandboxed ~/AIProjects directory

Available Tools

  1. execute_command: Run Windows CLI commands

  2. execute_powershell: Execute PowerShell scripts

  3. create_project: Safely create new development projects

  4. list_running_processes: Retrieve active system processes

  5. get_system_info: Collect system configuration details

  6. get_network_info: Retrieve network adapter information

  7. get_scheduled_tasks: List and query system tasks

  8. get_service_info: Manage and query Windows services

  9. list_allowed_commands: List all commands that can be executed by the server

Using with Claude for Desktop

To use this server with Claude for Desktop:

  1. Build the server using the setup instructions above

  2. Add it to your claude_desktop_config.json:

{
  "mcpServers": {
    "windows-cmd": {
      "command": "node",
      "args": ["/path/to/dist/index.js"]
    }
  }
}

Replace /path/to/dist/index.js with the absolute path to the built index.js file in the dist directory.

  1. Restart Claude for Desktop

  2. You can now use the tools by asking Claude to perform Windows system operations

Security Considerations

Allowed Commands

By default, only safe commands are permitted:

  • System information retrieval

  • Network configuration

  • Process management

  • Development tool interactions

Blocked Operations

Dangerous commands are always blocked, including:

  • Disk formatting

  • User management

  • System shutdown

  • Critical registry modifications

Configuration

Customize the server's behavior by specifying allowed commands or using configuration flags.

Example

# Run with default safe commands
node dist/index.js

# Run with specific allowed commands
node dist/index.js dir echo npm git

# Run in extended mode (use with caution)
node dist/index.js --allow-all

Contributing

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/amazing-feature)

  3. Commit your changes (git commit -m 'Add some amazing feature')

  4. Push to the branch (git push origin feature/amazing-feature)

  5. Open a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgements

  • Inspired by the Model Context Protocol specification

  • Developed with security and flexibility in mind

Version History

  • 0.3.0: Implemented all tools mentioned in README (system info, network info, process management, service info)

  • 0.2.0: Added project creation, expanded development tools

  • 0.1.0: Initial release with basic command execution capabilities

Support

For issues, questions, or suggestions, please open an issue on GitHub.

Available Tools

8 tools
execute_commandB

Execute a Windows command and return its output. Only commands in the allowed list can be executed. This tool should be used for running simple commands like 'dir', 'echo', etc.

Inputs: command (required), workingDir, timeout.

execute_powershellB

Execute a PowerShell script and return its output. This allows for more complex operations and script execution. PowerShell must be in the allowed commands list.

Inputs: script (required), workingDir, timeout.

get_network_infoB

Retrieve network configuration information including IP addresses, adapters, and DNS settings. Can be filtered to a specific interface.

Inputs: networkInterface.

get_scheduled_tasksB

Retrieve information about scheduled tasks on the system. Can query all tasks or get detailed status of a specific task.

Inputs: action, taskName.

get_service_infoB

Retrieve information about Windows services. Can query all services or get detailed status of a specific service.

Inputs: action, serviceName.

get_system_infoB

Retrieve system information including OS, hardware, and user details. Can provide basic or full details.

Inputs: detail.

list_allowed_commandsA

List all commands that are allowed to be executed by this server. This helps understand what operations are permitted.

Inputs: no named parameters.

list_running_processesA

List all running processes on the system. Can be filtered by providing an optional filter string that will match against process names.

Inputs: filter.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap: execute_command for basic commands, execute_powershell for scripts, get_network_info for networking, get_scheduled_tasks for tasks, get_service_info for services, get_system_info for system details, list_allowed_commands for permissions, and list_running_processes for processes. The descriptions clearly differentiate them, preventing misselection.

    Naming Consistency4/5

    The naming is mostly consistent with a verb_noun pattern (e.g., execute_command, get_network_info, list_allowed_commands), but there is a minor deviation with 'list_running_processes' using 'running' as an adjective instead of a simple noun like 'processes'. This slight inconsistency does not significantly hinder readability.

    Tool Count5/5

    With 8 tools, the count is well-scoped for a Windows command line server, covering essential operations like command execution, system queries, and permissions. Each tool earns its place without feeling excessive or insufficient for the domain.

    Completeness4/5

    The tool set provides good coverage for querying system state (e.g., network, services, tasks) and executing commands, but there are minor gaps such as no tools for managing or modifying these elements (e.g., starting/stopping services, creating tasks). Agents can work around this by using execute_powershell for such operations.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol server that provides programmatic access to the Windows terminal, enabling AI models to interact with the Windows command line through standardized tools for writing commands, reading output, and sending control signals.
      3
      20 npm
      MIT
    • A
      license
      B
      quality
      F
      maintenance
      A Model Context Protocol server that provides secure command-line access to Windows systems, allowing MCP clients like Claude Desktop to safely execute commands in PowerShell, CMD, and Git Bash shells with configurable security controls.
      9
      444 npm
      266
      MIT