create_project
Use this tool to create a new project for organizing content and context into a workstream. Projects group related documents and can include project-specific context items.
Workflow:
1) Provide a name for the project.
2) Optionally set visibility to "team" or "private" (default: team).
3) Optionally create a project brief at the same time — two ways:
- `project_brief_content`: supply the FINISHED brief text directly. It is saved as the project brief document as-is. NO Studio Credits used.
- `project_brief_instructions`: supply a PROMPT describing the brief; the AI generates the brief document for you. Uses Studio Credits (charged when the brief completes, at the model's cost: 1 credit = 5¢, rounded up; typically 1-2) — if the team is out of credits this returns an `insufficient_credits` error (code 402) and the project is NOT created; pass `project_brief_content` instead.
If both are supplied, `project_brief_content` wins (no AI). When a brief is created, the response includes a `project_brief` object containing the brief's `content_id` — use that with `update_content` / `get_content` later.
4) Use the returned `project_id` with `create_content` to associate new content with this project.
**Links:** present `link_url` to the user exactly as returned — copy it character for character. Never retype, shorten, or rebuild a link or the IDs inside it.Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"name": "<name>"
},
"name": "create_project"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The project's display name, shown in the project list and used to label it everywhere. Required and must be non-empty (surrounding whitespace is trimmed); there is no length limit. If you also pass project_brief_instructions, this name is inserted into the AI prompt used to write the brief, so a descriptive name produces a better brief. | |
| visibility | No | Who on the team can see the project. "team" (the default when omitted) makes it visible to team admins and editors as well as anyone added to the project; "private" limits it to people explicitly added as project members — the creator is added automatically. Set "private" only when the work should not be browsable by the wider team; these are the only two accepted values. | |
| project_brief_content | No | Finished brief text to save DIRECTLY as the project brief (no AI, no Studio Credits). Takes precedence over project_brief_instructions. | |
| project_brief_instructions | No | Prompt describing the brief to AUTO-GENERATE with AI (uses Studio Credits). Mutually exclusive with project_brief_content, which takes precedence. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Project name. | |
| link_url | Yes | Direct URL to view/open this project in Marcora. | |
| project_id | Yes | Project identifier. | |
| project_brief | No | Present (non-null) only when `project_brief_content` or `project_brief_instructions` was supplied. Pass `content_id` to update_content / get_content later. |