Skip to main content

Projects

MCP tools for the Projects module. See the Projects module docs for permissions and data model.

list-projects

List projects

Arguments

ArgumentTypeRequiredDescription
limitnumbernoMaximum number of results to return
offsetnumbernoNumber of results to skip

create-project

Create a project

Arguments

ArgumentTypeRequiredDescription
namestringyes

get-project

Get a project

Arguments

ArgumentTypeRequiredDescription
project_idstringyesProject public ID (proj_ prefix)

update-project

Update a project

Arguments

ArgumentTypeRequiredDescription
project_idstringyesProject public ID (proj_ prefix)
namestringno
guardrail_idsarray<string> | nullnoGuardrails attached at the project scope.
max_concurrent_runsnumber | nullnoMaximum orchestration runs of this project driven at once. null clears the limit (unlimited); otherwise an integer >= 1. Enforced at queue claim time — excess runs stay queued until a slot frees.
max_chain_generationsnumber | nullnoGenerations one continuation chain in this project may hold before the platform stops resuming it. null clears the project's ceiling, leaving the deployment-wide MAX_CONTINUATION_CHAIN_GENERATIONS; otherwise an integer >= 1. The effective budget is the smallest of the deployment's ceiling, this one, and the agent's own max_chain_generations stop condition, so an agent author can be stricter than this number but never exceed it.
max_orchestration_run_depthnumber | nullnoloop / sub_orchestration nesting levels a run tree in this project may reach before the engine refuses to start the next child. null clears the project's bound, leaving the deployment-wide MAX_ORCHESTRATION_RUN_DEPTH (default 10); otherwise an integer >= 1. The effective bound is the smaller of the two, so this can only be stricter than the deployment's — which is what makes it a bound a graph author cannot opt out of. A refused child fails its parent run with ORCHESTRATION_RUN_DEPTH_LIMIT.
default_model_route_idstring | nullnoModel route inherited by consumers in this project that bind neither model_route_id nor ai_provider_id. The route must belong to this project (400 otherwise). null clears the default, which is refused with 409 while any consumer inherits it — repointing it to another route is always allowed and immediately changes which targets those consumers use.
audit_reads_enabledbooleannoOpt the project into read auditing. When true, GET requests that name this project are recorded in the audit log alongside mutations. Defaults to false.
trace_content_retention_daysnumber | nullnoHow long trace and generation content is kept before the daily retention sweep content-purges it. null (the default) disables retention; otherwise an integer >= 1. The sweep uses the same purge path as DELETE /traces/{trace_id}/content, so the row survives as an auditable skeleton with content_redacted_at set.
trace_content_modestringnoWhether trace and generation content is persisted at all. full (the default) stores it; none is zero-retention — content is never written, for every agent in the project. An agent may tighten this to none on its own but cannot loosen a none project back to full.

delete-project

Delete a project

Arguments

ArgumentTypeRequiredDescription
project_idstringyesProject public ID (proj_ prefix)
forcebooleannoWhen true, deletes all of the project's dependent resources instead of returning 409 PROJECT_HAS_DEPENDENTS.

get-project-prices

List a project's price rows

Arguments

ArgumentTypeRequiredDescription
project_idstringyesProject public ID (proj_ prefix)

update-project-prices

Upsert a project's price rows

Arguments

ArgumentTypeRequiredDescription
project_idstringyesProject public ID (proj_ prefix)
pricesarray<object>yes