Documentation navigation

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_options on hosted Djass.
  • Do not enable optional integrations without confirmation.
  • Do not treat use_mcp as 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.