PC Commander
Allows sending notifications to Discord through configurable notify/webhook tools.
Provides a Git tool in the developer-agent toolset for running Git commands as part of codebase workflows.
Enables control of remote Linux VPS machines over SSH, including running commands and copying files via SCP.
Supports using a local Ollama model as an OpenAI-compatible LLM provider for the autonomous agent engine.
Supports using an OpenAI API key as the LLM provider for the autonomous agent engine's plan-act-check loop.
Allows sending notifications to Telegram through configurable notify tools.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Ask ChatGPT to do something on your computer, and it actually does it — after you tap Approve.
👋 What is this, in plain words?
You know how ChatGPT can tell you how to do things on your computer, but can't actually do them? This fixes that.
PC Commander is like a remote control for your PC that ChatGPT can use — except you're always holding the "Approve" button.
Ask ChatGPT "is Python installed on my computer?" and instead of guessing, it checks your PC and tells you the real answer. Ask it to "clean up my Downloads folder" and it does — right after a little box pops up on your screen and you click Approve.
Nothing ever happens on your computer unless you allow it.
Related MCP server: Unlimited Agent
💡 Things you can ask it
Once it's set up, just chat normally. For example:
"Is Python (or Node, or Git) installed on my PC?"
"What's taking up all the space on my hard drive?"
"Clean up my Downloads folder — delete anything older than a month."
"What's my computer's IP address and Windows version?"
"Make a folder on my Desktop called Taxes and move all my PDFs into it."
"Is my laptop running hot? What's using the most memory right now?"
"What's on my screen right now?" — it can actually take a screenshot and look.
It can do basically anything you could type into your PC yourself — you just approve it first.
🧰 What it can do
PC Commander gives ChatGPT a real toolbox, not just a command line. Each tool is colour‑coded by how careful it is:
🟢 reads (runs instantly, never changes anything) · 🟡 changes files (asks first) · 🔵 runs / launches (asks first)
Tool | What it does | |
| Read any text file — big files come one page at a time (12,000 characters, with a "next offset" hint) so ChatGPT never loses the middle | 🟢 |
| Read the next page of a long | 🟢 |
| List what's in a folder | 🟢 |
| Find files by name (e.g. all your PDFs) | 🟢 |
| Search inside files for text | 🟢 |
| OS, CPU, RAM, disk space, uptime | 🟢 |
| What's running / using memory | 🟢 |
| Create or overwrite a file | 🟡 |
| Find‑and‑replace inside a file | 🟡 |
| Make / move / copy / delete files & folders | 🟡 |
| Run any PowerShell command (anything above + more) | 🔵 |
| Open a file, folder, app, or website | 🔵 |
| Stop a frozen or unwanted program | 🔵 |
| Capture the screen so ChatGPT can see it | 🔵 |
| Run long tasks in the background (builds, downloads, servers) and check progress | 🔵🟢 |
| Control the mouse & keyboard — operate any app, not just the terminal | 🔵 |
| Computer use — read an app's window as a screenshot plus a numbered list of its buttons, fields and menus, then act on a control by its number. Works on apps in the background | 🟢🔵 |
| Windows & apps — list open windows; focus, minimize, maximize, restore, move/resize or close one; start any app by name (Store apps too) | 🟢🔵 |
By default, 🟢 reads happen instantly (they're harmless) while 🟡/🔵 actions wait for your Approve — so ChatGPT can freely look around, but never change anything without your okay. Switch to Always allow on the settings page for fully hands‑off.
🖱️ Computer use (recommended for apps):
list_apps→app_state→app_click/app_set_value/app_key→app_stateagain. ChatGPT clicks a button by its name and number instead of guessing pixel positions, which is far more reliable, and the app can stay in the background. Powered by the open-source open-computer-use engine (MIT): install it once withnpm i -g open-computer-use. Long control lists are paged like long files.
👀 See-and-click:
screenshot+move_mouse/mouse_click/type_textlet ChatGPT look at your screen and then operate apps — open a program, click buttons, fill a form. (Mouse/keyboard control is Windows‑only for now.)
🌍 Control your other machines too (VPS · remote Windows · RDP)
PC Commander isn't limited to the PC it runs on. Tell it about your servers once, then command them all from the same chat.
Tool | What it does | |
| Save your servers by nickname (uses SSH keys — no passwords stored) | 🟡🟢 |
| Run commands on a Linux VPS over SSH — install, deploy, restart services, read logs | 🔵 |
| Upload/download files to/from a server (SCP) | 🔵 |
| Run PowerShell on a remote Windows machine | 🔵 |
| Open a Remote Desktop session to a Windows server | 🔵 |
Example:
"Save my server: nickname london, host 203.0.113.9, user root, key
~/.ssh/id_ed25519." "On london, how much disk is free and is nginx running?" "Deploy the latest build to london and restart the service."
💡 For SSH, set up key login first (ssh-copy-id user@host) — it's safer than passwords and lets the agent connect without prompts. For winrm_run, the remote Windows box needs PowerShell Remoting enabled. For rdp_connect, the remote desktop window opens on your PC for you to finish signing in.
🤖 Agent superpowers (memory, automation, reach)
Beyond doing things right now, PC Commander can remember, run on a schedule, reach the internet, and tell you when it's done.
Area | Tools | What it unlocks |
🧠 Memory |
| Remembers your setup, preferences, and projects across chats — it gets to know your world. |
⏰ Scheduler |
| Runs things on a repeat ("every morning, back up Documents and ping me") — even when you're not chatting. |
🔔 Notifications |
| Pings you on Telegram / Discord / any webhook — e.g. when a long job finishes. |
🌐 Internet |
| Call any web API, hit webhooks, download files. |
⏳ Long-running jobs |
| Background tasks (builds, downloads) that keep running, keep the PC awake, and notify you when done. |
🗄️ Survive-anything jobs |
| Run hours-long tasks on a server (via |
🚀 Fleet |
| Run one command across all your servers at once. |
📋 Extras |
| Clipboard access, pin the PC awake, check screen resolution. |
Examples:
"Remember that my main project is at C:\dev\app and I deploy to the london server." "Every day at startup, check for Windows updates and Telegram me the result." "Download the latest release from this URL, then on london run the migration as a remote job and tell me when it finishes."
🧠 Full agent mode
PC Commander isn't just a pile of tools — it can plan, edit code, drive a browser, and even run itself.
Area | Tools | What it unlocks |
🤯 Autonomous engine |
| Give it a goal and it plans → acts → checks → repeats on its own, using all its tools, then reports back. Powered by your own LLM key (OpenAI / Groq / local Ollama / LM Studio — anything OpenAI-compatible). |
🧑🤝🧑 Subagents |
| Run several autonomous workers in parallel. ChatGPT (single-threaded in Chat) dispatches tasks; each subagent is its own plan→act→observe loop with a scoped toolset, running in the background. |
👨💻 Developer agent |
| Works like a coding agent: keeps a to-do list, edits many files atomically, scaffolds projects, runs git, maps a codebase. |
🌍 Web agent |
| Drives a real browser (your installed Chrome/Edge) — log in, click, fill forms, scrape, operate web apps. Run |
🛡️ Safety net |
| Deletes go to the Recycle Bin; every change is snapshotted (undo anytime); dry-run previews without doing; secrets are encrypted and used via |
🎛️ Control center | the settings page | A live dashboard: mode, dry-run, every capability, running jobs, schedules, servers, memory, and recent activity at a glance. |
Example — hand it a whole job:
"Autonomous task: create a Python project in C:\dev\scraper, write a script that pulls the top Hacker News titles, run it, save the output to titles.txt, and tell me when it's done."
With the autonomous engine configured, it'll plan the steps, create the files, run it, fix any errors, and report back — on its own.
⚠️ The autonomous engine acts without asking between steps (you approve launching it). Catastrophic actions are still blocked by the safety guard, and sensitive ones are skipped. Keep dry-run on while you're learning to trust it.
🧑🤝🧑 Subagents — a team that works in parallel
ChatGPT in the Chat tab is single-threaded — it can't fan work out on its own. Subagents fix that: ChatGPT dispatches tasks and PC Commander runs the workers. Each spawn_subagent starts an autonomous worker in the background (its own plan→act→observe loop) and returns immediately, so you can spawn several and they run in parallel. Each gets a scoped toolset via a role — coder (edit + run), tester (read + run, no writes), researcher (read-only + web), or full — or an explicit tool allow-list. Poll with subagent_status / list_subagents, collect with subagent_result, stop one with stop_subagent.
"Spawn three subagents: one to add input validation to the auth module (coder), one to write tests for the payments module (coder), and one to audit the repo for TODOs (researcher). Tell me when each finishes."
Subagents use the same engine as agent_task, so configure_agent must be set first. They're guard-checked (catastrophic actions blocked, sensitive ones skipped), the PC is kept awake while any run, and you get a notification when each finishes.
✅ What you'll need
🖥️ A PC to control | Windows is fully supported. macOS & Linux work too for the core (shell, files, system info, background jobs, SSH) — the screen/mouse tools are Windows‑only for now. You can talk to it from any device (phone, Mac, web). |
⏱️ About 10 minutes | One-time setup. After that it runs by itself. |
💬 A ChatGPT account | One that lets you add "connectors" (a connector is just a plug-in that lets ChatGPT talk to your PC). |
🌐 A website address you own (optional) | If you have one (like |
Never set anything like this up before? That's fine. Every step below is copy‑paste. You don't need to understand the commands — just follow along.
🚀 Setting it up
How to open "PowerShell" (you'll need it below): press the Start button, type PowerShell, and press Enter. A blue window opens. That's where you paste the commands.
Step 1 — Get the files onto your PC
In PowerShell, paste this and press Enter:
git clone https://github.com/Lucifer-xD/pc-commander.git
cd pc-commander💡 If it says "git is not recognized", install Git first (click Next through the installer), then try again. You'll also need Node.js — download the big green "LTS" button and install it.
Step 2 — Run the installer
Paste this:
powershell -ExecutionPolicy Bypass -File scripts\install.ps1This sets everything up and makes it start automatically every time you turn your PC on. When it finishes, it prints a link ending in a long code — that long code is your private key. Keep that window open for the next step.
Step 3 — Get your link
ChatGPT needs a web address to reach your PC. Pick one:
🅰️ Just trying it out?
npm run quickGives you a temporary link right away. Good for a first test. (The link changes each time, so it's not for everyday use.)
🅱️ Want it permanent? (recommended)
powershell -ExecutionPolicy Bypass -File scripts\setup-domain.ps1 -Hostname pc.yourdomain.comUses a website address you own to make a permanent link that never changes. A browser opens once to sign in — just follow the prompts.
Either way, you'll get a link that looks like this — copy it, you'll paste it into ChatGPT next:
https://pc.yourdomain.com/mcp?key=your-long-private-codeStep 4 — Connect it to ChatGPT
Go to chatgpt.com → click your name → Settings → Connectors.
Click Add custom connector (you may first need to turn on Advanced → Developer mode).
Fill in the boxes:
Box
What to put
Name
PC CommanderDescription
Securely run things on my own Windows PC. I approve each action.URL
the link you copied in Step 3
Authentication
choose No authentication (your key is already in the link)
Icon
pick the file
assets/icon-connector.pngfrom this folderTick "I trust this application" and click Create.
Start a new chat, click the ➕ near the message box, and make sure PC Commander is switched on.
🎉 Try it: type "using PC Commander, what's my Windows version?" — a box pops up on your PC, you click Approve, and the answer appears in the chat.
Step 5 — Make ChatGPT use it automatically
So you don't have to say "use PC Commander" every time, give ChatGPT a standing instruction.
Go to Settings → Personalization → Custom Instructions, and in the box that says "How would you like ChatGPT to respond?", paste this:
I have a connector called PC Commander that runs things on my own Windows PC.
Whenever I ask about my PC / computer / laptop — checking if something is
installed, running something, finding or tidying files, system info, and so on
— use PC Commander directly and tell me the result, right here in the chat.
Don't tell me to do it myself, and don't switch me to "Work" or "Agent" mode —
stay in the normal chat. Every action already asks me to approve it on my PC.📱 Using the ChatGPT desktop app too? Do the same thing there under Settings → Personalization → Custom instructions. The app and the website remember these separately, so paste it in both.
That's it — you're done. From now on, just ask ChatGPT about your computer and it'll handle it.
♻️ It stays alive by itself (reboot · sleep · crash)
You never have to start anything by hand. The installer sets up three things that run quietly in the background with no window and no admin rights:
Piece | What it does |
Server | the connector itself, on |
Tunnel | the Cloudflare link that gives ChatGPT a public URL (only if you set up a permanent domain) |
Watchdog | a tiny loop that checks the other two every 30 seconds and restarts whatever stopped answering |
So if any of these happens, it fixes itself within about half a minute — you don't have to touch it:
🔌 You restart your PC → everything comes back at logon.
😴 Your laptop sleeps and wakes → the watchdog notices the public link went quiet and re-dials the tunnel. (This is the classic "it worked, then ChatGPT suddenly couldn't reach my PC" problem — handled.)
💥 The server or tunnel crashes → the watchdog restarts it.
It's careful about it, too: it only ever restarts the tunnel when the public URL has genuinely gone dark (not when a page just returns an error), and it never touches other cloudflared tunnels you may be running for something else.
Want to see what it's been doing? Open scripts\autostart\watchdog.log. Want to turn auto-start off? Press Start, type shell:startup, Enter, and delete the PC Commander shortcuts.
🎚️ How careful should it be?
You decide how much it asks before doing things. Open the settings page (the installer put a shortcut on your Desktop, or use the http://127.0.0.1:8787/... link from Step 2):
Ask each time (safest, recommended) — a box pops up for every single action and waits for your Approve. Nothing runs until you click.
Always allow (hands-off) — things run instantly with no pop-up. Faster, but it will do whatever ChatGPT asks. Only use this when you're watching.
You can switch between them anytime, and it takes effect on the very next request.
There are two separate "are you sure?" checks, and that's on purpose:
Your PC's pop-up (the one above) — the main safety net. Always protects you.
ChatGPT's own prompt — the first time, ChatGPT may ask "allow PC Commander to run this?". Choose Always allow there to stop being asked. (On the desktop app this lives under Settings → Personalization → Permissions → Custom rules.)
Want zero interruptions? Set both to allow. Want maximum safety? Leave both on ask.
🔐 Is this safe?
Yes — and here's why, in plain terms:
A safety guard that can't be overridden. Even in "Always allow", PC Commander refuses catastrophic actions (wiping a drive, deleting Windows,
rm -rf /) and forces a confirmation for sensitive ones (shutdown, user accounts, firewall). It won't touch system folders. You can tighten it further indata/guard.json.A runaway-loop brake. If the agent tries more than ~120 actions a minute, it's throttled — so a bad loop can't run wild.
You approve everything. Even if someone somehow got your link, nothing would run on your PC until you clicked Approve on your own screen.
Only you have the link. It contains a long secret code. Don't share it or post it anywhere, and you're the only one who can get in.
It's your computer, your rules. It only listens to your private link — it's not open to the internet, and there are no doors left unlocked.
Everything is written down. Every request and your decision is saved in a log file on your PC, so you can always see what happened.
Think of "Always allow" like handing someone your keyboard — only turn it on when you're paying attention. The rest of the time, keep "Ask each time" on.
❓ It's not working — help
What you're seeing | What to do |
ChatGPT says "handoff was declined" | You didn't click Approve in time (it waits about a minute). Try again and click it, or switch to Always allow. |
It keeps saying "Continue in Work" | Make sure PC Commander is switched on in the ➕ menu, add the Step 5 instruction, and click "Stay in Chat". Tip: starting your message with @PC Commander forces it. |
"git is not recognized" / "node is not recognized" | |
Nothing works after I restarted my PC | It should start on its own. If not, press Start, type |
I want a new secret code | Delete the file |
Still stuck? Open an issue and describe what happened.
PC Commander is a small Model Context Protocol server exposing one tool, run_command, over streamable HTTP. The server binds to 127.0.0.1 only; a Cloudflare named tunnel provides the public HTTPS hostname. Requests carry a token (?key= or Bearer); each command passes an approval gate (a topmost WinForms dialog) unless mode is always.
src/
server.mjs MCP server; registers all tools; risk+guard+rate-limit; /health, settings API
tools.mjs core tools (files, search, system, screenshot) — cross-platform
remote.mjs SSH / SCP / WinRM / RDP, fan-out, persistent remote jobs, registry
jobs.mjs durable background jobs (keep-awake, notify-on-done)
scheduler.mjs recurring/one-shot scheduled tasks (persisted, re-armed on start)
memory.mjs long-term memory (remember/recall/forget)
web.mjs http_request / download_file
notify.mjs Telegram / Discord / webhook notifications
extra.mjs clipboard, keep_awake, screen_size
keepawake.mjs stops the PC sleeping while jobs run
gui.mjs/.ps1 mouse & keyboard control (Windows)
computer.mjs computer use by accessibility (bridge to the open-computer-use engine) + window tools
windows.ps1 list / focus / minimize / maximize / move / close windows, launch apps (Windows)
guard.mjs safety guard: block catastrophic, confirm sensitive, protect system dirs
shell.mjs per-OS shell selection (PowerShell / sh)
exec.mjs runs a command in the OS shell, captures stdout/stderr/exit code
approve.mjs/.ps1 the topmost Approve/Deny dialog with a countdown
screenshot.ps1 screen capture (Windows)
config.mjs defaults + generates data/token.txt
log.mjs JSONL logging
run.mjs quick-start launcher (server + temporary tunnel)
settings.html the Ask / Always-allow page + capability list
scripts/
install.ps1 deps + key + auto-start the server at logon
setup-domain.ps1 named Cloudflare tunnel + permanent URL + auto-start the tunnel
rotate-key.ps1 generate a new key and restart
autostart/*.vbs windowless launchers used by the Startup shortcuts
cloudflared/
pc-commands.example.yml template (your real one is generated & gitignored)Config knobs live in data/config.json (maxPerMinute, timeouts, autoApprove) and data/guard.json (enabled, protectedPaths, allowedRoots, extra block/confirm patterns).
Run npm start to launch just the server, npm run quick for server + temporary tunnel. PRs welcome.
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect ChatGPT, Claude, Cursor or VS Code to your Windows PC: files, terminal, browser, apps.
Connect AI assistants to your approved computer for files, commands, browser and desktop tasks.
Use your Mac, Windows or Linux computer from ChatGPT, Claude or Codex: files, commands, documents.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables ChatGPT to securely control a Windows PC via a local agent, supporting file operations, Chrome automation, and allowlisted apps with audit logging and approval workflows.MIT
- AlicenseAqualityBmaintenanceEnables a private ChatGPT app to remotely control a Windows PC through file operations, PowerShell, screenshots, mouse and keyboard input, clipboard, and Chrome browser automation.212MIT
- AlicenseNot gradedqualityAmaintenanceEnables ChatGPT to access approved local Windows folders, run commands, control the desktop, and manage session history through a permission-bounded MCP server.5,141MIT
- AlicenseNot gradedqualityAmaintenanceEnables ChatGPT to securely access local files, shell commands, processes, Skills, and external MCP servers through a controlled local bridge with lock/unlock permissions and a Windows desktop control center.6 npmMIT