Letta · Capability

Letta API — Projects

Projects — project-scoped containers for agents and resources. 3 operations. Lead operation: List Projects (Cloud-only). Self-contained Naftiko capability covering one Letta business surface.

Letta API — Projects is a Naftiko capability published by Letta, one of 36 capabilities the APIs.io network indexes for this provider. It bundles 3 operations across the GET, POST, and DELETE methods rooted at /v1/projects.

The capability includes 1 read-only operation and 2 state-changing operations. Lead operation: List Projects (Cloud-only). Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Letta, Stateful Agents, and Projects.

Run with Naftiko LettaStateful AgentsProjects

What You Can Do

GET
Projects_listprojects — List Projects (Cloud-only)
/v1/projects
POST
Projects_createproject — Create Project (Cloud-only)
/v1/projects
DELETE
Projects_deleteproject — Delete Project (Cloud-only)
/v1/projects/{projectId}

MCP Tools

list-projects-cloud-only

List Projects (Cloud-only)

read-only idempotent
create-project-cloud-only

Create Project (Cloud-only)

delete-project-cloud-only

Delete Project (Cloud-only)

idempotent

Capability Spec

letta-projects.yaml Raw ↑
naftiko: "1.0.0-alpha2"

info:
  label: "Letta API — Projects"
  description: >-
    Projects — project-scoped containers for agents and resources. 3 operations. Lead operation: List Projects (Cloud-only). Self-contained Naftiko capability covering one Letta business surface.
  tags:
    - Letta
    - Stateful Agents
    - Projects
  created: "2026-05-08"
  modified: "2026-05-22"

binds:
  - namespace: env
    keys:
      LETTA_API_KEY: LETTA_API_KEY

capability:

  consumes:
    - type: http
      namespace: "letta-projects"
      baseUri: "https://api.letta.com"
      description: "Letta API — Projects business capability. Self-contained, no shared references."
      authentication:
        type: bearer
        token: "{{env.LETTA_API_KEY}}"
      resources:
        - name: "projects"
          path: "/v1/projects"
          operations:
            - name: "projects_listprojects"
              method: GET
              description: "List Projects (Cloud-only)"
              inputParameters:
                - name: "name"
                  in: query
                  type: string
                  required: false
                  description: "name parameter"
                - name: "offset"
                  in: query
                  type: string
                  required: false
                  description: "offset parameter"
                - name: "limit"
                  in: query
                  type: string
                  required: false
                  description: "limit parameter"
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: "$."
            - name: "projects_createproject"
              method: POST
              description: "Create Project (Cloud-only)"
              inputParameters:
                - name: "body"
                  in: body
                  type: object
                  required: true
                  description: "Body"
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: "$."
        - name: "projects-by-id"
          path: "/v1/projects/{projectId}"
          operations:
            - name: "projects_deleteproject"
              method: DELETE
              description: "Delete Project (Cloud-only)"
              inputParameters:
                - name: "projectId"
                  in: path
                  type: string
                  required: true
                  description: "projectId parameter"
                - name: "body"
                  in: body
                  type: object
                  required: true
                  description: "Body"
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: "$."

  exposes:
    - type: rest
      namespace: "letta-projects-rest"
      port: 8080
      description: "REST adapter for Letta API — Projects. One Spectral-compliant resource per consumed operation."
      resources:
        - path: "/v1/projects"
          name: "projects"
          description: "REST surface for projects."
          operations:
            - method: GET
              name: "projects_listprojects"
              description: "List Projects (Cloud-only)"
              call: "letta-projects.projects_listprojects"
              with:
                "name": "rest.name"
                "offset": "rest.offset"
                "limit": "rest.limit"
              outputParameters:
                - type: object
                  mapping: "$."
            - method: POST
              name: "projects_createproject"
              description: "Create Project (Cloud-only)"
              call: "letta-projects.projects_createproject"
              with:
                "body": "rest.body"
              outputParameters:
                - type: object
                  mapping: "$."
        - path: "/v1/projects/{projectId}"
          name: "projects-by-id"
          description: "REST surface for projects-by-id."
          operations:
            - method: DELETE
              name: "projects_deleteproject"
              description: "Delete Project (Cloud-only)"
              call: "letta-projects.projects_deleteproject"
              with:
                "projectId": "rest.projectId"
                "body": "rest.body"
              outputParameters:
                - type: object
                  mapping: "$."
    - type: mcp
      namespace: "letta-projects-mcp"
      port: 9090
      transport: http
      description: "MCP adapter for Letta API — Projects. One verb-noun tool per consumed operation."
      tools:
        - name: "list-projects-cloud-only"
          description: "List Projects (Cloud-only)"
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: "letta-projects.projects_listprojects"
          with:
            "name": "tools.name"
            "offset": "tools.offset"
            "limit": "tools.limit"
          outputParameters:
            - type: object
              mapping: "$."
        - name: "create-project-cloud-only"
          description: "Create Project (Cloud-only)"
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: "letta-projects.projects_createproject"
          with:
            "body": "tools.body"
          outputParameters:
            - type: object
              mapping: "$."
        - name: "delete-project-cloud-only"
          description: "Delete Project (Cloud-only)"
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: "letta-projects.projects_deleteproject"
          with:
            "projectId": "tools.projectId"
            "body": "tools.body"
          outputParameters:
            - type: object
              mapping: "$."