Arcade · Capability
Arcade Engine — Plugins
Plugins surface — 5 operations. Lead operation: List Plugins. Self-contained Naftiko capability covering one Arcade business surface.
What You Can Do
GET
Plugins list
— List Plugins
/v1/plugins
POST
Plugins create
— Create a Plugin
/v1/plugins
GET
Plugins get
— Get a Plugin
/v1/plugins/{plugin-id}
DELETE
Plugins delete
— Delete a Plugin
/v1/plugins/{plugin-id}
PATCH
Plugins update
— Update a Plugin
/v1/plugins/{plugin-id}
MCP Tools
list-plugins
List Plugins
read-only
idempotent
create-plugin
Create a Plugin
get-plugin
Get a Plugin
read-only
idempotent
delete-plugin
Delete a Plugin
idempotent
update-plugin
Update a Plugin
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Arcade Engine — Plugins
description: 'Plugins surface — 5 operations. Lead operation: List Plugins. Self-contained Naftiko capability covering one Arcade business surface.'
tags:
- Arcade
- Engine
- Plugins
created: '2026-05-22'
modified: '2026-05-22'
binds:
- namespace: env
keys:
ARCADE_API_KEY: ARCADE_API_KEY
capability:
consumes:
- type: http
namespace: engine-plugins
baseUri: https://api.arcade.dev
description: Arcade Engine — Plugins business capability. Self-contained, no shared references.
authentication:
type: bearer
token: '{{env.ARCADE_API_KEY}}'
resources:
- name: v1-plugins
path: /v1/plugins
operations:
- name: plugins-list
method: GET
description: List Plugins
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: limit
in: query
type: integer
required: false
description: Limit
- name: offset
in: query
type: integer
required: false
description: Offset
- name: binding_type
in: query
type: string
required: false
description: Binding type filter (e.g., 'tenant')
- name: plugins-create
method: POST
description: Create a Plugin
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
required: true
description: Request body.
- name: v1-plugins-plugin-id
path: /v1/plugins/{plugin_id}
operations:
- name: plugins-get
method: GET
description: Get a Plugin
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: plugin_id
in: path
type: string
required: true
description: Plugin ID
- name: plugins-delete
method: DELETE
description: Delete a Plugin
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: plugin_id
in: path
type: string
required: true
description: Plugin ID
- name: plugins-update
method: PATCH
description: Update a Plugin
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: plugin_id
in: path
type: string
required: true
description: Plugin ID
- name: body
in: body
type: object
required: true
description: Request body.
exposes:
- type: rest
namespace: engine-plugins-rest
port: 8080
description: REST adapter for Arcade Engine — Plugins. One Spectral-compliant resource per consumed operation, prefixed with /v1.
resources:
- path: /v1/plugins
name: v1-plugins
description: REST surface for /v1/plugins.
operations:
- method: GET
name: plugins-list
description: List Plugins
call: engine-plugins.plugins-list
with:
limit: rest.limit
offset: rest.offset
binding_type: rest.binding_type
outputParameters:
- type: object
mapping: $.
- method: POST
name: plugins-create
description: Create a Plugin
call: engine-plugins.plugins-create
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/plugins/{plugin-id}
name: v1-plugins-plugin-id
description: REST surface for /v1/plugins/{plugin-id}.
operations:
- method: GET
name: plugins-get
description: Get a Plugin
call: engine-plugins.plugins-get
with:
plugin_id: rest.plugin_id
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: plugins-delete
description: Delete a Plugin
call: engine-plugins.plugins-delete
with:
plugin_id: rest.plugin_id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: plugins-update
description: Update a Plugin
call: engine-plugins.plugins-update
with:
plugin_id: rest.plugin_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: engine-plugins-mcp
port: 9090
transport: http
description: MCP adapter for Arcade Engine — Plugins. One tool per consumed operation, routed inline through this capability's consumes block.
tools:
- name: list-plugins
description: List Plugins
hints:
readOnly: true
destructive: false
idempotent: true
call: engine-plugins.plugins-list
with:
limit: tools.limit
offset: tools.offset
binding_type: tools.binding_type
outputParameters:
- type: object
mapping: $.
- name: create-plugin
description: Create a Plugin
hints:
readOnly: false
destructive: false
idempotent: false
call: engine-plugins.plugins-create
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-plugin
description: Get a Plugin
hints:
readOnly: true
destructive: false
idempotent: true
call: engine-plugins.plugins-get
with:
plugin_id: tools.plugin_id
outputParameters:
- type: object
mapping: $.
- name: delete-plugin
description: Delete a Plugin
hints:
readOnly: false
destructive: true
idempotent: true
call: engine-plugins.plugins-delete
with:
plugin_id: tools.plugin_id
outputParameters:
- type: object
mapping: $.
- name: update-plugin
description: Update a Plugin
hints:
readOnly: false
destructive: false
idempotent: true
call: engine-plugins.plugins-update
with:
plugin_id: tools.plugin_id
body: tools.body
outputParameters:
- type: object
mapping: $.