Skip to main content
Glama
XD3an
by XD3an
README.md
# mcp-builder

A Python-based MCP server to install other MCP servers. 

The purpose of this server is to provide a complete, user-friendly, and cross-platform way to install and configure MCP servers. 

<a href="https://glama.ai/mcp/servers/@XD3an/mcp-builder">
  <img width="380" height="200" src="https://glama.ai/mcp/servers/@XD3an/mcp-builder/badge" alt="Builder MCP server" />
</a>

#### TODO

- [ ] Support for more MCP Clients (e.g. Cursor, Windsurf, ...)
- [ ] Support for more MCP server types and sources (e.g., Node.js, Java, etc.)
- [ ] Support recovery mechanism for failed installations
- ...


## Features

- **Package Repository Installation**: Install MCP servers from PyPI or npm packages
- **Local Installation**: Install MCP servers from local directories
- **Configuration Management**: Configure environment variables and arguments for installed servers
- **Automatic Detection**: Automatically detect the type of MCP server (Node.js or Python)
- **Cross-Platform Support**: Works on Windows, macOS, and Linux

## Requirements

- Python 3.10 or higher
- pip (for Python packages)
- Node.js and npm (optional, for JavaScript packages)

## Installation

### Install from Source

```bash
git clone https://github.com/xd3an/mcp-builder.git
cd mcp-builder
pip install -e .
```

## Usage

### Running Directly

After installation, you can run the MCP Builder directly:

```bash
# Using the entry point
mcpbuilder

# Or as a module
python -m mcp_builder.server
```

### Development Mode

For development and testing, you can use the MCP CLI tools:

```bash
# Install MCP CLI tools
pip install "mcp[cli]"

# Run in development mode
mcp dev path/to/mcp_builder/server.py

# npx @modelcontextprotocol/inspector
npx @modelcontextprotocol/inspector python -m mcp_builder.server
```

### MCP Client Integration

#### Claude Desktop Integration

To use MCP Builder with Claude Desktop, add it to your `claude_desktop_config.json` file:

```json
{
  "mcpServers": {
    "mcp-builder": {
      "command": "python",
      "args": [
        "-m",
        "mcp_builder.server"
      ]
    }
  }
}
```

The configuration file is located at:
- Windows: `%APPDATA%\Claude\claude_desktop_config.json`
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
- Linux: `~/.config/Claude/claude_desktop_config.json`

#### Example Commands

Once integrated with Claude Desktop, you can ask Claude to:

> read https://github.com/microsoft/playwright-mcp
help me install playwright-mcp in my claude config

![demo image](./assets/demo.png)

## How It Works

MCP Builder modifies the Claude Desktop configuration file to register MCP servers. It supports:

1. **Node.js Packages**: Installs using `npx` and configures Claude to use them
2. **Python Packages**: Configures Claude to use Python modules
3. **Local Repositories**: Installs dependencies and configures Claude to use local code

TDQS

B3.1/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: one installs from a local directory, while the other installs from a package repository via pip or npm. There is no overlap in functionality, making it easy for an agent to choose the correct tool based on the installation source.

Naming Consistency5/5

Both tools follow a consistent verb_noun pattern with 'install' as the verb and descriptive nouns ('local_mcp_server', 'repo_mcp_server'). The naming is predictable and readable, with no deviations in style or convention.

Tool Count2/5

With only 2 tools, the server feels thin for a 'Builder' purpose, which might imply broader capabilities like configuration, management, or testing of MCP servers. The count is too low for the apparent scope, limiting functionality and potentially causing gaps in agent workflows.

Completeness2/5

The tool surface is severely incomplete for a 'Builder' domain, as it only covers installation from two sources. Missing are obvious operations like uninstalling, listing installed servers, configuring servers, or building/testing MCP projects, which are essential for comprehensive server management.

Maintenance

ActivityInactive
ResponsivenessNo issues