Escape · Capability
Escape Public API — Projects
Escape Public API — Projects. 4 operations. Lead operation: List projects. Self-contained Naftiko capability covering one Escape business surface.
What You Can Do
GET
Listprojects
— List projects
/v1/projects
POST
Createproject
— Create a project
/v1/projects
GET
Getproject
— Get a project
/v1/projects/{projectid}
PUT
Updateproject
— Update a project
/v1/projects/{projectid}
MCP Tools
list-projects
List projects
read-only
idempotent
create-project
Create a project
get-project
Get a project
read-only
idempotent
update-project
Update a project
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Escape Public API — Projects
description: 'Escape Public API — Projects. 4 operations. Lead operation: List projects. Self-contained Naftiko capability
covering one Escape business surface.'
tags:
- Escape
- Projects
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
ESCAPE_API_KEY: ESCAPE_API_KEY
capability:
consumes:
- type: http
namespace: escape-projects
baseUri: https://public.escape.tech/v3
description: Escape Public API — Projects business capability. Self-contained, no shared references.
resources:
- name: projects
path: /projects
operations:
- name: listprojects
method: GET
description: List projects
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: cursor
in: query
type: string
description: The cursor to start the pagination from. Returned by the previous page response. If not provided, the
first page will be returned.
- name: size
in: query
type: integer
description: The number of items to return per page
- name: sortType
in: query
type: string
description: The type to sort by
- name: sortDirection
in: query
type: string
description: The direction to sort by
- name: search
in: query
type: string
description: Search term to filter projects by name
- name: createproject
method: POST
description: Create a project
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: projects-projectId
path: /projects/{projectId}
operations:
- name: getproject
method: GET
description: Get a project
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectId
in: path
type: string
description: The project ID
required: true
- name: updateproject
method: PUT
description: Update a project
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: projectId
in: path
type: string
description: The project ID
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: apikey
key: X-ESCAPE-API-KEY
value: '{{env.ESCAPE_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: escape-projects-rest
port: 8080
description: REST adapter for Escape Public API — Projects. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/projects
name: projects
description: REST surface for projects.
operations:
- method: GET
name: listprojects
description: List projects
call: escape-projects.listprojects
with:
cursor: rest.cursor
size: rest.size
sortType: rest.sortType
sortDirection: rest.sortDirection
search: rest.search
outputParameters:
- type: object
mapping: $.
- method: POST
name: createproject
description: Create a project
call: escape-projects.createproject
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/projects/{projectid}
name: projects-projectid
description: REST surface for projects-projectId.
operations:
- method: GET
name: getproject
description: Get a project
call: escape-projects.getproject
with:
projectId: rest.projectId
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateproject
description: Update a project
call: escape-projects.updateproject
with:
projectId: rest.projectId
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: escape-projects-mcp
port: 9090
transport: http
description: MCP adapter for Escape Public API — Projects. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: list-projects
description: List projects
hints:
readOnly: true
destructive: false
idempotent: true
call: escape-projects.listprojects
with:
cursor: tools.cursor
size: tools.size
sortType: tools.sortType
sortDirection: tools.sortDirection
search: tools.search
outputParameters:
- type: object
mapping: $.
- name: create-project
description: Create a project
hints:
readOnly: false
destructive: false
idempotent: false
call: escape-projects.createproject
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-project
description: Get a project
hints:
readOnly: true
destructive: false
idempotent: true
call: escape-projects.getproject
with:
projectId: tools.projectId
outputParameters:
- type: object
mapping: $.
- name: update-project
description: Update a project
hints:
readOnly: false
destructive: false
idempotent: true
call: escape-projects.updateproject
with:
projectId: tools.projectId
body: tools.body
outputParameters:
- type: object
mapping: $.