The Anaconda Assistant MCP (Model Context Protocol) plugin
pip install -i https://pypi.anaconda.org/anaconda-cloud/simple anaconda-assistant-mcp
pip install -i https://pypi.anaconda.org/anaconda-cloud/label/dev/simple anaconda-assistant-mcp
conda install anaconda-cloud::anaconda-assistant-mcp
conda install anaconda-cloud/label/dev::anaconda-assistant-mcp
The Conda MCPServer provides a programmatic and natural language interface to manage conda environments, packages, and related operations. It is designed for integration with AI assistants (such as Cursor, Claude, and VSCode) to enable seamless, conversational control over conda workflows.
The MCPServer exposes a set of core conda management features, accessible via API or natural language prompts (when integrated with an AI assistant): - Create a new environment - List all environments - Show environment details - Install, update, or remove packages - Search for available packages - Remove environments
conda install -n base -c anaconda-cloud -c conda-forge anaconda-assistant-mcp
conda mcp serve
To allow AI clients to connect to your MCPServer, you must create a configuration file with the correct name, location, and contents. Use the exact instructions below for your client.
mcp.json
~/.cursor/mcp.json
{
"mcpServers": {
"conda-mcp-dev": {
"command": "/path/to/conda",
"args": ["mcp", "serve"]
}
}
}
command
field should point to the full path of your conda executable inside your MCP environment.args
array should contain the arguments to start the MCP server (typically ["mcp", "serve"]
).How to find your conda path:
conda info --base
Then append the OS-specific path:
- Unix/macOS/Linux: $(conda info --base)/bin/conda
- Windows: $(conda info --base)/Scripts/conda.exe
or $(conda info --base)\Scripts\conda.exe
Common conda locations:
Anaconda installations:
- macOS: /opt/anaconda3/bin/conda
or ~/anaconda3/bin/conda
- Linux: ~/anaconda3/bin/conda
or /home/username/anaconda3/bin/conda
- Windows: C:\Users\username\Anaconda3\Scripts\conda.exe
Miniconda installations:
- macOS: /opt/miniconda3/bin/conda
or ~/miniconda3/bin/conda
- Linux: ~/miniconda3/bin/conda
- Windows: C:\Users\username\Miniconda3\Scripts\conda.exe
How to create or edit the file:
mkdir -p ~/.cursor
vim ~/.cursor/mcp.json
Paste the JSON above, save, and exit.
To see code changes reflected in Cursor, go to the top right gear icon ⚙️, select "Tools & Integrations" in the left menu, then toggle the name of the MCP server on. Every time you make changes to the code, toggle the server off and on again so the changes are picked up.
claude_desktop_config.json
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"conda-mcp-dev": {
"command": "/path/to/conda",
"args": ["mcp", "serve"]
}
}
}
command
field should point to the full path of your conda executable inside your MCP environment.args
array should contain the arguments to start the MCP server (typically ["mcp", "serve"]
).How to edit:
vim ~/Library/Application\ Support/Claude/claude_desktop_config.json
Paste or update the JSON above, save, and exit.
To see if the server is running correctly, click the “Search and tools” button in the main Claude menu. If the server is running, you will see “conda-mcp-dev” as one of the options. Try typing “mcp list packages” to see if the server/tools are working as expected.
mcp.json
~/.vscode/mcp.json
<your-project-root>/mcp.json
{
"mcpServers": {
"conda-mcp-dev": {
"command": "/path/to/conda",
"args": ["mcp", "serve"]
}
}
}
command
field should point to the full path of your conda executable inside your MCP environment.args
array should contain the arguments to start the MCP server (typically ["mcp", "serve"]
).How to create or edit the file: - For a global config:
mkdir -p ~/.vscode
vim ~/.vscode/mcp.json
vim <your-project-root>/mcp.json
Paste the JSON content above, save, and exit.
How to use in VSCode: If you are using a VSCode extension that supports external tool integration (such as a code assistant or LLM plugin), open the extension’s settings and set the path to your mcp.json file, or paste the JSON contents into the appropriate configuration field. Restart VSCode after making changes to ensure the extension loads the new configuration.
| Client | File Path Example | Example JSON Content |
|----------|---------------------------------------------------------------------|---------------------|
| Cursor | ~/.cursor/mcp.json
| { "mcpServers": { "conda-mcp-dev": { "command": "...", "args": ["mcp", "serve"] } } }
|
| Claude | ~/Library/Application Support/Claude/claude_desktop_config.json
| { "mcpServers": { "conda-mcp-dev": { "command": "...", "args": ["mcp", "serve"] } } }
|
| VSCode | ~/.vscode/mcp.json
or <your-project-root>/mcp.json
| { "mcpServers": { "conda-mcp-dev": { "command": "...", "args": ["mcp", "serve"] } } }
|
After setup, you can use natural language prompts to trigger conda operations via your AI assistant. See the "Capabilities" section above for examples.
Tip: When using an AI assistant, you can often prefix your prompt with “In conda,” or “Using the conda server,” to ensure the request is routed to the MCPServer.
Ensure you have conda
installed.
Then run:
make setup
To run test commands, you don't want to run conda mcp serve
since it'll pick up the version of conda on your system. You want the conda install for this repo so you can run the plugin. To do this, you run:
cd libs/anaconda-assistant-mcp
./env/bin/conda mcp serve
On Windows, you'll do:
.\env\Scripts\conda mcp serve
This will run the MCP server. Use it for sanity checking. To actually test fully, you'll want to add them MCP server into Claude Desktop or Cursor.
The MCP config file is in your home directory at:
~/.cursor/mcp.json
Add this to your JSON under mcpServers
:
{
"mcpServers": {
"conda-mcp-dev": {
"command": "<PATH_TO_SDK_REPO>/libs/anaconda-assistant-mcp/env/bin/conda",
"args": ["mcp", "serve"]
}
}
}
To see code changes reflected in Cursor, go to the top right gear icon ⚙️ and click it, select "Tools & Integrations" in the left menu, then toggle the name of the MCP server on. In our case, that's "conda-mcp-dev", but it can be any string you choose. Every time you make changes to the code, you should toggle the sever off and on again so the changes are picked up.
Now, to test a feature. Open a new chat, remove all the context and type "mcp list packages". This should prompt you with the list_packages
MCP tool. Press ⌘⏎ to run the tool.
Claude settings are the same, just under a different directory:
'~/Library/Application Support/Claude/claude_desktop_config.json'
{
"mcpServers": {
"conda-mcp-dev": {
"command": "<PATH_TO_SDK_REPO>/libs/anaconda-assistant-mcp/env/bin/conda",
"args": ["mcp", "serve"]
}
}
}
Seeting changes reflected in Claude is more difficult than in Cursor. The most reliable way is to restart the Claude Desktop app.
Try using it by typing "mcp list packages". You should see it prompt you. After accepting, it should run the tool.
the name conda-mcp-dev
can be any string. The purpose of it is to help you identify the MCP in the respective MCP host's UI whether it be Claude or Cursor.
Make sure to not enable MCP servers / tools with overlapping goals. Sometimes your MCP server won't get called because another MCP server will pick up the request.
make test
NOTE: this may not run locally
make tox