DreamAgent
Build and deploy websites, Telegram and Discord bots from chat via the DreamAgent platform.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http dreamagent 'https://mcp.dreamagent.cloud/mcp'
{
"mcpServers": {
"dreamagent": {
"type": "http",
"url": "https://mcp.dreamagent.cloud/mcp"
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
DreamAgent MCP
Turn natural-language requests into deployed applications.
Connect ChatGPT, Claude, or any MCP client to DreamAgent — build websites, Telegram bots, Discord bots and schedulers from a conversation, watch them go live, then keep iterating.
streamable-http · OAuth 2.1 + PKCE · 24 tools · Python / FastMCP
What DreamAgent does
DreamAgent is an AI app-builder platform: you describe what you want, its agent writes the code, runs the tests, rebuilds, redeploys to production and commits to git — automatically. This MCP server exposes that power to your AI chat, so:
You: "Create a Telegram bot called WeatherBot — token
123:ABC— it replies with the weather when I send a city name."ChatGPT: creates it → polls → "WeatherBot is live."
You: "Add a /forecast command for 5-day forecasts."
ChatGPT: sends the edit → the agent codes, tests, redeploys → done.
Tools
| Tool | What it does |
|---|---|
dreamagent_list_projects | List your projects (id, type, status, domain) |
dreamagent_create_project | Create a website / Telegram bot / Discord bot / agent project |
dreamagent_get_project_status | Poll a build until ready / failed |
dreamagent_chat | Send a build/edit/debug instruction to the project's AI agent |
dreamagent_get_chat_status | Poll an edit run (incremental output) |
dreamagent_get_edit_progress | Edit progress by project — no session key needed |
dreamagent_list_sessions | List conversation threads per project |
dreamagent_create_session | Start a fresh topic thread |
dreamagent_cancel_chat | Cancel a running edit |
dreamagent_release_project_lock | Last-resort unlock (confirm first) |
dreamagent_list_files | List the project file tree |
dreamagent_read_file | Read one project source file |
dreamagent_edit_file | Targeted find → replace edits to an existing file (preferred for edits) |
dreamagent_write_file | Create / overwrite a file (confirm-gated, new files & full rewrites) |
dreamagent_get_file_diff | Pending changes vs last commit |
dreamagent_delete_file | Delete a file (confirm-gated) |
dreamagent_commit_push | Commit + push all pending changes as one version (or retry a failed commit) |
dreamagent_list_commits | Version history (hash, message, status) — restorable in the dashboard |
dreamagent_build_publish | Rebuild and publish the project (confirm-gated) |
dreamagent_design_mode | Upload a design image → agent redesigns the UI to match it |
dreamagent_screenshot_website | Screenshot any public page (returns the image + URL) |
dreamagent_list_superpowers | The project's AI tool catalog (song, image, video tools) |
dreamagent_list_project_env | Project env var names (values masked, secrets hidden) |
dreamagent_list_global_integrations | Which providers the account owner connected |
Long operations are submit-then-poll — create → poll status, edit → poll progress. Every file change is committed and pushed automatically, so each edit lands in session history and version history (restorable). The agent handles code, tests, rebuild, redeploy and git commits by itself; prompts only describe the change.
Connect — ChatGPT
With the official app (recommended): find DreamAgent in the ChatGPT app directory → Connect → sign in with your DreamAgent account (email or Google).
As a custom connector:
- In DreamAgent → Settings → Connect to ChatGPT → Create Key → copy the full URL (it contains your key)
- ChatGPT → Settings → Apps & Connectors → Advanced → Add custom connector
- Paste the URL as the MCP Server URL, choose OAuth (or No authentication — the key rides in the URL), save
- Ask: "Show my DreamAgent projects"
Connect — Claude
Claude → Settings → Connectors → Add custom connector:
- Name:
DreamAgent - Remote MCP server URL:
https://mcp.dreamagent.cloud/mcp - OAuth: leave empty — Claude auto-discovers it
Click Connect, sign in with DreamAgent, done.
Connect — any MCP client
{
"mcpServers": {
"dreamagent": {
"type": "streamable_http",
"url": "https://mcp.dreamagent.cloud/mcp"
}
}
}
Auth is OAuth 2.1 (authorization-code + PKCE, RFC 7591 dynamic registration)
— or pass a DreamAgent API key as Authorization: Bearer da_... /
?key=da_....
Example prompts
- "Show my DreamAgent projects"
- "Create a Discord bot called PriceBot — token
<from Discord dev portal>— it shows crypto prices with /price and /top commands" - "Is my website finished building?"
- "My crypto bot stopped replying — what's wrong?" (edits start with the agent reading the project logs)
- "Add a dark-mode toggle to my documentation site"
- "Roll back yesterday's dashboard change" (via chat)
- "How many AI credits do I have left?"
How it works
ChatGPT / Claude / Glama
│ MCP (streamable HTTP) + OAuth 2.1
▼
mcp.dreamagent.cloud ── this server (FastMCP)
│ per-request Bearer = the user's own DreamAgent API key
▼
api.dreamagent.cloud ── DreamAgent platform
└── agent writes code → tests → rebuild → deploy → git commit
Every request runs as the connected user — DreamAgent's ownership checks, plan limits and AI-credit billing apply exactly as in the dashboard.
Security & privacy
- Your key, your account. OAuth issues a revocable DreamAgent API key
(
da_...) at connect time — visible and revocable any time in Settings → Connect to ChatGPT. Revoking disconnects that client instantly; other clients keep working. - OAuth done right. Authorization-code + PKCE (S256) mandatory, single-use 120-second codes, redirect-URI allowlists (loopback per RFC 8252), login rate-limiting, secrets validated when presented. Client registrations persist across restarts.
- No secrets in chat. Bot tokens for Telegram/Discord travel over HTTPS to DreamAgent and are stored server-side as project env vars — the same as the dashboard's create dialog. The MCP server never logs credentials.
- Tokens are never stored by this server — it forwards the caller's own Bearer per request and keeps no database.
Privacy: dreamagent.cloud/privacy · Terms: dreamagent.cloud/terms
Screenshots
Coming soon — a GIF of "Create a Telegram bot" end-to-end from ChatGPT.
Self-hosting / development
The hosted endpoint (mcp.dreamagent.cloud) is the easiest way to connect.
To run your own:
git clone https://github.com/nivethaug/dreamagent-mcp-server
cd dreamagent-mcp-server
pip install -r requirements.txt
cp .env.example .env # optional: your account for local stdio mode
python server.py # stdio
python server.py --http --port 8800 # remote MCP (put behind HTTPS)
Hardening on the production host: the service runs under pm2 via
run-mcp.sh, which joins the dedicated cgroup dreamagent-mcp-egress.
Host firewall rules (/usr/local/sbin/mcp-egress-rules.sh, applied by the
mcp-egress-block.service systemd unit) block NEW connections from that
cgroup to all internal ranges (loopback/RFC1918/link-local/CGNAT/multicast,
v4+v6) while allowing DNS and public traffic — so screenshots can never
reach internal services, even through redirects or subresources.
System dependency — Chromium: the dreamagent_screenshot_website
tool renders pages with a system Chromium/Chrome binary (checked in order:
/usr/bin/chromium, /usr/bin/chromium-browser, /usr/bin/google-chrome,
then PATH). pip does not install it — on Debian/Ubuntu:
apt-get install -y chromium # or chromium-browser / google-chrome
Without it, every other tool works; the screenshot tool returns a clear "no headless chromium binary" error.
Three modes of authentication, in priority order per request:
Authorization: Bearer da_...header (OAuth clients / API clients)?key=da_...URL parameter (NoAuth custom connectors)DREAMAGENT_EMAIL/DREAMAGENT_PASSWORDenv (personal self-host)
Layout: server.py (tools) · oauth.py (OAuth 2.1 provider: /register,
/authorize, /token, /.well-known/*) · dreamagent_client.py (API
client) · auth.py (login mode) · plugin/ (Codex plugin package).
OAuth client registrations persist in oauth_clients.json; extend trusted
gateway callbacks via TRUSTED_OAUTH_REDIRECTS.
Links
- DreamAgent — dreamagent.cloud
- Documentation — dreamagent.cloud/documentation
- Help & Support — dreamagent.cloud/help
- Support — support@dreamagent.cloud
License
MIT
Frequently asked questions
What is DreamAgent?
Build and deploy websites, Telegram and Discord bots from chat via the DreamAgent platform.
How do I install DreamAgent?
It runs as a remote server. In Claude Code: claude mcp add --transport http dreamagent 'https://mcp.dreamagent.cloud/mcp'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does DreamAgent need an API key?
Its registry entry lists no required key or secret. Some features may still need an account with the service it connects to.
Is DreamAgent open source?
Its code is public on GitHub, but the repository does not declare a standard license.
Who maintains DreamAgent?
It is published by nivethaug. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.