Desktop Commander: A Free, Powerful Coding Assistant with Claude
I don't know about you, but in addition to Cursor and Windsurf, I've also purchased a subscription for Claude. I don't use Cursor for my regular day-to-day tasks, but I do use it for coding, and for that, I pay an extra $20 a month. It is the same with Windsurf since it is a little more expensive because it uses credits, and once those run out, you need to renew them. Cursor still gives you slow commands, which is nice. But beyond those prices, if you try open-source or free code editors or VS code extensions like Klein or Rue Code, you have to use your own API keys. That means you are always thinking about your API limits, and you are limited in what you can build. You also cannot use the latest and greatest models easily. For example, if you want to use the Claude 3.7 Sonnet model, it is pretty expensive. So you might end up choosing Claude 3.5 instead because it is cheaper.
Today, I have a bit of a solution for you. If you already have Claude, this could actually be really helpful. I am talking about a new MCP called Desktop Commander. It is completely free and honestly a very impressive invention. It is built on top of the file system MCP server and includes the extra tools that Cursor and Windsurf already offer. The best part is that you can use it with your Claude desktop subscription. In a sense, you get unlimited token access with no restrictions on what you can build.
Everything is laid out clearly. You just specify the file path, describe what you want it to code, and it starts working. I am going to walk you through exactly how it works, along with all the useful features and capabilities that make this such a powerful tool. If you want, it can even replace Cursor or Windsurf for you.
Installation
All right, so first, let me just guide you through the installation. It's relatively easy for this MCP server. You just have to paste the configuration into your Claude desktop app. You can also use this with other MCP clients like Cursor or Windsurf. But using this MCP server with them kind of defeats the whole purpose of having it in the first place. So I don't think there's any need for that.
You just need to copy the configuration. No additional parameters or arguments are required.
- Go into your Claude desktop app.
- Open the settings panel.
- Click on "Edit Configuration".
- Open it up and paste the configuration right there.
And that's basically it. And now you can see that if we go into "Tools" and then into the "Desktop Commander" MCP, all of these tools are available along with the models we can use here. Essentially, these are the same models that Cursor typically uses but without the extra cost.
If you want the coding IDE experience or prefer working in a visual code editor, you can open your code in both VS Code and Claude Desktop at the same time. Claude Desktop can act as your AI agent while you view and edit the code in VS Code.
Basic Usage
Now that everything has been added, here is the simple and basic usage you need to know to start building with this MCP server. You just need to give your initial prompt. Specify where you want to start working and set the path. In this case, the path points to my home directory, followed by the developer folder, where I wanted to create a new folder. And inside that folder, it should build a small website.
Let me show you how it works. It is going to ask for permission. I have already granted it, so it is not asking me right now. Just click "allow" whenever it prompts you. It makes things a lot smoother if you plan to keep using the server.
As you can see, it is using different tools, such as the write file
tool here. These are some of the built-in tools of the MCP server. Since it was built on top of the file system server, it inherited those tools and added some really solid coding tools as well.
Okay, it looks like the website has been created. Let's check it out.
Okay, you can see that I have my finder window open, and these are the files it created. First, it made a simple-website
folder, and inside that, it generated the files. I have opened up the website here, and you can see that it is a pretty basic site, just like I asked it to make.
This is the basic way to use Desktop Commander. You just specify the folder and tell it the objective, and it starts building right in that location.
Advanced Features and Tools
Now let me show you more of its capabilities. Let me show you some of the tools available in this MCP server that allow it to serve as a replacement for Cursor or Windsurf.
Configuration
First, it has its own configuration. I asked it to get the server configuration, and it ran the tool and returned the following details:
-
Blocked commands
-
default shell
-
allowed directories
-
telemetry
-
client ID
You can change these if you want. If you are running it locally, you can manage this yourself. But if you are using it as a remote MCP server, you will need to instruct the LLM to do it for you. I told it to change the shell to Zshell. And that is exactly what it did. It used the same command you would normally use and executed it successfully. You can modify any configuration value using the built-in set
tools. Even if you want to add something new, it simply uses those tools to apply the changes.
Terminal Access
Now, one of its biggest advantages over the original file system MCP server is that it supports terminal access. The file system MCP server allowed Claude Desktop to access your file system to create and manage files, but it did not have terminal capabilities, which limited its usefulness compared to tools like Cursor and Windsurf. That has changed now. This version includes terminal tools.
For example, it can execute commands directly. If you want to create a Next.js app, it can run the command without requiring you to open a terminal. It can also read output from terminal sessions, list sessions and processes, and terminate them as well. These features help turn it into a fully autonomous agent.
Of course, it still supports all the file system tools inherited from the earlier server.
Text Edit Tool
On top of that, there is a text edit tool designed for precise text replacements. If you want to replace a specific code block, you do not need to rewrite the entire file using the write file
tool. The edit
tool can surgically replace just the parts you want.
There is also a usage example provided. First, you specify the file you want to change, then follow the pattern they suggest, but honestly, that part is optional. You can simply tell it what to search for and what to replace it with, although the pattern might help the LLM understand better.
Example:
In the example, it is replacing a console.log
message with a new one. That is pretty much it.
Example Project: Building an Image Editor
Okay. So now I asked it to create a directory in the developer folder called image-editor
. Then I gave it what you could call a PRD, which is a detailed prompt to build an image editor using Next.js with FastAPI and Python on the back end. It is currently working, generating files, checking everything, and I have already opened the project in VS Code.
This could easily be your new replacement. You can open the code in VS Code, inspect the files, make manual edits if you want, and at the same time use Claude to code in Claude Desktop to build the app. Right now, it is generating a project summary and has already created the image editor web app. The full structure is laid out.
Now let's get it up and running and see what it built and whether it works as expected.
I have started up the app, and I also wanted to show you that it provided clear instructions on how to run it, which is pretty simple. It even added Docker support, which is a nice and efficient touch.
Now, this is the app it built. I will admit that the UI is quite basic, but that is probably because I did not ask it to use any specific components like ShadCN or anything more advanced.
Let's go ahead and choose a file. I will use this one. It is the thumbnail from my previous article. We have some basic settings here. We can crop, although the manual crop is not very useful at the moment. You can also make adjustments and apply effects. It looks like only grayscale, inversion, and blur are available.
Let's start with the horizontal flip. You can see the image flipped successfully. Now I will try converting it to grayscale, and it seems like that part is not working.
I just explained the issue in Claude Desktop that the edits were not applying consecutively, and I had to hit "apply" twice for them to take effect. It resolved the problem, and now the updates happen in real time, and multiple edits work back to back.
I uploaded the same image again, and now I can apply any type of flip, convert it to grayscale, apply hex, and even rotate it. All the edits are working smoothly.
In my opinion, this is a solid alternative to Cursor or Windsurf, especially if you already have a Claude Desktop or Claude subscription.
As always, thank you for reading, and I will see you in the next article.