Kilnshell
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Kilnshellrun the tests and summarize any failures"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Benchmark
Tool call | Desktop Commander 0.3.1 | Kilnshell | Speed-up |
Run a command ( | 696.7 ms | 5.7 ms | 122x |
Run a command ( | 703.7 ms | 16.2 ms | 43x |
Read 1,000 lines of a 20k-line file | 41.9 ms | 3.2 ms | 13x |
Edit one line ( | 75.7 ms | 6.9 ms | 11x |
Write a file | 34.7 ms | 1.0 ms | 35x |
File info | 21.8 ms | 1.2 ms | 18x |
List a directory | 19.2 ms | 1.4 ms | 14x |
Read 10 files at once | 191.8 ms | 3.5 ms | 55x |
MacBook Pro (Apple Silicon), macOS, zsh with a typical developer profile (Homebrew and nvm), Node 25, median of 9 calls over real MCP stdio, telemetry turned off in the Desktop Commander config. The command speed-up depends on your shell profile: the heavier it is, the bigger the gain. On a bare Linux machine with an empty profile, commands are about 3x faster and file tools 3x to 6x faster.
Reproduce it on your machine:
git clone https://github.com/Soflutionltd/kilnshell && cd kilnshell
npm install
npm run bench # installs Desktop Commander 0.3.1 next to it, runs both, redraws the chartRelated MCP server: rvn
What changed, and why it is faster
Kilnshell started as a clone of Desktop Commander 0.3.1, profiled call by call.
The shell profile is read once, not on every command. Desktop Commander starts every command as
zsh -l -c ..., so a profile that loads nvm, pyenv or Homebrew costs 0.5 to 1 s per command. Kilnshell runs the login profile once at start-up, keeps the environment it produces (samePATH, same variables) and starts each command withzsh -c. SetDESKTOP_COMMANDER_LOGIN_ENV_CACHE=0to get a fresh login shell every time.No process is spawned behind your back on every call. Telemetry rebuilt its system report for each tool call, which ran
python3 --versionsynchronously and froze the server for 10 to 25 ms, even with telemetry turned off. System facts are now computed once.Line counting uses native string scanning. Reading, editing and inspecting a file counted its lines character by character; the new count gives identical results (checked on 200,000 random inputs) about 11x faster on large files.
No debug chatter. Every call used to push two to four
[FEEDBACK DEBUG]log notifications to the client.Fewer round trips. For an agent, each tool call costs a full round trip, often far more than the command itself. Kilnshell adds:
batch: several tool calls (commands, reads, edits, searches) in one request, results numbered in order;read_process_outputwithwait_for_exit: true: waits for the process to end and returns all its output at once, instead of polling;start_searchwithwait: true: returns every result in one call, instead ofstart_searchthenget_more_search_results;wait_for: waits until a port accepts connections, a file exists, a URL answers or a process exits, instead of sleep loops.
Works at full speed inside Claude Desktop. Claude Desktop runs extensions in its own Node; the environment is captured with
env -0, so the profile cache works there too, and Claude'sELECTRON_*variables never reach your commands.
What was removed
Upstream behaviour | Kilnshell |
Usage telemetry sent to the Desktop Commander servers | Removed. Kilnshell makes no network call of its own. |
Feature flags downloaded every 5 minutes from desktopcommander.app | Built-in defaults only ( |
| Removed. Tool results contain only the tool's output. |
Welcome page opened in the browser on first run | Removed. |
| Hidden. |
| Not available. |
Everything else is the same code: the same tools, the same arguments, the same config file (~/.claude-server-commander/config.json), so Kilnshell is a drop-in replacement. The new tools and options are additions only.
Install
Claude Desktop: download kilnshell.mcpb and double-click it (or Settings > Extensions > Advanced settings > Install Extension). The Kilnshell icon then shows next to every tool call.
Claude Code: /plugin install kilnshell --marketplace Soflutionltd/kilnshell
Also listed in the official MCP Registry as com.soflution/kilnshell.
Cursor or any MCP client:
{
"mcpServers": {
"kilnshell": {
"command": "npx",
"args": ["-y", "kilnshell@latest"]
}
}
}Or from a local clone, which starts faster than npx:
git clone https://github.com/Soflutionltd/kilnshell && cd kilnshell && npm install{ "mcpServers": { "kilnshell": { "command": "node", "args": ["/absolute/path/to/kilnshell/bin/supervise.cjs"] } } }Automatic updates
Every install below keeps itself up to date, without restarting Claude or Cursor. The MCP client talks to a small supervisor (bin/supervise.cjs) that stays connected while the server runs behind it. At start-up and every 6 hours it asks npm for the latest kilnshell, installs it in the background in ~/.soflution/mcp/kilnshell/, and switches over as soon as no request is in flight (the client is told the tool list may have changed). A version that fails to start is rolled back at once and never picked again on that machine. npm checks the integrity of every download, and releases are published from GitHub Actions with provenance.
The only network call is that version check to registry.npmjs.org; nothing about your machine or your use is sent. Turn it off with NO_UPDATE_NOTIFIER=1 (or SOFLUTION_AUTO_UPDATE=0). Started directly with node dist/..., kilnshell does not update itself and only mentions a newer version in its first tool result.
Tools
Area | Tools |
Speed |
|
Terminal |
|
Files |
|
Search |
|
Documents |
|
Config |
|
Security controls are unchanged: allowedDirectories, blockedCommands, file read and write line limits, all in the config file.
Develop
npm install
npm run build
npm test # the full upstream test suite (takes several minutes)
npm run bench # Kilnshell vs Desktop Commander on this machineCredits and license
Kilnshell is built on Desktop Commander by Eduard Ruzga and the Desktop Commander contributors, released under the MIT license. Their full history is kept in this repository. Kilnshell is an independent project, not affiliated with or endorsed by them.
MIT, © 2024-2025 Eduard Ruzga and Desktop Commander Contributors, © 2026 Soflution Ltd. See LICENSE.
En français
Kilnshell est un serveur MCP qui donne à un agent IA l'accès à votre machine : terminal, fichiers, recherche dans le code, processus, PDF, Excel et Word. C'est un clone de Desktop Commander, optimisé appel par appel : jusqu'à 100 fois plus rapide sur un Mac de développeur, sans aucune télémétrie, et sans texte publicitaire injecté dans les réponses données à l'agent. Il se remplace d'une ligne dans la configuration de Claude.
This server cannot be deployed
Maintenance
Related MCP Connectors
Connect AI assistants to your approved computer for files, commands, browser and desktop tasks.
11- ZionDeskOAuthapp.ziondesk
Connect ChatGPT, Claude, Cursor or VS Code to your Windows PC: files, terminal, browser, apps.
Connect AI assistants to authorized Windows and macOS devices for files, commands, and management.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables cloud AI agents to securely connect to a local Windows machine and execute tools such as system info, file operations, browser automation, and coding tasks through the Model Context Protocol.MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI clients to securely control and interact with a local Windows machine through 218 configurable tools for files, Git, processes, Windows UI, browser automation, WSL, Office, recovery, skills, and child MCP servers.7 npmMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to securely access local development capabilities such as files, Git, processes, browser control, Windows automation, WSL, and observability through MCP on Windows and macOS.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI clients to securely operate a local machine via MCP or REST, providing file read/write, Playwright browser automation, and shell/service administration.3MIT