{"name":"io.github.nivethaug/dreamagent","slug":"nivethaug-dreamagent","title":"DreamAgent","description":"Build and deploy websites, Telegram and Discord bots from chat via the DreamAgent platform.","url":"https://mcp.market/server/nivethaug-dreamagent","rating":null,"grade":"C","score":63,"certified":false,"status":"active","category":"devtools","tags":["devtools"],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":null,"last_push_at":"2026-08-29T07:21:52.000Z","license":null},"uptime":{"percent":100,"checks":28,"ok":28,"last_checked_at":"2026-11-02T02:50:47.019Z","last_ok_at":"2026-11-02T02:50:47.019Z","latency_ms":414},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":"https://github.com/nivethaug/dreamagent-mcp-server","website":"https://dreamagent.cloud","version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://mcp.dreamagent.cloud/mcp"}],"packages":[],"tools":[{"name":"dreamagent_cancel_chat","description":"DESTRUCTIVE — stops an AI edit that is currently running. Use ONLY\nwhen the user explicitly asks to stop/cancel the active edit.\nAfter cancellation, do NOT claim the requested change was\ncompleted — report that it was stopped.\n\nReturns 'Cancellation requested: <backend message>' — e.g. 'Query\ncancelled', 'Cancellation requested' (durable run), or 'No active\nquery found'. Afterwards poll dreamagent_get_chat_status /\ndreamagent_get_edit_progress until run_status reports 'cancelled'.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"session_key":{"type":"string","description":"the session key of the running edit."}},"required":["session_key"],"additionalProperties":false}},{"name":"dreamagent_chat","description":"WRITE ACTION — builds, modifies, or fixes an EXISTING project with\na natural-language instruction. Use ONLY when the user clearly asks\nfor a change (\"add X\", \"fix Y\", \"change the theme\"). If the user is\nonly asking for advice, analysis, review, or suggestions (\"what\ncould be improved?\", \"review my bot\"), do NOT call this — answer\nfrom the project's info instead; a review request is not an edit.\n\nDescribe ONLY the desired change — DreamAgent's AI automatically\nhandles code, tests, rebuild, and redeployment. Completed changes\nare saved and committed automatically.\n\nASYNCHRONOUS: returns immediately with the session_key; monitor\nwith dreamagent_get_edit_progress (or dreamagent_get_chat_status\nwith the returned session key) until a terminal state. Report\nsuccess only after run_status reaches 'completed'. Edits consume\nthe user's AI credits.\n\nERRORS (actual returns): failures come back as text starting with\n'ERROR:'. If the edit was rejected before starting, the text says\n'the edit was NOT started' plus the reason — HTTP 402 insufficient\ncredits, 409 another edit already active, 423 session lock held by\nanother session, 404 wrong project id, 401 no account connected.\nTreat the edit as failed/cancelled only when a status tool says so.\n\nONE EDIT AT A TIME: never start another modification on the same\nproject while one is running — check progress first and wait.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project to modify."},"message":{"type":"string","description":"the desired change (what + any behavioral constraints)."},"session_key":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"optional — continue a specific development session."},"new_session":{"default":false,"type":"boolean","description":"optional — start a fresh session for a new topic."}},"required":["project_id","message"],"additionalProperties":false}},{"name":"dreamagent_create_project","description":"WRITE ACTION — creates a new DreamAgent project (website, Telegram\nbot, Discord bot, or scheduler). Use ONLY when the user clearly asks\nto create/build a new project; not for questions about what to build.\n\nCONFIRM BEFORE CALLING — never create on the first mention. In ONE\nmessage, present and get the user's explicit go-ahead for:\n1. The credential: run dreamagent_list_global_integrations first.\n   If several telegram/discord credentials are saved, list them\n   (id + title) and ask which to use. If exactly one is saved,\n   state which one you will use. Never pick silently.\n2. The plan: name, type, and the final description exactly as you\n   will submit it (this is the Prompt Assistant's recommendation\n   summary). Call this tool only after the user confirms.\n\nCREATION IS ASYNCHRONOUS: after calling, check\ndreamagent_get_project_status repeatedly until the project is\n'ready' or 'failed' (bots ~2-5 min, websites longer).\n\nCREDENTIALS: raw bot tokens are never accepted in chat or as inputs.\nFor Telegram/Discord bots you MUST pass bot_token_integration_id —\nthe ID of a saved credential from dreamagent_list_global_integrations.\nIf none is saved, direct the user to dreamagent.cloud → Settings →\nGlobal Integrations. Other saved keys can be imported via\nglobal_integration_ids. Credentials are stored as project secrets\nand are never exposed back.\n\nDESCRIPTION = the refined creation brief. Act as a Creative\nDirector / Product Manager, not an architect.\n\nCreate a concise but complete description of WHAT should be built:\n- product vision and target audience\n- user experience and core functionality\n- design/tone direction\n- important features and behavior\n- final expected result\n\nDo not include implementation details such as:\n- technology stack\n- architecture\n- database/API implementation\n- authentication implementation\n- deployment\n- CI/CD\n- testing commands\n\nInfer reasonable defaults when missing details are non-critical.\nAsk for clarification only when missing information materially\naffects the requested functionality, scope, credentials, or\nexpected result.\n\nPrefer the following structure and constraints for each project\ntype, but do not override explicit user requirements:\n\nWebsite:\n- Project Vision\n- Design Style\n- Pages\n- Hero Experience\n- Core Features\n- UI Components\n- Mobile Experience\n- Final Expectation\n- Prefer up to 4 pages unless the user clearly requires more.\n\nTelegram bot:\n- Bot Purpose\n- Commands\n- User Flow\n- Optional AI Features\n- Integrations when required\n- Final Expectations\n- Prefer a compact command set; always include /start and /help\n  unless the user's explicit requirements conflict.\n\nDiscord bot:\n- Bot Purpose\n- Slash Commands\n- Events\n- Permissions\n- Optional AI Features\n- Final Expectations\n- Prefer a compact command set; include /help where appropriate.\n\nScheduler:\n- Job Purpose\n- Data Sources\n- Schedule\n- Delivery Channels\n- Message Format\n- Final Expectations\n- Use concrete schedules and specify failure/timeout behavior.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"name":{"type":"string","description":"project name (max 30 chars; a public subdomain is auto-generated)."},"project_type":{"type":"string","description":"website / telegrambot / discordbot / scheduler."},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"the build request (what + for whom + features/tone)."},"env_vars":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"default":null,"description":"optional non-secret environment variables."},"bot_token_integration_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"REQUIRED for telegrambot & discordbot —\nsaved-credential ID (see dreamagent_list_global_integrations)."},"global_integration_ids":{"anyOf":[{"items":{},"type":"array"},{"type":"null"}],"default":null,"description":"optional saved-key IDs to import as env vars."}},"required":["name","project_type"],"additionalProperties":false}},{"name":"dreamagent_create_session","description":"Create a new development session for a project — a separate\nconversation with its own context. Use when the user wants to start\na distinct development topic. A new session does NOT replace or\naffect the existing project — earlier sessions remain available.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project."},"label":{"default":"ChatGPT","type":"string","description":"optional name for the session."}},"required":["project_id"],"additionalProperties":false}},{"name":"dreamagent_get_chat_status","description":"Check the progress and final status of a specific AI development\nsession using its session key. Use this to monitor an asynchronous\nedit until it completes, fails, or is cancelled — keep checking\nuntil a terminal state. The session key comes from dreamagent_chat\nor dreamagent_list_sessions and is an identifier, not a secret.\n\nReturns (actual fields): 'active=', 'run_status=', 'next_after='\n(cursor for the next check), optional 'new_output:' (text produced\nsince the last check), then either \"Still working — poll again\" or\na terminal 'done=true' line: finished (with the final output tail),\n'the edit was NOT started: <reason>' (rejected early, e.g. HTTP 402\ninsufficient credits), or 'stream error' (the connection to the run\nbroke — the server-side run may still have finished; verify with\ndreamagent_get_edit_progress).\nrun_status values: queued | running | cancel_requested | completed |\nfailed | cancelled | interrupted | unknown.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"session_key":{"type":"string","description":"the session key returned by dreamagent_chat."},"after":{"default":0,"type":"integer","description":"cursor from the previous check (0 on the first check)."}},"required":["session_key"],"additionalProperties":false}},{"name":"dreamagent_get_edit_progress","description":"Check the latest AI edit progress for a project using its project\nidentifier — no session key needed: the project id retrieves the\nsession holding the latest edit. Use when the user asks whether\ntheir edit is finished, when the session key isn't available\n(e.g. a new conversation), and BEFORE starting any new edit.\n\nReturns (actual fields): 'session_key=' (the identifier of the\nsession this progress comes from), 'edit_active=', 'run_status=',\n'chunks=' (output size so far), optional 'recent_output (tail):',\nand a terminal 'result:' line: finished (with the final output\ntail), 'the edit was NOT started: <reason>' (rejected early,\ne.g. HTTP 402 insufficient credits), 'stream error', or 'no run is\ncurrently active'.\nrun_status values: queued | running | cancel_requested | completed |\nfailed | cancelled | interrupted | unknown.\n\nDistinct from dreamagent_get_project_status: project status =\ncreation/deployment state (creating/ready/failed); edit progress =\ncurrent AI modification state; chat status (dreamagent_get_chat_status)\nmonitors one specific session by its session key. If edit_active is\ntrue, do NOT launch another edit for the same project.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project being edited."}},"required":["project_id"],"additionalProperties":false}},{"name":"dreamagent_get_project_status","description":"Check a project's creation/deployment state. Terminal states are\n'ready' (built and live) and 'failed'; while a project is being\ncreated it reports progressive phases such as 'creating',\n'building', 'deploying', or 'ai_provisioning' — treat any\nnon-terminal status as still building. Use after\ndreamagent_create_project (poll until ready or failed) and\nwhenever the user asks whether a project is ready or live.\n\nNOTE: this reports the PROJECT's build/deploy state — NOT AI edit\nprogress. For edits use dreamagent_get_edit_progress.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project to check."}},"required":["project_id"],"additionalProperties":false}},{"name":"dreamagent_list_global_integrations","description":"List the user's saved credentials (Global Integrations).\n\nALWAYS call this before creating any bot project or asking the user\nfor a token/API key. Saved credentials are referenced BY ID when\ncreating projects: bot_token_integration_id for bot tokens,\nglobal_integration_ids for other keys. Secret values are never\nreturned — only IDs and metadata (type, key name, verified, title).\n\nIf nothing suitable is saved: direct the user to dreamagent.cloud →\nSettings → Global Integrations to add it (one-time, verified,\nreusable). Never ask the user to paste tokens in chat.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"additionalProperties":false}},{"name":"dreamagent_list_project_env","description":"List a project's environment variables with their details.\n\nShows each key's name, title, description, docs URL, and category —\nvalues are masked (secrets are never returned). Use to see which\nintegrations a project already has before adding more, or to answer\n\"what keys does my project have?\".\n\nThese are PROJECT-SPECIFIC variables — distinct from the user's\nGlobal Integrations (dreamagent_list_global_integrations).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project to inspect."}},"required":["project_id"],"additionalProperties":false}},{"name":"dreamagent_list_projects","description":"List the user's DreamAgent projects.\n\nReturns each project's name, ID, type, status, and live domain (when\navailable). Use when the user asks to see, find, select, or check their\nprojects — and ALWAYS before modifying a project when its ID is not\nalready known (resolve names to IDs here first).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"status":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"optional exact-match filter (e.g. 'ready', 'failed').\nDuring creation, projects report intermediate phases\n(creating/building/deploying/…), so filtering by 'creating'\ndoes not match every in-progress project."}},"additionalProperties":false}},{"name":"dreamagent_list_sessions","description":"List a project's development sessions (conversation threads).\nReturns each session's identifier (session key) and context so you\ncan select, continue, or monitor a specific development session —\npass the session key to dreamagent_chat to continue that thread or\nto dreamagent_get_chat_status to monitor it. The session key is a\nreference used to address a session; it is not an authentication\ncredential or a secret.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project."}},"required":["project_id"],"additionalProperties":false}},{"name":"dreamagent_release_project_lock","description":"RECOVERY-ONLY — releases a project's editing lock when a stale or\nabandoned session blocks new modifications. NOT a normal editing\nstep, and NEVER a way to bypass an actively running edit.\n\nThe lock state is not machine-readable from here: to judge staleness,\ncheck dreamagent_get_edit_progress — if no edit is active but\ndreamagent_chat still fails with a lock error, the lock is stale.\nConfirm with the user before releasing if they may have the project\nopen elsewhere.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project_id":{"type":"integer","description":"the project to unlock."}},"required":["project_id"],"additionalProperties":false}}],"scan":{"score":63,"grade":"C","scanned_at":"2026-09-23T11:53:37.374Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-23T11:53:37.338Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1798ms"]},"poisoning":{"score":1,"max":15,"notes":["12 tool descriptions checked"]},"auth":{"score":3,"max":15,"notes":["open endpoint exposes 4 write-action tools with no auth"]},"maintenance":{"score":15,"max":15,"notes":["last push 25 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"auth.open-write","severity":"high","component":"auth","title":"Write-action tools reachable without authentication"},{"id":"poison.role-hijack","severity":"high","component":"poisoning","title":"Attempts to change the assistant's role","evidence":"tool dreamagent_create_project: …DESCRIPTION = the refined creation brief. Act as a Creative Director / Product Manager, no…"},{"id":"poison.long-description","severity":"low","component":"poisoning","title":"Unusually long tool description (over 2,000 characters)","evidence":"tool dreamagent_create_project: …WRITE ACTION — creates a new DreamAgent project (website, Telegram bot, Discord bot, or scheduler). Use ONLY when the user clearly asks to create/build a new project; not for questions about what to build. CONFIRM BEFORE CALLING — never create on the first mention. In ONE message, present and get the user's explicit go-ahead for: 1. The credential: run dreamagent_list_global_integrations first. If several telegram/discord credentials are saved, list them (id + title) and ask which to use. If exactly one is saved, state which one you will use. Never pick silently. 2. The plan: name, type, and the final description exactly as you will submit it (this is the Prompt Assistant's recommendation summary). Call this tool only after the user confirms. CREATION IS ASYNCHRONOUS: after calling, check dreamagent_get_project_status repeatedly until the project is 'ready' or 'failed' (bots ~2-5 min, websites longer). CREDENTIALS: raw bot tokens are never accepted in chat or as inputs. For Telegram/Discord bots you MUST pass bot_token_integration_id — the ID of a saved credential from dreamagent_list_global_integrations. If none is saved, direct the user to dreamagent.cloud → Settings → Global Integrations. Other saved keys can be imported via global_integration_ids. Credentials are stored as project secrets and are never exposed back. DESCRIPTION = the refined creation brief. Act as a Creative Director / Product Manager, not an architect. Create a concise but complete description of WHAT should be built: - product vision and target audience - user experience and core functionality - design/tone direction - important features and behavior - final expected result Do not include implementation details such as: - technology stack - architecture - database/API implementation - authentication implementation - deployment - CI/CD - testing commands Infer reasonable defaults when missing details are non-critical. Ask for clarification only when missing information materially affects the requested functionality, scope, credentials, or expected result. Prefer the following structure and constraints for each project type, but do not override explicit user requirements: Website: - Project Vision - Design Style - Pages - Hero Experience - Core Features - UI Components - Mobile Experience - Final Expectation - Prefer up to 4 pages unless the user clearly requires more. Telegram bot: - Bot Purpose - Commands - User Flow - Optional AI Features - Integrations when required - Final Expectations - Prefer a compact command set; always include /start and /help unless the user's explicit requirements conflict. Discord bot: - Bot Purpose - Slash Commands - Events - Permissions - Optional AI Features - Final Expectations - Prefer a compact command set; include /help where appropriate. Scheduler: - Job Purpose - Data Sources - Schedule - Delivery Channels - Message Format - Final Expectations - Use concrete schedules and specify failure/timeout behavior.…"}],"inputs":{"probes":[{"url":"https://mcp.dreamagent.cloud/mcp","reachable":true,"authRequired":false,"latencyMs":1798,"serverInfo":{"name":"DreamAgent","version":"3.4.7"}}],"packages":[],"repo":{"found":true,"owner":"nivethaug","repo":"dreamagent-mcp-server","archived":false,"pushedAt":"2026-08-29T07:21:52Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/122332160?v=4","ownerCreatedAt":"2023-01-10T02:43:09Z"},"icon":{"url":"https://dreamagent.cloud/favicon.ico","source":"site","width":32,"height":32},"presence":{"stars":0,"forks":0,"downloadsWeek":null,"license":null,"lastPushAt":"2026-08-29T07:21:52.000Z","score":23}}}},"grade_history":[],"reviews":[]}