Prefect · Capability
Prefect Cloud API — Teams
Prefect Cloud API — Teams. 7 operations. Lead operation: Create Team. Self-contained Naftiko capability covering one Prefect business surface.
What You Can Do
POST
Createteamapiaccountsaccountidteamspost
— Create Team
/v1/api/accounts/{account-id}/teams
POST
Readteamsapiaccountsaccountidteamsfilterpost
— Read Teams
/v1/api/accounts/{account-id}/teams/filter
GET
Readteamapiaccountsaccountidteamsidget
— Read Team
/v1/api/accounts/{account-id}/teams/{id}
PUT
Updateteamapiaccountsaccountidteamsidput
— Update Team
/v1/api/accounts/{account-id}/teams/{id}
DELETE
Deleteteamapiaccountsaccountidteamsiddelete
— Delete Team
/v1/api/accounts/{account-id}/teams/{id}
PUT
Upsertteammembersapiaccountsaccountidteamsidmembersput
— Upsert Team Members
/v1/api/accounts/{account-id}/teams/{id}/members
DELETE
Removeteammemberapiaccountsaccountidteamsteamidmembersactoriddelete
— Remove Team Member
/v1/api/accounts/{account-id}/teams/{team-id}/members/{actor-id}
MCP Tools
create-team
Create Team
read-teams
Read Teams
read-team
Read Team
read-only
idempotent
update-team
Update Team
idempotent
delete-team
Delete Team
idempotent
upsert-team-members
Upsert Team Members
idempotent
remove-team-member
Remove Team Member
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Prefect Cloud API — Teams
description: 'Prefect Cloud API — Teams. 7 operations. Lead operation: Create Team. Self-contained Naftiko capability covering
one Prefect business surface.'
tags:
- Prefect
- Teams
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
PREFECT_API_KEY: PREFECT_API_KEY
capability:
consumes:
- type: http
namespace: prefect-teams
baseUri: ''
description: Prefect Cloud API — Teams business capability. Self-contained, no shared references.
resources:
- name: api-accounts-account_id-teams
path: /api/accounts/{account_id}/teams/
operations:
- name: createteamapiaccountsaccountidteamspost
method: POST
description: Create Team
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: account_id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-accounts-account_id-teams-filter
path: /api/accounts/{account_id}/teams/filter
operations:
- name: readteamsapiaccountsaccountidteamsfilterpost
method: POST
description: Read Teams
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: account_id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: false
- name: api-accounts-account_id-teams-id
path: /api/accounts/{account_id}/teams/{id}
operations:
- name: readteamapiaccountsaccountidteamsidget
method: GET
description: Read Team
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
required: true
- name: account_id
in: path
type: string
required: true
- name: updateteamapiaccountsaccountidteamsidput
method: PUT
description: Update Team
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
required: true
- name: account_id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteteamapiaccountsaccountidteamsiddelete
method: DELETE
description: Delete Team
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
required: true
- name: account_id
in: path
type: string
required: true
- name: api-accounts-account_id-teams-id-members
path: /api/accounts/{account_id}/teams/{id}/members
operations:
- name: upsertteammembersapiaccountsaccountidteamsidmembersput
method: PUT
description: Upsert Team Members
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: id
in: path
type: string
required: true
- name: account_id
in: path
type: string
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: api-accounts-account_id-teams-team_id-members-actor_id
path: /api/accounts/{account_id}/teams/{team_id}/members/{actor_id}
operations:
- name: removeteammemberapiaccountsaccountidteamsteamidmembersactoriddelete
method: DELETE
description: Remove Team Member
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: account_id
in: path
type: string
required: true
- name: team_id
in: path
type: string
required: true
- name: actor_id
in: path
type: string
required: true
exposes:
- type: rest
namespace: prefect-teams-rest
port: 8080
description: REST adapter for Prefect Cloud API — Teams. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/api/accounts/{account-id}/teams
name: api-accounts-account-id-teams
description: REST surface for api-accounts-account_id-teams.
operations:
- method: POST
name: createteamapiaccountsaccountidteamspost
description: Create Team
call: prefect-teams.createteamapiaccountsaccountidteamspost
with:
account_id: rest.account_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/accounts/{account-id}/teams/filter
name: api-accounts-account-id-teams-filter
description: REST surface for api-accounts-account_id-teams-filter.
operations:
- method: POST
name: readteamsapiaccountsaccountidteamsfilterpost
description: Read Teams
call: prefect-teams.readteamsapiaccountsaccountidteamsfilterpost
with:
account_id: rest.account_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/accounts/{account-id}/teams/{id}
name: api-accounts-account-id-teams-id
description: REST surface for api-accounts-account_id-teams-id.
operations:
- method: GET
name: readteamapiaccountsaccountidteamsidget
description: Read Team
call: prefect-teams.readteamapiaccountsaccountidteamsidget
with:
id: rest.id
account_id: rest.account_id
outputParameters:
- type: object
mapping: $.
- method: PUT
name: updateteamapiaccountsaccountidteamsidput
description: Update Team
call: prefect-teams.updateteamapiaccountsaccountidteamsidput
with:
id: rest.id
account_id: rest.account_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteteamapiaccountsaccountidteamsiddelete
description: Delete Team
call: prefect-teams.deleteteamapiaccountsaccountidteamsiddelete
with:
id: rest.id
account_id: rest.account_id
outputParameters:
- type: object
mapping: $.
- path: /v1/api/accounts/{account-id}/teams/{id}/members
name: api-accounts-account-id-teams-id-members
description: REST surface for api-accounts-account_id-teams-id-members.
operations:
- method: PUT
name: upsertteammembersapiaccountsaccountidteamsidmembersput
description: Upsert Team Members
call: prefect-teams.upsertteammembersapiaccountsaccountidteamsidmembersput
with:
id: rest.id
account_id: rest.account_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/api/accounts/{account-id}/teams/{team-id}/members/{actor-id}
name: api-accounts-account-id-teams-team-id-members-actor-id
description: REST surface for api-accounts-account_id-teams-team_id-members-actor_id.
operations:
- method: DELETE
name: removeteammemberapiaccountsaccountidteamsteamidmembersactoriddelete
description: Remove Team Member
call: prefect-teams.removeteammemberapiaccountsaccountidteamsteamidmembersactoriddelete
with:
account_id: rest.account_id
team_id: rest.team_id
actor_id: rest.actor_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: prefect-teams-mcp
port: 9090
transport: http
description: MCP adapter for Prefect Cloud API — Teams. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: create-team
description: Create Team
hints:
readOnly: false
destructive: false
idempotent: false
call: prefect-teams.createteamapiaccountsaccountidteamspost
with:
account_id: tools.account_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: read-teams
description: Read Teams
hints:
readOnly: false
destructive: false
idempotent: false
call: prefect-teams.readteamsapiaccountsaccountidteamsfilterpost
with:
account_id: tools.account_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: read-team
description: Read Team
hints:
readOnly: true
destructive: false
idempotent: true
call: prefect-teams.readteamapiaccountsaccountidteamsidget
with:
id: tools.id
account_id: tools.account_id
outputParameters:
- type: object
mapping: $.
- name: update-team
description: Update Team
hints:
readOnly: false
destructive: false
idempotent: true
call: prefect-teams.updateteamapiaccountsaccountidteamsidput
with:
id: tools.id
account_id: tools.account_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-team
description: Delete Team
hints:
readOnly: false
destructive: true
idempotent: true
call: prefect-teams.deleteteamapiaccountsaccountidteamsiddelete
with:
id: tools.id
account_id: tools.account_id
outputParameters:
- type: object
mapping: $.
- name: upsert-team-members
description: Upsert Team Members
hints:
readOnly: false
destructive: false
idempotent: true
call: prefect-teams.upsertteammembersapiaccountsaccountidteamsidmembersput
with:
id: tools.id
account_id: tools.account_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: remove-team-member
description: Remove Team Member
hints:
readOnly: false
destructive: true
idempotent: true
call: prefect-teams.removeteammemberapiaccountsaccountidteamsteamidmembersactoriddelete
with:
account_id: tools.account_id
team_id: tools.team_id
actor_id: tools.actor_id
outputParameters:
- type: object
mapping: $.