Generate a Project With an AI Agent
Use this workflow when you want a coding agent to create and export a Djass project without clicking through the web UI.
The agent will connect to the Djass MCP server, inspect the available generator options, ask you to confirm important choices, queue the project, and retrieve the generated ZIP when it is ready.
1) Use hosted Djass MCP
Use hosted Djass when you want the agent to create projects through your Djass account without running the app locally. This is the production path for AI agents.
- Endpoint:
https://djass.dev/mcp - Setup prompt:
https://djass.dev/mcp/prompt - Authentication:
Authorization: Bearer <your Djass API key>
Use local stdio only when you are developing Djass itself or intentionally need the agent and MCP server to share a filesystem for artifact export.
2) Prepare local Djass only for development
For local development, run the normal stack first:
make serve
This gives Djass the database, Redis, and background worker it needs to process queued project generation jobs.
Skip this step when you use hosted Djass.
3) Configure the hosted MCP server
For hosted Djass, configure your MCP client to use https://djass.dev/mcp with
your Djass API key in the Authorization header. If your agent supports setup
prompts, open https://djass.dev/mcp/prompt and follow the generated client
instructions.
For local Djass development, use the canonical local stdio configuration in
MCP Server. Do not use local stdio for normal project
generation.
4) Give your agent this prompt
Copy this prompt into your coding agent and replace the app idea with your own.
You have access to the Djass MCP server named "djass".
Use Djass to generate a new Django SaaS project for this app idea:
[Describe the app, users, core workflow, and any integrations you already know you need.]
First call get_generator_options on the hosted Djass MCP server. Summarize the project fields, defaults, and optional feature flags I need to decide.
Ask me before enabling optional services such as analytics, payments, storage, support chat, keyboard shortcuts, CI, ReviewGate, Apprise, or generated MCP scaffolding. Do not infer those from a vague app idea.
After I confirm the choices, call the Djass project creation tool with an explicit project_name, Python-safe project_slug, short project_description, repository URL if known, author fields if known, and every feature flag as "y" or "n".
Poll get_project_status until the project is ready or failed.
When artifact_ready is true, call get_project_download, download the returned ZIP URL with the same Authorization bearer token, and unzip it into a new workspace directory. Never overwrite an existing export unless I explicitly approve it.
5) Review the choices before generation
The agent should stop and ask before it enables optional services. Confirm only the tools the project will actually use.
Use Djass defaults when you want the standard baseline. Be explicit if you want features such as payments, analytics, ReviewGate pull-request reviews, generated MCP scaffolding, or background notification helpers.
ReviewGate is off by default and does not depend on the standard CI option. If
you enable it, add OPENROUTER_API_KEY as a GitHub Actions repository secret in
the generated repository.
6) Retrieve the generated project
When generation finishes, the agent should fetch the artifact ZIP.
For hosted MCP setups, the agent should save the ZIP on the client side. For
local stdio development setups where the agent and server share a filesystem,
the agent can export and extract the artifact locally after you approve the
target directory.
7) Run local Postgres checks
Generated repos include a PGSandbox MCP testing workflow for disposable local
Postgres checks. After unzipping the generated project, ask your agent to use
.agents/skills/pgsandbox-testing or provide a PGSandbox DATABASE_URL and run:
make test-local-postgres
PGSandbox is intentionally separate from the generated app dependencies. The generated workflow points agents to the project URL and install commands they need before creating a temporary database.
What the agent should not do
- Do not skip generator option discovery. Use
get_generator_optionson hosted Djass. - Do not enable optional integrations without confirmation.
- Do not treat
use_mcpas the switch for using the Djass MCP server. It only controls whether the generated project includes MCP scaffolding. - Do not overwrite an existing generated project without explicit approval.
When a plugin makes sense later
This prompt-first workflow is enough for early use. A plugin becomes useful when you want one-click installation, bundled agent skills, marketplace discoverability, or consistent setup across multiple MCP-compatible agent environments.