dreamhost-mcp
README.md
# dreamhost-mcp
MCP server for the [DreamHost API](https://help.dreamhost.com/hc/en-us/articles/217560167). Currently exposes DNS management and API metacommands.
## Authentication
DreamHost uses an **API key** (not OAuth). You generate it in the panel:
1. Open [DreamHost API Keys](https://panel.dreamhost.com/?tree=home.api)
2. Add a comment so you can identify the key later
3. Enable the commands you need (at minimum: `dns-list_records`, `dns-add_record`, `dns-remove_record`)
4. Click **Generate a new API Key now!**
5. Copy the key — it is shown once
Set it as an environment variable:
```bash
DREAMHOST_API_KEY=your_key_here
```
Optional:
```bash
DREAMHOST_ACCOUNT=123456 # account number from Manage Account page
```
### Test without your own account
DreamHost provides a read-only demo key with list-only access:
```
6SHU5P2HLDAYECUM
```
## Install
```bash
cd /home/chris/projects/dreamhost-mcp
npm install
npm run build
```
## Cursor MCP config
This server runs in WSL. Copy `cursor-mcp.example.json` into your Cursor MCP settings (`~/.cursor/mcp.json`):
```json
{
"mcpServers": {
"dreamhost-mcp": {
"command": "wsl",
"args": ["-e", "/home/chris/projects/dreamhost-mcp/scripts/cursor-mcp.sh"],
"env": {
"WSLENV": "DREAMHOST_API_KEY/u:DREAMHOST_ACCOUNT/u",
"DREAMHOST_API_KEY": "your_key_here"
}
}
}
}
```
## Tools
| Tool | DreamHost command | Description |
|------|-------------------|-------------|
| `dns_list_records` | `dns-list_records` | List all DNS records |
| `dns_add_record` | `dns-add_record` | Add a DNS record |
| `dns_remove_record` | `dns-remove_record` | Remove a DNS record |
| `api_list_accessible_commands` | `api-list_accessible_cmds` | Commands your key can run |
| `api_list_keys` | `api-list_keys` | List API keys (needs `*` permission) |
## API scope note
DreamHost has removed most legacy API commands (mail, users, databases, etc.). As of 2026, only **DNS** and **metacommands** remain in their public API.
## Links
- [API overview](https://help.dreamhost.com/hc/en-us/articles/217560167)
- [Connecting to the API](https://help.dreamhost.com/hc/en-us/articles/4407354972692)
- [DNS commands](https://help.dreamhost.com/hc/en-us/articles/217555707)
TDQS
A3.8/5.0
Scored across 5 tools
Disambiguation5/5
Each tool has a clearly distinct purpose: API key management and DNS record management are separate groups with no overlap.
Naming Consistency5/5
All tools follow a consistent 'prefix_verb_noun' pattern using snake_case, such as api_list_keys and dns_add_record.
Tool Count4/5
5 tools is a reasonable number for a focused set covering API keys and DNS, though the broader DreamHost domain could justify a few more.
Completeness3/5
The set covers core operations but lacks DNS record update and API key creation/deletion, which are notable gaps for typical management tasks.
Maintenance
ActivityStale
ResponsivenessNo issues