@atlas-kitchen/atlas-mcp 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,83 @@
1
+ #!/usr/bin/env node
2
+ // Load environment variables before any other imports
3
+ import dotenv from 'dotenv';
4
+ dotenv.config();
5
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
6
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
7
+ import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
8
+ import { AuthManager } from './auth.js';
9
+ import { AtlasClient } from './client.js';
10
+ import { createAuthTools } from './tools/auth.js';
11
+ import { createOrderTools } from './tools/orders.js';
12
+ import { createMenuTools } from './tools/menu.js';
13
+ import { createReportingTools } from './tools/reports.js';
14
+ const server = new Server({
15
+ name: 'atlas-mcp',
16
+ version: '1.0.0',
17
+ }, {
18
+ capabilities: {
19
+ tools: {},
20
+ },
21
+ });
22
+ // Initialize auth manager and client
23
+ const authManager = new AuthManager();
24
+ const atlasClient = new AtlasClient(authManager);
25
+ // Register all tools
26
+ const allTools = [
27
+ ...createAuthTools(atlasClient, authManager),
28
+ ...createOrderTools(atlasClient, authManager),
29
+ ...createMenuTools(atlasClient, authManager),
30
+ ...createReportingTools(atlasClient, authManager),
31
+ ];
32
+ // Handle tool calls
33
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
34
+ const tool = allTools.find(t => t.name === request.params.name);
35
+ if (!tool) {
36
+ throw new Error(`Tool ${request.params.name} not found`);
37
+ }
38
+ try {
39
+ return {
40
+ content: [
41
+ {
42
+ type: 'text',
43
+ text: JSON.stringify(await tool.handler(request.params.arguments)),
44
+ },
45
+ ],
46
+ };
47
+ }
48
+ catch (error) {
49
+ return {
50
+ content: [
51
+ {
52
+ type: 'text',
53
+ text: JSON.stringify({
54
+ success: false,
55
+ error: error.message || 'An unexpected error occurred',
56
+ }),
57
+ },
58
+ ],
59
+ };
60
+ }
61
+ });
62
+ // Handle tool list requests
63
+ server.setRequestHandler(ListToolsRequestSchema, async () => {
64
+ return {
65
+ tools: allTools.map(tool => ({
66
+ name: tool.name,
67
+ description: tool.description,
68
+ inputSchema: tool.inputSchema,
69
+ })),
70
+ };
71
+ });
72
+ // Start the server
73
+ async function main() {
74
+ const transport = new StdioServerTransport();
75
+ await server.connect(transport);
76
+ // Keep the process alive
77
+ process.stdin.resume();
78
+ }
79
+ main().catch((error) => {
80
+ console.error('Server error:', error);
81
+ process.exit(1);
82
+ });
83
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=polyfills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polyfills.d.ts","sourceRoot":"","sources":["../src/polyfills.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import { AtlasClient } from '../client.js';
2
+ import { AuthManager } from '../auth.js';
3
+ interface Tool {
4
+ name: string;
5
+ description: string;
6
+ inputSchema: any;
7
+ handler: (input: unknown) => Promise<any>;
8
+ }
9
+ export declare function createAuthTools(client: AtlasClient, authManager: AuthManager): Tool[];
10
+ export {};
11
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/tools/auth.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,UAAU,IAAI;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CAC3C;AAiBD,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,EAAE,CAwJrF"}
@@ -0,0 +1,155 @@
1
+ import { z } from 'zod';
2
+ const LoginSchema = z.object({
3
+ email: z.string().email(),
4
+ password: z.string(),
5
+ });
6
+ const RefreshTokenSchema = z.object({
7
+ refreshToken: z.string().optional(),
8
+ });
9
+ const SwitchMerchantSchema = z.object({
10
+ merchantId: z.string(),
11
+ outletId: z.string().optional(),
12
+ brandId: z.string().optional(),
13
+ });
14
+ export function createAuthTools(client, authManager) {
15
+ return [
16
+ {
17
+ name: 'atlas_login',
18
+ description: 'Login to Atlas with email and password',
19
+ inputSchema: {
20
+ type: 'object',
21
+ properties: {
22
+ email: { type: 'string', description: 'User email address' },
23
+ password: { type: 'string', description: 'User password' },
24
+ },
25
+ required: ['email', 'password'],
26
+ },
27
+ handler: async (input) => {
28
+ const { email, password } = LoginSchema.parse(input);
29
+ try {
30
+ const response = await client.login(email, password);
31
+ // Store tokens
32
+ authManager.setTokens({
33
+ accessToken: response.accessToken,
34
+ refreshToken: response.refreshToken,
35
+ });
36
+ // Set first merchant as default if available
37
+ if (response.merchants && response.merchants.length > 0) {
38
+ authManager.setMerchantContext(response.merchants[0].id);
39
+ }
40
+ return {
41
+ success: true,
42
+ account: response.account,
43
+ merchants: response.merchants,
44
+ message: `Successfully logged in as ${response.account.email}`,
45
+ };
46
+ }
47
+ catch (error) {
48
+ return {
49
+ success: false,
50
+ error: error.message || 'Login failed',
51
+ };
52
+ }
53
+ },
54
+ },
55
+ {
56
+ name: 'atlas_logout',
57
+ description: 'Logout from Atlas and clear authentication',
58
+ inputSchema: {
59
+ type: 'object',
60
+ properties: {},
61
+ },
62
+ handler: async () => {
63
+ try {
64
+ if (authManager.isAuthenticated()) {
65
+ await client.logout();
66
+ }
67
+ authManager.clear();
68
+ return {
69
+ success: true,
70
+ message: 'Successfully logged out',
71
+ };
72
+ }
73
+ catch (error) {
74
+ // Even if logout fails, clear local auth
75
+ authManager.clear();
76
+ return {
77
+ success: true,
78
+ message: 'Logged out locally',
79
+ };
80
+ }
81
+ },
82
+ },
83
+ {
84
+ name: 'atlas_refresh_token',
85
+ description: 'Refresh the access token using refresh token',
86
+ inputSchema: {
87
+ type: 'object',
88
+ properties: {
89
+ refreshToken: { type: 'string', description: 'Refresh token (uses stored token if not provided)' },
90
+ },
91
+ },
92
+ handler: async (input) => {
93
+ const { refreshToken } = RefreshTokenSchema.parse(input);
94
+ try {
95
+ const tokenToUse = refreshToken || authManager.getTokens()?.refreshToken;
96
+ if (!tokenToUse) {
97
+ return {
98
+ success: false,
99
+ error: 'No refresh token available',
100
+ };
101
+ }
102
+ const response = await client.refreshToken(tokenToUse);
103
+ // Update tokens
104
+ authManager.setTokens({
105
+ accessToken: response.accessToken,
106
+ refreshToken: response.refreshToken,
107
+ });
108
+ return {
109
+ success: true,
110
+ message: 'Token refreshed successfully',
111
+ };
112
+ }
113
+ catch (error) {
114
+ return {
115
+ success: false,
116
+ error: error.message || 'Token refresh failed',
117
+ };
118
+ }
119
+ },
120
+ },
121
+ {
122
+ name: 'atlas_switch_merchant',
123
+ description: 'Switch active merchant context. IMPORTANT: Most POS operations require an outletId to be set!',
124
+ inputSchema: {
125
+ type: 'object',
126
+ properties: {
127
+ merchantId: { type: 'string', description: 'Merchant ID to switch to' },
128
+ outletId: { type: 'string', description: 'Outlet ID (REQUIRED for POS operations like atlas_get_pos_carts and atlas_get_product_insights)' },
129
+ brandId: { type: 'string', description: 'Brand ID (optional)' },
130
+ },
131
+ required: ['merchantId'],
132
+ },
133
+ handler: async (input) => {
134
+ const { merchantId, outletId, brandId } = SwitchMerchantSchema.parse(input);
135
+ if (!authManager.isAuthenticated()) {
136
+ return {
137
+ success: false,
138
+ error: 'Not authenticated. Please login first.',
139
+ };
140
+ }
141
+ authManager.setMerchantContext(merchantId, outletId, brandId);
142
+ return {
143
+ success: true,
144
+ message: 'Merchant context switched successfully',
145
+ context: {
146
+ merchantId,
147
+ outletId: outletId || null,
148
+ brandId: brandId || null,
149
+ },
150
+ };
151
+ },
152
+ },
153
+ ];
154
+ }
155
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/tools/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { AtlasClient } from '../client.js';
2
+ import { AuthManager } from '../auth.js';
3
+ interface Tool {
4
+ name: string;
5
+ description: string;
6
+ inputSchema: any;
7
+ handler: (input: unknown) => Promise<any>;
8
+ }
9
+ export declare function createMenuTools(client: AtlasClient, authManager: AuthManager): Tool[];
10
+ export {};
11
+ //# sourceMappingURL=menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.d.ts","sourceRoot":"","sources":["../../src/tools/menu.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,UAAU,IAAI;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CAC3C;AAqBD,wBAAgB,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,EAAE,CAwJrF"}
@@ -0,0 +1,161 @@
1
+ import { z } from 'zod';
2
+ const GetMenusSchema = z.object({
3
+ outletId: z.number().optional(),
4
+ servingDate: z.string().optional(),
5
+ timeslotType: z.string().optional(),
6
+ });
7
+ const GetOptimizedMenusSchema = z.object({
8
+ outletId: z.number(),
9
+ servingDate: z.string(),
10
+ });
11
+ const GetItemsSchema = z.object({
12
+ search: z.string().optional(),
13
+ brandId: z.number().optional(),
14
+ archived: z.boolean().optional(),
15
+ page: z.number().optional(),
16
+ perPage: z.number().optional(),
17
+ });
18
+ export function createMenuTools(client, authManager) {
19
+ return [
20
+ {
21
+ name: 'atlas_get_menus',
22
+ description: 'List available menus for a specific outlet and/or serving date',
23
+ inputSchema: {
24
+ type: 'object',
25
+ properties: {
26
+ outletId: { type: 'number', description: 'Outlet ID to filter menus' },
27
+ servingDate: { type: 'string', description: 'Serving date in ISO format (YYYY-MM-DD)' },
28
+ timeslotType: { type: 'string', description: 'Timeslot type filter' },
29
+ },
30
+ },
31
+ handler: async (input) => {
32
+ const { outletId, servingDate, timeslotType } = GetMenusSchema.parse(input);
33
+ if (!authManager.isAuthenticated()) {
34
+ return {
35
+ success: false,
36
+ error: 'Not authenticated. Please login first.',
37
+ };
38
+ }
39
+ try {
40
+ const menus = await client.getMenus(outletId, servingDate, timeslotType);
41
+ return {
42
+ success: true,
43
+ menus,
44
+ };
45
+ }
46
+ catch (error) {
47
+ return {
48
+ success: false,
49
+ error: error.message || 'Failed to fetch menus',
50
+ };
51
+ }
52
+ },
53
+ },
54
+ {
55
+ name: 'atlas_get_optimized_menus',
56
+ description: 'Get optimized menu structure with sections and items for a specific outlet and date',
57
+ inputSchema: {
58
+ type: 'object',
59
+ properties: {
60
+ outletId: { type: 'number', description: 'Outlet ID (required)' },
61
+ servingDate: { type: 'string', description: 'Serving date in ISO format YYYY-MM-DD (required)' },
62
+ },
63
+ required: ['outletId', 'servingDate'],
64
+ },
65
+ handler: async (input) => {
66
+ const { outletId, servingDate } = GetOptimizedMenusSchema.parse(input);
67
+ if (!authManager.isAuthenticated()) {
68
+ return {
69
+ success: false,
70
+ error: 'Not authenticated. Please login first.',
71
+ };
72
+ }
73
+ try {
74
+ const menus = await client.getOptimizedMenus(outletId, servingDate);
75
+ return {
76
+ success: true,
77
+ menus,
78
+ };
79
+ }
80
+ catch (error) {
81
+ return {
82
+ success: false,
83
+ error: error.message || 'Failed to fetch optimized menus',
84
+ };
85
+ }
86
+ },
87
+ },
88
+ {
89
+ name: 'atlas_get_items',
90
+ description: 'List items with optional filters',
91
+ inputSchema: {
92
+ type: 'object',
93
+ properties: {
94
+ search: { type: 'string', description: 'Search term for items' },
95
+ brandId: { type: 'number', description: 'Brand ID to filter items' },
96
+ archived: { type: 'boolean', description: 'Include archived items (default: false)' },
97
+ page: { type: 'number', description: 'Page number for pagination' },
98
+ perPage: { type: 'number', description: 'Items per page (default: 20)' },
99
+ },
100
+ },
101
+ handler: async (input) => {
102
+ const filters = GetItemsSchema.parse(input);
103
+ if (!authManager.isAuthenticated()) {
104
+ return {
105
+ success: false,
106
+ error: 'Not authenticated. Please login first.',
107
+ };
108
+ }
109
+ try {
110
+ const response = await client.getItems(filters);
111
+ return {
112
+ success: true,
113
+ items: response.items,
114
+ totalCount: response.totalCount,
115
+ page: response.page,
116
+ perPage: response.perPage,
117
+ };
118
+ }
119
+ catch (error) {
120
+ return {
121
+ success: false,
122
+ error: error.message || 'Failed to fetch items',
123
+ };
124
+ }
125
+ },
126
+ },
127
+ {
128
+ name: 'atlas_get_menu_sections',
129
+ description: 'Get menu structure with sections',
130
+ inputSchema: {
131
+ type: 'object',
132
+ properties: {},
133
+ },
134
+ handler: async () => {
135
+ if (!authManager.isAuthenticated()) {
136
+ return {
137
+ success: false,
138
+ error: 'Not authenticated. Please login first.',
139
+ };
140
+ }
141
+ try {
142
+ // This would need a more detailed query in the client
143
+ // For now, we'll return menus which can include sections
144
+ const menus = await client.getMenus();
145
+ return {
146
+ success: true,
147
+ menus,
148
+ message: 'Menu sections can be accessed through individual menu queries',
149
+ };
150
+ }
151
+ catch (error) {
152
+ return {
153
+ success: false,
154
+ error: error.message || 'Failed to fetch menu sections',
155
+ };
156
+ }
157
+ },
158
+ },
159
+ ];
160
+ }
161
+ //# sourceMappingURL=menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../src/tools/menu.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { AtlasClient } from '../client.js';
2
+ import { AuthManager } from '../auth.js';
3
+ interface Tool {
4
+ name: string;
5
+ description: string;
6
+ inputSchema: any;
7
+ handler: (input: unknown) => Promise<any>;
8
+ }
9
+ export declare function createOrderTools(client: AtlasClient, authManager: AuthManager): Tool[];
10
+ export {};
11
+ //# sourceMappingURL=orders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orders.d.ts","sourceRoot":"","sources":["../../src/tools/orders.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC,UAAU,IAAI;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;IACjB,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;CAC3C;AAkBD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,GAAG,IAAI,EAAE,CAmKtF"}