desktop-control-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_AUTH_TOKEN | No | Authentication token required for the HTTP transport (src/http.js). The server refuses to start without it. Not needed for stdio mode. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| open_appA | Launch an application on the laptop. Known friendly names: chrome, google_chrome, edge, msedge, firefox, word, winword, excel, powerpoint, outlook, notepad, explorer, file_explorer, calculator, calc, paint, cmd, command_prompt, powershell, vscode, vs_code, spotify, task_manager. Any other value is tried as a literal .exe name. |
| close_appA | Force-close a running application by name. Known friendly names: chrome, google_chrome, edge, msedge, firefox, word, winword, excel, powerpoint, outlook, notepad, explorer, file_explorer, calculator, calc, paint, cmd, command_prompt, powershell, vscode, vs_code, spotify, task_manager. Critical system processes are refused. |
| list_running_appsA | List currently running applications that have a visible window. |
| open_pathA | Open a file or folder using the default Windows handler (Explorer for folders). Also accepts friendly names for standard folders: documents, desktop, downloads, pictures, music, videos, home. |
| close_folder_windowA | Close any open File Explorer window(s) currently showing the given folder path. |
| list_folder_contentsA | List the files and subfolders directly inside a folder (name, type, path, file size). Accepts a path or a friendly folder name like "documents". |
| open_path_withA | Open a file or folder using a SPECIFIC application (e.g. open a folder in VS Code, or a file in Chrome), instead of the OS default handler. Both path and app are required - if the user did not say which app to use, ask them before calling this tool rather than guessing. Use open_path instead if no specific app was requested. |
| find_duplicate_filesA | Recursively scan a folder for duplicate files (same content, by hash - not just same name) and report each duplicate group's file name, every location, and the count, plus total wasted disk space. Stops after 20000 files scanned on a very large tree and reports truncated: true if it hit that cap. |
| list_open_foldersA | List every currently open File Explorer folder window (path, title, hwnd). |
| close_all_folder_windowsA | Close every currently open File Explorer folder window. |
| focus_folder_windowA | Show and switch focus to an open File Explorer window for the given folder (un-minimizes if needed). |
| minimize_folder_windowA | Minimize an open File Explorer window for the given folder. |
| list_chrome_tabsA | List every open tab in Chrome (index + title). Operates on the first Chrome window if more than one is open. |
| open_chrome_tabA | Open a new Chrome tab, optionally navigating to a URL. |
| close_chrome_tabA | Close the open Chrome tab whose title matches the given text (case-insensitive substring match). |
| focus_chrome_tabA | Search open Chrome tabs by title and switch to the matching one, bringing Chrome to the front. |
| scroll_chrome_pageA | Scroll the active page in the first Chrome window up or down by simulating PageUp/PageDown key presses. |
| list_chrome_profilesA | List Chrome browser profiles configured on this machine (name + directory, marks which was last active). |
| open_chrome_profileA | Open a new Chrome window under a specific profile. Matches by profile name (e.g. "Work") or exact directory (e.g. "Profile 1") - use list_chrome_profiles to see what's available. Reliable when Chrome is not already running; if Chrome is already open, it verifies whether a genuinely new profile-bound window appeared and returns an error (rather than a false success) if Chrome just opened another window in the profile that was already active. |
| focus_appA | Show and switch focus to an app's window (un-minimizes it if needed). |
| maximize_appA | Maximize an app's window and bring it to front. |
| minimize_appC | Minimize an app's window. |
| restart_graphics_driverA | Fixes a frozen, stuck, black, or glitched screen WITHOUT closing apps or losing work. Sends the built-in Windows hotkey Ctrl+Shift+Win+B, which tells the graphics driver to reinitialize. Call this whenever the user says their system/screen is frozen, stuck, unresponsive, or visually glitching and a graphics reset is a reasonable first thing to try. The screen will flicker or go black for a couple of seconds - that is expected. |
| system_infoA | Report this machine's OS, CPU, RAM (total/used/free/%), and disk usage per drive. |
| shutdown_pcA | Schedule a full shutdown of this machine. Ends ALL remote control until someone is physically at the machine to turn it back on. Requires confirm: true. |
| restart_pcA | Schedule a restart of this machine. This server does NOT auto-start after reboot, so remote control ends the same way it would with shutdown_pc until someone starts it again locally. Requires confirm: true. |
| cancel_shutdownA | Abort a shutdown_pc or restart_pc that is still in its countdown. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/NasirSultan/desktop-control-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server