@goparrot/franchise-mcp-server
Version:
MCP Server for Franchise API
90 lines (89 loc) • 2.92 kB
JavaScript
import { dashboardBaseUrl, makeRequest } from '../../common/index.js';
/**
* Method information for dashboard legacy payment square endpoints
*/
export const LegacyPaymentSquareMethods = {
exchangeAuthorizationCodeToToken: {
description: 'Exchange authorization code for a token',
method: 'post',
path: '/payment/square/api/merchant/{storeId}/authorization-code',
pathParams: [
{
name: 'storeId',
type: 'string',
description: 'Store ID',
required: true,
},
],
queryParams: [],
requestType: 'ExchangeAuthorizationCodeRequest',
isMultipart: false,
originalName: 'exchangeAuthorizationCodeToToken',
isWrite: true,
permissions: ['store-payment:api:create'],
},
retrieveActiveLocations: {
description: 'Retrieve active Square locations for a store',
method: 'get',
path: '/payment/square/api/merchant/{storeId}/locations',
pathParams: [
{
name: 'storeId',
type: 'string',
description: 'Store ID',
required: true,
},
],
queryParams: [],
requestType: 'RetrieveActiveLocationsRequest',
isMultipart: false,
originalName: 'retrieveActiveLocations',
isWrite: false,
permissions: ['store-payment:api:read'],
},
deleteStoreConfig: {
description: 'Delete Square store configuration',
method: 'delete',
path: '/payment/square/api/merchant/{storeId}/config',
pathParams: [
{
name: 'storeId',
type: 'string',
description: 'Store ID',
required: true,
},
],
queryParams: [],
requestType: 'DeleteStoreConfigRequest',
isMultipart: false,
originalName: 'deleteStoreConfig',
isWrite: true,
permissions: ['store-payment:api:delete'],
},
};
/**
* Handlers for dashboard legacy payment square endpoints
*/
export const LegacyPaymentSquareHandlers = {
exchangeAuthorizationCodeToToken: async (accessToken, args) => {
return makeRequest(LegacyPaymentSquareMethods.exchangeAuthorizationCodeToToken, {
baseUrl: dashboardBaseUrl,
accessToken,
args,
});
},
retrieveActiveLocations: async (accessToken, args) => {
return makeRequest(LegacyPaymentSquareMethods.retrieveActiveLocations, {
baseUrl: dashboardBaseUrl,
accessToken,
args,
});
},
deleteStoreConfig: async (accessToken, args) => {
return makeRequest(LegacyPaymentSquareMethods.deleteStoreConfig, {
baseUrl: dashboardBaseUrl,
accessToken,
args,
});
},
};