naftiko: 1.0.0-alpha2
info:
label: Vendure Admin API — Channels & Sellers
description: >-
Vendure Admin API capability for multi-channel and multi-seller
configuration: channels, sellers, stock locations, currency, default
channel.
tags:
- Vendure
- Admin
- Channels
- Sellers
- Multi-Tenant
created: '2026-05-25'
modified: '2026-05-25'
binds:
- namespace: env
keys:
VENDURE_ADMIN_API_URL: VENDURE_ADMIN_API_URL
VENDURE_ADMIN_TOKEN: VENDURE_ADMIN_TOKEN
capability:
consumes:
- type: http
namespace: admin-channels
baseUri: '{{env.VENDURE_ADMIN_API_URL}}'
description: Vendure Admin GraphQL endpoint for channel and seller operations.
resources:
- name: admin-graphql
path: /
operations:
- { name: queryChannels, method: POST, description: List channels., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: queryChannel, method: POST, description: Get a channel., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: createChannel, method: POST, description: Create a channel., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: updateChannel, method: POST, description: Update a channel., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: querySellers, method: POST, description: List sellers., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: createSeller, method: POST, description: Create a seller., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: queryStockLocations, method: POST, description: List stock locations., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
- { name: createStockLocation, method: POST, description: Create a stock location., outputRawFormat: json, outputParameters: [ { name: result, type: object, value: $. } ], inputParameters: [ { name: body, in: body, type: object, required: true } ] }
authentication:
type: bearer
token: '{{env.VENDURE_ADMIN_TOKEN}}'
exposes:
- type: rest
namespace: admin-channels-rest
port: 8080
description: REST adapter exposing Admin channel operations.
resources:
- { path: /v1/admin/channels/query, name: channels, operations: [ { method: POST, name: queryChannels, call: admin-channels.queryChannels, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/channel/query, name: channel, operations: [ { method: POST, name: queryChannel, call: admin-channels.queryChannel, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/channel/create, name: channel-create, operations: [ { method: POST, name: createChannel, call: admin-channels.createChannel, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/channel/update, name: channel-update, operations: [ { method: POST, name: updateChannel, call: admin-channels.updateChannel, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/sellers/query, name: sellers, operations: [ { method: POST, name: querySellers, call: admin-channels.querySellers, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/seller/create, name: seller-create, operations: [ { method: POST, name: createSeller, call: admin-channels.createSeller, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/stock-locations/query, name: stock-locations, operations: [ { method: POST, name: queryStockLocations, call: admin-channels.queryStockLocations, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- { path: /v1/admin/stock-location/create, name: stock-location-create, operations: [ { method: POST, name: createStockLocation, call: admin-channels.createStockLocation, with: { body: rest.body }, outputParameters: [ { type: object, mapping: $. } ] } ] }
- type: mcp
namespace: admin-channels-mcp
port: 9090
transport: http
description: MCP adapter — one tool per Admin channel/seller operation.
tools:
- { name: vendure-admin-list-channels, description: List channels., hints: { readOnly: true, destructive: false, idempotent: true }, call: admin-channels.queryChannels, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-get-channel, description: Get a channel., hints: { readOnly: true, destructive: false, idempotent: true }, call: admin-channels.queryChannel, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-create-channel, description: Create a channel., hints: { readOnly: false, destructive: false, idempotent: false }, call: admin-channels.createChannel, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-update-channel, description: Update a channel., hints: { readOnly: false, destructive: false, idempotent: true }, call: admin-channels.updateChannel, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-list-sellers, description: List sellers., hints: { readOnly: true, destructive: false, idempotent: true }, call: admin-channels.querySellers, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-create-seller, description: Create a seller., hints: { readOnly: false, destructive: false, idempotent: false }, call: admin-channels.createSeller, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-list-stock-locations, description: List stock locations., hints: { readOnly: true, destructive: false, idempotent: true }, call: admin-channels.queryStockLocations, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }
- { name: vendure-admin-create-stock-location, description: Create a stock location., hints: { readOnly: false, destructive: false, idempotent: false }, call: admin-channels.createStockLocation, with: { body: tools.body }, outputParameters: [ { type: object, mapping: $. } ] }