UNPKG

@goparrot/franchise-mcp-server

Version:

MCP Server for Franchise API

98 lines (97 loc) 2.78 kB
import { dashboardBaseUrl, makeRequest } from '../../../common/index.js'; /** * Method information for dashboard order endpoints */ export const OrderMethods = { // Order endpoints list: { description: 'List orders with pagination and filtering', method: 'put', path: '/orders/api/v3/orders', pathParams: [], queryParams: [ { name: 'limit', type: 'number', description: 'Number of items per page', required: false, }, { name: 'offset', type: 'number', description: 'Offset for pagination', required: false, }, ], requestType: 'ListOrderRequestDto', isMultipart: false, originalName: 'list', isWrite: false, permissions: ['merchant-order:api:read', 'store-order:api:read'], }, handleActions: { description: 'Handle actions for a specific order', method: 'patch', path: '/orders/api/v2/orders/{uuid}/actions', pathParams: [ { name: 'uuid', type: 'string', description: 'Order UUID', required: true, }, ], queryParams: [], requestType: 'HandleOrderActionsRequest', isMultipart: false, originalName: 'handleActions', isWrite: true, permissions: ['store-order:api:update'], }, getOrder: { description: 'Get a specific order by UUID', method: 'get', path: '/orders/api/v2/orders/{uuid}', pathParams: [ { name: 'uuid', type: 'string', description: 'Order UUID', required: true, }, ], queryParams: [], requestType: 'GetOrderRequest', isMultipart: false, originalName: 'getOrder', isWrite: false, permissions: ['store-order:api:read'], }, }; /** * Handlers for dashboard order endpoints */ export const OrderHandlers = { // Order handlers list: async (accessToken, args) => { return makeRequest(OrderMethods.list, { baseUrl: dashboardBaseUrl, accessToken, args, }); }, handleActions: async (accessToken, args) => { return makeRequest(OrderMethods.handleActions, { baseUrl: dashboardBaseUrl, accessToken, args, }); }, getOrder: async (accessToken, args) => { return makeRequest(OrderMethods.getOrder, { baseUrl: dashboardBaseUrl, accessToken, args, }); }, };