Public Access
95880d3e44
Platform: mokocli CI / Gate 2: Unit Tests (8.1) (pull_request) Blocked by required conditions
Platform: mokocli CI / Gate 2: Unit Tests (8.2) (pull_request) Blocked by required conditions
Platform: mokocli CI / Gate 2: Unit Tests (8.3) (pull_request) Blocked by required conditions
Platform: mokocli CI / Gate 3: Self-Health Check (pull_request) Blocked by required conditions
Platform: mokocli CI / Gate 4: Governance (pull_request) Blocked by required conditions
Platform: mokocli CI / Gate 5: Template Integrity (pull_request) Blocked by required conditions
Platform: mokocli CI / CI Summary (pull_request) Blocked by required conditions
Universal: PR Check / Build RC Package (pull_request) Blocked by required conditions
Universal: PR Check / Report Issues (pull_request) Blocked by required conditions
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Universal: PR Check / Validate PR (pull_request) Failing after 5s
Universal: PR Check / Secret Scan (pull_request) Successful in 7s
RC Revert / Rename rc/ back to dev/ (pull_request) Has been skipped
Branch Cleanup / Delete merged branch (pull_request) Failing after 1s
Universal: Pre-Release / Build Pre-Release (${{ inputs.stability || github.ref_name }}) (push) Successful in 14s
Platform: mokocli CI / Gate 1: Code Quality (pull_request) Failing after 53s
390 files: templates, workflows, MCP servers, CLI tools, lib, deploy, validate, wrappers, configs, docs. Pure find-and-replace.
dreamhost-mcp
MCP server for the DreamHost API -- DNS records, domains, hosting accounts, MySQL databases, and email management.
Part of Moko Consulting infrastructure.
Tools
| Tool | Description |
|---|---|
dreamhost_dns_list |
List all DNS records (optionally filter by domain) |
dreamhost_dns_add |
Add a DNS record (A, AAAA, CNAME, MX, TXT, SRV) |
dreamhost_dns_remove |
Remove a DNS record (must match record, type, and value exactly) |
dreamhost_dns_check |
Check if a DNS record exists for a domain (optional type filter) |
dreamhost_domain_list |
List all hosted domains |
dreamhost_domain_registrations |
List domain registrations with expiry dates |
dreamhost_user_list |
List hosting users and accounts |
dreamhost_account_status |
Get account status and usage |
dreamhost_api_commands |
List available API commands for the configured key |
dreamhost_mysql_list |
List MySQL databases |
dreamhost_mysql_users |
List MySQL database users |
dreamhost_mail_list |
List email addresses (optionally filter by domain) |
dreamhost_rewards_referrals |
List referral rewards |
Prerequisites
- Node.js >= 20
- A DreamHost API key -- generate one at DreamHost Panel > Web Panel API
Installation
git clone https://git.mokoconsulting.tech/MokoConsulting/dreamhost-mcp.git
cd dreamhost-mcp
npm install && npm run build
Configuration
Create ~/.dreamhost-mcp.json:
{
"apiKey": "your-dreamhost-api-key"
}
Override the config path with the DREAMHOST_MCP_CONFIG environment variable:
DREAMHOST_MCP_CONFIG=/path/to/config.json node dist/index.js
Claude Code (.mcp.json)
Add to your project or global .mcp.json:
{
"mcpServers": {
"dreamhost": {
"command": "node",
"args": ["/path/to/dreamhost-mcp/dist/index.js"]
}
}
}
Usage Examples
Once connected via MCP, the tools are available to the AI agent directly.
List all DNS records for a domain:
dreamhost_dns_list(domain: "example.com")
Add an A record:
dreamhost_dns_add(record: "sub.example.com", type: "A", value: "1.2.3.4", comment: "staging server")
Remove a DNS record:
dreamhost_dns_remove(record: "sub.example.com", type: "A", value: "1.2.3.4")
Check if a CNAME exists:
dreamhost_dns_check(domain: "sub.example.com", type: "CNAME")
List domain registrations and expiry dates:
dreamhost_domain_registrations()
List MySQL databases:
dreamhost_mysql_list()
Project Structure
src/
index.ts # MCP server entry point and tool definitions
client.ts # DreamHost API HTTP client (HTTPS, 30s timeout)
config.ts # Config file loader (~/.dreamhost-mcp.json)
types.ts # TypeScript interfaces (DreamHostConfig, DnsRecord, ApiResponse)
Development
npm run dev # watch mode (tsc --watch)
npm run build # compile TypeScript to dist/
npm run start # run the compiled server
npm run clean # remove dist/
Documentation
Full documentation is available on the Wiki.
License
GPL-3.0-or-later -- Copyright (C) 2026 Moko Consulting