MCP PC Control Server
Provides comprehensive PC control capabilities including file operations (read, write, edit, delete), directory management, file search, and shell command execution through the Model Context Protocol.
README
MCP PC Control Server
A powerful Model Context Protocol (MCP) server that provides comprehensive PC control capabilities including file operations, directory management, and command execution.
Features
File Operations
- read_file - Read complete file contents with proper encoding
- write_file - Create new files or overwrite existing ones
- edit_file - Make precise line-based edits with diff output
- delete_file - Remove files from the filesystem
- move_file - Move or rename files and directories
- get_file_info - Get detailed file metadata (size, timestamps, permissions)
Directory Operations
- create_directory - Create directories (supports nested creation)
- list_directory - List directory contents with detailed information
- delete_directory - Recursively delete directories and their contents
- search_files - Recursively search for files matching patterns
System Operations
- execute_command - Execute shell commands with optional working directory
Installation
- Clone or download this repository
- Install dependencies:
npm install
- Build the project:
npm run build
Usage
Running the Server
The server communicates via stdio and is designed to be used with MCP clients:
npm start
Configuration with Claude Desktop
Add this server to your Claude Desktop configuration file:
On macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"pc-control": {
"command": "node",
"args": ["/absolute/path/to/first_mcp/build/index.js"]
}
}
}
Replace /absolute/path/to/first_mcp with the actual absolute path to this project directory.
Example with npx (Alternative)
You can also run it directly with npx if published to npm:
{
"mcpServers": {
"pc-control": {
"command": "npx",
"args": ["-y", "mcp-pc-control-server"]
}
}
}
Available Tools
read_file
{
path: string // Path to the file to read
}
write_file
{
path: string, // Path where file should be written
content: string // Content to write
}
edit_file
{
path: string,
edits: [{
oldText: string, // Exact text to find
newText: string // Replacement text
}]
}
create_directory
{
path: string // Directory path to create
}
list_directory
{
path: string // Directory path to list
}
delete_file
{
path: string // File path to delete
}
delete_directory
{
path: string // Directory path to delete recursively
}
move_file
{
source: string, // Current path
destination: string // New path
}
get_file_info
{
path: string // Path to get info about
}
execute_command
{
command: string, // Shell command to execute
workingDirectory?: string // Optional working directory
}
search_files
{
path: string, // Directory to search in
pattern: string // Pattern to match (supports * and **)
}
Security Considerations
WARNING: This server provides powerful filesystem and command execution capabilities.
- File Access: Can read, write, and delete any files the process has permissions for
- Command Execution: Can execute arbitrary shell commands
- No Sandboxing: Operations are not sandboxed or restricted
Recommendations:
- Only use with trusted MCP clients
- Run with minimal necessary permissions
- Be cautious with the
execute_commandtool - Consider implementing additional access controls for production use
- Review all operations in sensitive environments
Development
Build
npm run build
Watch Mode
npm run watch
Project Structure
.
├── src/
│ └── index.ts # Main server implementation
├── build/ # Compiled JavaScript (generated)
├── package.json
├── tsconfig.json
└── README.md
License
MIT
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
Troubleshooting
Server not appearing in Claude Desktop
- Check that the path in
claude_desktop_config.jsonis absolute and correct - Verify the build directory exists and contains
index.js - Restart Claude Desktop after configuration changes
- Check Claude Desktop logs for errors
Permission Errors
- Ensure the server process has necessary file system permissions
- On Unix systems, check file/directory permissions with
ls -la - Run with appropriate user privileges for the operations you need
Command Execution Issues
- Verify the working directory exists and is accessible
- Check that shell commands are appropriate for your operating system
- Some commands may require specific environment variables
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
E2B
Using MCP to run code via e2b.