@remix-gg/mcp 0.4.3

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.
Files changed (139) hide show
  1. package/README.md +81 -0
  2. package/dist/client-helpers/index.d.ts +2 -0
  3. package/dist/client-helpers/index.d.ts.map +1 -0
  4. package/dist/client-helpers/index.js +2 -0
  5. package/dist/client-helpers/index.js.map +1 -0
  6. package/dist/config.d.ts +20 -0
  7. package/dist/config.d.ts.map +1 -0
  8. package/dist/config.js +58 -0
  9. package/dist/config.js.map +1 -0
  10. package/dist/core/api-client.d.ts +4 -0
  11. package/dist/core/api-client.d.ts.map +1 -0
  12. package/dist/core/api-client.js +12 -0
  13. package/dist/core/api-client.js.map +1 -0
  14. package/dist/core/config.d.ts +6 -0
  15. package/dist/core/config.d.ts.map +1 -0
  16. package/dist/core/config.js +19 -0
  17. package/dist/core/config.js.map +1 -0
  18. package/dist/core/index.d.ts +5 -0
  19. package/dist/core/index.d.ts.map +1 -0
  20. package/dist/core/index.js +4 -0
  21. package/dist/core/index.js.map +1 -0
  22. package/dist/core/skills.d.ts +22 -0
  23. package/dist/core/skills.d.ts.map +1 -0
  24. package/dist/core/skills.js +49 -0
  25. package/dist/core/skills.js.map +1 -0
  26. package/dist/core/tool-defs.d.ts +12 -0
  27. package/dist/core/tool-defs.d.ts.map +1 -0
  28. package/dist/core/tool-defs.js +356 -0
  29. package/dist/core/tool-defs.js.map +1 -0
  30. package/dist/core/tools/create-game.d.ts +9 -0
  31. package/dist/core/tools/create-game.d.ts.map +1 -0
  32. package/dist/core/tools/create-game.js +21 -0
  33. package/dist/core/tools/create-game.js.map +1 -0
  34. package/dist/core/tools/create-shop-item.d.ts +14 -0
  35. package/dist/core/tools/create-shop-item.d.ts.map +1 -0
  36. package/dist/core/tools/create-shop-item.js +78 -0
  37. package/dist/core/tools/create-shop-item.js.map +1 -0
  38. package/dist/core/tools/delete-shop-item.d.ts +9 -0
  39. package/dist/core/tools/delete-shop-item.d.ts.map +1 -0
  40. package/dist/core/tools/delete-shop-item.js +19 -0
  41. package/dist/core/tools/delete-shop-item.js.map +1 -0
  42. package/dist/core/tools/generate-image.d.ts +8 -0
  43. package/dist/core/tools/generate-image.d.ts.map +1 -0
  44. package/dist/core/tools/generate-image.js +32 -0
  45. package/dist/core/tools/generate-image.js.map +1 -0
  46. package/dist/core/tools/generate-sprite-sheet.d.ts +14 -0
  47. package/dist/core/tools/generate-sprite-sheet.d.ts.map +1 -0
  48. package/dist/core/tools/generate-sprite-sheet.js +29 -0
  49. package/dist/core/tools/generate-sprite-sheet.js.map +1 -0
  50. package/dist/core/tools/helpers.d.ts +60 -0
  51. package/dist/core/tools/helpers.d.ts.map +1 -0
  52. package/dist/core/tools/helpers.js +68 -0
  53. package/dist/core/tools/helpers.js.map +1 -0
  54. package/dist/core/tools/index.d.ts +13 -0
  55. package/dist/core/tools/index.d.ts.map +1 -0
  56. package/dist/core/tools/index.js +13 -0
  57. package/dist/core/tools/index.js.map +1 -0
  58. package/dist/core/tools/list-shop-items.d.ts +8 -0
  59. package/dist/core/tools/list-shop-items.d.ts.map +1 -0
  60. package/dist/core/tools/list-shop-items.js +17 -0
  61. package/dist/core/tools/list-shop-items.js.map +1 -0
  62. package/dist/core/tools/update-game.d.ts +11 -0
  63. package/dist/core/tools/update-game.d.ts.map +1 -0
  64. package/dist/core/tools/update-game.js +22 -0
  65. package/dist/core/tools/update-game.js.map +1 -0
  66. package/dist/core/tools/update-shop-item.d.ts +15 -0
  67. package/dist/core/tools/update-shop-item.d.ts.map +1 -0
  68. package/dist/core/tools/update-shop-item.js +24 -0
  69. package/dist/core/tools/update-shop-item.js.map +1 -0
  70. package/dist/core/tools/upload-game-asset.d.ts +8 -0
  71. package/dist/core/tools/upload-game-asset.d.ts.map +1 -0
  72. package/dist/core/tools/upload-game-asset.js +43 -0
  73. package/dist/core/tools/upload-game-asset.js.map +1 -0
  74. package/dist/core/tools/upload-version.d.ts +8 -0
  75. package/dist/core/tools/upload-version.d.ts.map +1 -0
  76. package/dist/core/tools/upload-version.js +20 -0
  77. package/dist/core/tools/upload-version.js.map +1 -0
  78. package/dist/core/tools/validate-game.d.ts +6 -0
  79. package/dist/core/tools/validate-game.d.ts.map +1 -0
  80. package/dist/core/tools/validate-game.js +41 -0
  81. package/dist/core/tools/validate-game.js.map +1 -0
  82. package/dist/core/tools.test.d.ts +2 -0
  83. package/dist/core/tools.test.d.ts.map +1 -0
  84. package/dist/core/tools.test.js +825 -0
  85. package/dist/core/tools.test.js.map +1 -0
  86. package/dist/generated/server-api.d.ts +3673 -0
  87. package/dist/generated/server-api.d.ts.map +1 -0
  88. package/dist/generated/server-api.js +2 -0
  89. package/dist/generated/server-api.js.map +1 -0
  90. package/dist/index.d.ts +3 -0
  91. package/dist/index.d.ts.map +1 -0
  92. package/dist/index.js +365 -0
  93. package/dist/index.js.map +1 -0
  94. package/dist/server/create-server.d.ts +12 -0
  95. package/dist/server/create-server.d.ts.map +1 -0
  96. package/dist/server/create-server.js +29 -0
  97. package/dist/server/create-server.js.map +1 -0
  98. package/dist/server/create-server.test.d.ts +2 -0
  99. package/dist/server/create-server.test.d.ts.map +1 -0
  100. package/dist/server/create-server.test.js +37 -0
  101. package/dist/server/create-server.test.js.map +1 -0
  102. package/dist/server/index.d.ts +3 -0
  103. package/dist/server/index.d.ts.map +1 -0
  104. package/dist/server/index.js +8 -0
  105. package/dist/server/index.js.map +1 -0
  106. package/dist/server/lib/config.d.ts +2 -0
  107. package/dist/server/lib/config.d.ts.map +1 -0
  108. package/dist/server/lib/config.js +2 -0
  109. package/dist/server/lib/config.js.map +1 -0
  110. package/dist/server/resources/skills.d.ts +3 -0
  111. package/dist/server/resources/skills.d.ts.map +1 -0
  112. package/dist/server/resources/skills.js +60 -0
  113. package/dist/server/resources/skills.js.map +1 -0
  114. package/dist/server/resources/skills.test.d.ts +2 -0
  115. package/dist/server/resources/skills.test.d.ts.map +1 -0
  116. package/dist/server/resources/skills.test.js +44 -0
  117. package/dist/server/resources/skills.test.js.map +1 -0
  118. package/dist/server/tools/register.d.ts +3 -0
  119. package/dist/server/tools/register.d.ts.map +1 -0
  120. package/dist/server/tools/register.js +26 -0
  121. package/dist/server/tools/register.js.map +1 -0
  122. package/dist/server/tools/register.test.d.ts +2 -0
  123. package/dist/server/tools/register.test.d.ts.map +1 -0
  124. package/dist/server/tools/register.test.js +85 -0
  125. package/dist/server/tools/register.test.js.map +1 -0
  126. package/dist/types.d.ts +73 -0
  127. package/dist/types.d.ts.map +1 -0
  128. package/dist/types.js +31 -0
  129. package/dist/types.js.map +1 -0
  130. package/package.json +38 -0
  131. package/skills/SKILL.md +82 -0
  132. package/skills/actions/open-game.md +18 -0
  133. package/skills/workflows/add-image-to-game.md +121 -0
  134. package/skills/workflows/add-sprite-to-game.md +127 -0
  135. package/skills/workflows/game-creation.md +124 -0
  136. package/skills/workflows/implement-multiplayer.md +355 -0
  137. package/skills/workflows/integrate-save-game.md +135 -0
  138. package/skills/workflows/manage-shop-items.md +246 -0
  139. package/skills/workflows/upload-game.md +74 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-api.d.ts","sourceRoot":"","sources":["../../src/generated/server-api.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=server-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-api.js","sourceRoot":"","sources":["../../src/generated/server-api.ts"],"names":[],"mappings":""}
@@ -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,365 @@
1
+ #!/usr/bin/env node
2
+ import { readFile } from 'node:fs/promises';
3
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
4
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
5
+ import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
6
+ import { loadConfig, saveConfig, validateApiKey } from './config.js';
7
+ import { CreateGameInputSchema, SetConfigInputSchema, UploadVersionInputSchema, } from './types.js';
8
+ /**
9
+ * Remix MCP Server
10
+ * Provides tools for managing game uploads to Remix
11
+ */
12
+ class RemixMCPServer {
13
+ server;
14
+ constructor() {
15
+ this.server = new Server({
16
+ name: 'remix-mcp',
17
+ version: '0.0.1',
18
+ }, {
19
+ capabilities: {
20
+ tools: {},
21
+ },
22
+ });
23
+ this.setupToolHandlers();
24
+ this.setupErrorHandling();
25
+ }
26
+ setupErrorHandling() {
27
+ this.server.onerror = (error) => {
28
+ console.error('[MCP Error]', error);
29
+ };
30
+ process.on('SIGINT', async () => {
31
+ await this.server.close();
32
+ process.exit(0);
33
+ });
34
+ }
35
+ setupToolHandlers() {
36
+ // List available tools
37
+ this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
38
+ tools: [
39
+ {
40
+ name: 'set_config',
41
+ description: 'Set configuration values for Remix MCP (gameId, apiKey, apiUrl). Values are persisted to .remix-mcp.json in the current directory.',
42
+ inputSchema: {
43
+ type: 'object',
44
+ properties: {
45
+ gameId: {
46
+ type: 'string',
47
+ description: 'The game ID to upload versions for',
48
+ },
49
+ apiKey: {
50
+ type: 'string',
51
+ description: 'API key for authentication',
52
+ },
53
+ apiUrl: {
54
+ type: 'string',
55
+ description: 'API URL (defaults to https://remix.gg)',
56
+ },
57
+ },
58
+ },
59
+ },
60
+ {
61
+ name: 'get_config',
62
+ description: 'FOR DEBUGGING ONLY. View current configuration. DO NOT call this before upload_version - just call upload_version directly and it will provide helpful errors if anything is missing.',
63
+ inputSchema: {
64
+ type: 'object',
65
+ properties: {},
66
+ },
67
+ },
68
+ {
69
+ name: 'list_games',
70
+ description: 'List all games created by the authenticated user. Only call this if the user explicitly asks to see their games list. For uploads, just call upload_version directly - it will show the games list automatically if gameId is not configured.',
71
+ inputSchema: {
72
+ type: 'object',
73
+ properties: {},
74
+ },
75
+ },
76
+ {
77
+ name: 'create_game',
78
+ description: 'Create a new game on Remix and upload the initial version. Requires apiKey to be configured. Automatically sets the gameId in config after creation. IMPORTANT: This uploads the initial code, so upload_version is NOT needed afterward.',
79
+ inputSchema: {
80
+ type: 'object',
81
+ properties: {
82
+ name: {
83
+ type: 'string',
84
+ description: 'Name of the game to create',
85
+ },
86
+ codePath: {
87
+ type: 'string',
88
+ description: 'Path to the initial game code file',
89
+ },
90
+ },
91
+ required: ['name', 'codePath'],
92
+ },
93
+ },
94
+ {
95
+ name: 'upload_version',
96
+ description: 'Upload a new game version to Remix. Just call this tool directly - it will automatically check if apiKey and gameId are configured and provide helpful interactive errors with next steps if anything is missing. No need to check config first.',
97
+ inputSchema: {
98
+ type: 'object',
99
+ properties: {
100
+ codePath: {
101
+ type: 'string',
102
+ description: 'Path to the game code file to upload',
103
+ },
104
+ },
105
+ required: ['codePath'],
106
+ },
107
+ },
108
+ ],
109
+ }));
110
+ // Handle tool calls
111
+ this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
112
+ const { name, arguments: args } = request.params;
113
+ try {
114
+ switch (name) {
115
+ case 'set_config':
116
+ return await this.handleSetConfig(args);
117
+ case 'get_config':
118
+ return await this.handleGetConfig();
119
+ case 'list_games':
120
+ return await this.handleListGames();
121
+ case 'create_game':
122
+ return await this.handleCreateGame(args);
123
+ case 'upload_version':
124
+ return await this.handleUploadVersion(args);
125
+ default:
126
+ throw new Error(`Unknown tool: ${name}`);
127
+ }
128
+ }
129
+ catch (error) {
130
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
131
+ return {
132
+ content: [
133
+ {
134
+ type: 'text',
135
+ text: `Error: ${errorMessage}`,
136
+ },
137
+ ],
138
+ isError: true,
139
+ };
140
+ }
141
+ });
142
+ }
143
+ async handleSetConfig(args) {
144
+ const input = SetConfigInputSchema.parse(args);
145
+ const updated = await saveConfig(input);
146
+ const statusLines = [
147
+ 'Configuration updated successfully:',
148
+ `- gameId: ${updated.gameId || '(not set)'}`,
149
+ `- apiKey: ${updated.apiKey ? `***${updated.apiKey.slice(-4)}` : '(not set)'}`,
150
+ `- apiUrl: ${updated.apiUrl || 'https://remix.gg (default)'}`,
151
+ '',
152
+ 'Configuration saved to .remix-mcp.json',
153
+ ];
154
+ return {
155
+ content: [
156
+ {
157
+ type: 'text',
158
+ text: statusLines.join('\n'),
159
+ },
160
+ ],
161
+ };
162
+ }
163
+ async handleGetConfig() {
164
+ const config = await loadConfig();
165
+ const statusLines = [
166
+ 'Current configuration:',
167
+ `- gameId: ${config.gameId || '(not set)'}`,
168
+ `- apiKey: ${config.apiKey ? `***${config.apiKey.slice(-4)}` : '(not set)'}`,
169
+ `- apiUrl: ${config.apiUrl || 'https://remix.gg (default)'}`,
170
+ '',
171
+ config.gameId && config.apiKey
172
+ ? '✓ Ready to upload versions'
173
+ : '⚠ Missing required configuration. Use set_config to configure gameId and apiKey.',
174
+ ];
175
+ return {
176
+ content: [
177
+ {
178
+ type: 'text',
179
+ text: statusLines.join('\n'),
180
+ },
181
+ ],
182
+ };
183
+ }
184
+ async handleListGames() {
185
+ const config = await loadConfig();
186
+ const { apiKey, apiUrl } = validateApiKey(config);
187
+ // Fetch games from API
188
+ const url = `${apiUrl}/api/v1/games`;
189
+ const response = await fetch(url, {
190
+ method: 'GET',
191
+ headers: {
192
+ Authorization: `Bearer ${apiKey}`,
193
+ },
194
+ });
195
+ const data = (await response.json());
196
+ if (!response.ok) {
197
+ throw new Error(data.error || `Failed to fetch games with status ${response.status}`);
198
+ }
199
+ if (!data.games || data.games.length === 0) {
200
+ return {
201
+ content: [
202
+ {
203
+ type: 'text',
204
+ text: 'No games found. Use create_game to create your first game!',
205
+ },
206
+ ],
207
+ };
208
+ }
209
+ const gamesList = data.games
210
+ .map((game, index) => `${index + 1}. ${game.name} (ID: ${game.id})`)
211
+ .join('\n');
212
+ const resultLines = [
213
+ `Found ${data.games.length} game(s):`,
214
+ '',
215
+ gamesList,
216
+ '',
217
+ 'To set a game for uploading, use: set_config with gameId: "<game-id>"',
218
+ ];
219
+ return {
220
+ content: [
221
+ {
222
+ type: 'text',
223
+ text: resultLines.join('\n'),
224
+ },
225
+ ],
226
+ };
227
+ }
228
+ async handleCreateGame(args) {
229
+ const input = CreateGameInputSchema.parse(args);
230
+ const config = await loadConfig();
231
+ const { apiKey, apiUrl } = validateApiKey(config);
232
+ // Read the game code file
233
+ const code = await readFile(input.codePath, 'utf-8');
234
+ // Create game via API
235
+ const url = `${apiUrl}/api/v1/games`;
236
+ const response = await fetch(url, {
237
+ method: 'POST',
238
+ headers: {
239
+ 'Content-Type': 'application/json',
240
+ Authorization: `Bearer ${apiKey}`,
241
+ },
242
+ body: JSON.stringify({ name: input.name, code }),
243
+ });
244
+ const data = (await response.json());
245
+ if (!response.ok) {
246
+ throw new Error(data.error || `Failed to create game with status ${response.status}`);
247
+ }
248
+ if (!data.game) {
249
+ throw new Error('Game created but no game data returned');
250
+ }
251
+ // Automatically set the gameId in config
252
+ await saveConfig({ gameId: data.game.id });
253
+ const resultLines = [
254
+ '✓ Game created successfully with initial code uploaded!',
255
+ '',
256
+ `Name: ${data.game.name}`,
257
+ `Game ID: ${data.game.id}`,
258
+ `Created: ${data.game.createdAt}`,
259
+ '',
260
+ '✓ gameId automatically configured in .remix-mcp.json',
261
+ '',
262
+ 'IMPORTANT: The initial version has already been uploaded.',
263
+ 'No further action is needed at this time.',
264
+ '',
265
+ 'For future updates to this game, use:',
266
+ ' upload_version with codePath: "<path-to-updated-code>"',
267
+ ];
268
+ return {
269
+ content: [
270
+ {
271
+ type: 'text',
272
+ text: resultLines.join('\n'),
273
+ },
274
+ ],
275
+ };
276
+ }
277
+ async handleUploadVersion(args) {
278
+ const input = UploadVersionInputSchema.parse(args);
279
+ const config = await loadConfig();
280
+ // Step 1: Validate API key is configured
281
+ const { apiKey, apiUrl } = validateApiKey(config);
282
+ // Step 2: Check if gameId is configured
283
+ if (!config.gameId) {
284
+ // Fetch games to help user choose
285
+ const gamesUrl = `${apiUrl}/api/v1/games`;
286
+ const gamesResponse = await fetch(gamesUrl, {
287
+ method: 'GET',
288
+ headers: {
289
+ Authorization: `Bearer ${apiKey}`,
290
+ },
291
+ });
292
+ const gamesData = (await gamesResponse.json());
293
+ if (!gamesResponse.ok) {
294
+ throw new Error(gamesData.error || `Failed to fetch games with status ${gamesResponse.status}`);
295
+ }
296
+ // Build helpful error message with game options
297
+ const errorLines = [
298
+ 'gameId is not configured. Please choose one of the following options:',
299
+ '',
300
+ ];
301
+ if (gamesData.games && gamesData.games.length > 0) {
302
+ errorLines.push('Your existing games:');
303
+ for (const [index, game] of gamesData.games.entries()) {
304
+ errorLines.push(`${index + 1}. ${game.name} (ID: ${game.id})`);
305
+ }
306
+ errorLines.push('');
307
+ errorLines.push('To upload to an existing game, use:');
308
+ errorLines.push(' set_config with gameId: "<game-id-from-above>"');
309
+ errorLines.push('');
310
+ errorLines.push(`${gamesData.games.length + 1}. Create a new game`);
311
+ }
312
+ else {
313
+ errorLines.push('You have no existing games.');
314
+ errorLines.push('');
315
+ errorLines.push('1. Create a new game');
316
+ }
317
+ errorLines.push('');
318
+ errorLines.push('To create a new game, use:');
319
+ errorLines.push(' create_game with name: "<game-name>" and codePath: "<path-to-code>"');
320
+ throw new Error(errorLines.join('\n'));
321
+ }
322
+ // Step 3: Both apiKey and gameId are configured, proceed with upload
323
+ const gameId = config.gameId;
324
+ // Read the game code file
325
+ const code = await readFile(input.codePath, 'utf-8');
326
+ // Upload to Remix API
327
+ const url = `${apiUrl}/api/v1/games/${gameId}/versions`;
328
+ const response = await fetch(url, {
329
+ method: 'POST',
330
+ headers: {
331
+ 'Content-Type': 'application/json',
332
+ Authorization: `Bearer ${apiKey}`,
333
+ },
334
+ body: JSON.stringify({ code }),
335
+ });
336
+ const data = (await response.json());
337
+ if (!response.ok) {
338
+ throw new Error(data.error || `Upload failed with status ${response.status}`);
339
+ }
340
+ const resultLines = [
341
+ '✓ Game version uploaded successfully!',
342
+ '',
343
+ `Version ID: ${data.version?.id}`,
344
+ `Version Title: ${data.version?.title}`,
345
+ `Created: ${data.version?.createdAt}`,
346
+ ];
347
+ return {
348
+ content: [
349
+ {
350
+ type: 'text',
351
+ text: resultLines.join('\n'),
352
+ },
353
+ ],
354
+ };
355
+ }
356
+ async run() {
357
+ const transport = new StdioServerTransport();
358
+ await this.server.connect(transport);
359
+ console.error('Remix MCP Server running on stdio');
360
+ }
361
+ }
362
+ // Start the server
363
+ const server = new RemixMCPServer();
364
+ server.run().catch(console.error);
365
+ //# 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,12 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { registerSkillResources } from './resources/skills.js';
3
+ import { registerAllTools } from './tools/register.js';
4
+ export declare const SERVER_INSTRUCTIONS: string;
5
+ type McpServerConstructor = typeof McpServer;
6
+ export declare function createServer({ McpServerClass, registerTools, registerResources, }?: {
7
+ McpServerClass?: McpServerConstructor;
8
+ registerTools?: typeof registerAllTools;
9
+ registerResources?: typeof registerSkillResources;
10
+ }): McpServer;
11
+ export {};
12
+ //# sourceMappingURL=create-server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-server.d.ts","sourceRoot":"","sources":["../../src/server/create-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,eAAO,MAAM,mBAAmB,QAcI,CAAA;AAEpC,KAAK,oBAAoB,GAAG,OAAO,SAAS,CAAA;AAE5C,wBAAgB,YAAY,CAAC,EAC3B,cAA0B,EAC1B,aAAgC,EAChC,iBAA0C,GAC3C,GAAE;IACD,cAAc,CAAC,EAAE,oBAAoB,CAAA;IACrC,aAAa,CAAC,EAAE,OAAO,gBAAgB,CAAA;IACvC,iBAAiB,CAAC,EAAE,OAAO,sBAAsB,CAAA;CAC7C,aAeL"}
@@ -0,0 +1,29 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { registerSkillResources } from './resources/skills.js';
3
+ import { registerAllTools } from './tools/register.js';
4
+ export const SERVER_INSTRUCTIONS = 'IMPORTANT CONVENTIONS:\n' +
5
+ '1. Skills first: Before performing ANY Remix task, load the matching skill ' +
6
+ 'resource (e.g. skills://open-game) and follow its instructions exactly. ' +
7
+ 'Do NOT guess URLs, tool parameters, or steps from general knowledge.\n' +
8
+ '2. Check for existing game BEFORE creating: ALWAYS read `.remix-settings.json` ' +
9
+ 'in the project root before calling createGame. If the file contains `gameId` ' +
10
+ 'and `versionId`, do NOT call createGame — use the existing IDs. ' +
11
+ 'Calling createGame when IDs already exist creates a duplicate game.\n' +
12
+ '3. Game settings file: Projects store their Remix game ID, version ID, ' +
13
+ 'and name in a `.remix-settings.json` file in the project root. ' +
14
+ 'ALWAYS check for this file before asking the user for game or version IDs.\n' +
15
+ '4. File reading: The validateGame and uploadVersion tools read game files ' +
16
+ 'from disk themselves. NEVER read HTML game files before calling these ' +
17
+ 'tools — just pass the file path.';
18
+ export function createServer({ McpServerClass = McpServer, registerTools = registerAllTools, registerResources = registerSkillResources, } = {}) {
19
+ const server = new McpServerClass({
20
+ name: 'remix-mcp',
21
+ version: '0.1.0',
22
+ }, {
23
+ instructions: SERVER_INSTRUCTIONS,
24
+ });
25
+ registerTools(server);
26
+ registerResources(server);
27
+ return server;
28
+ }
29
+ //# sourceMappingURL=create-server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-server.js","sourceRoot":"","sources":["../../src/server/create-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAEtD,MAAM,CAAC,MAAM,mBAAmB,GAC9B,0BAA0B;IAC1B,6EAA6E;IAC7E,0EAA0E;IAC1E,wEAAwE;IACxE,iFAAiF;IACjF,+EAA+E;IAC/E,kEAAkE;IAClE,uEAAuE;IACvE,yEAAyE;IACzE,iEAAiE;IACjE,8EAA8E;IAC9E,4EAA4E;IAC5E,wEAAwE;IACxE,kCAAkC,CAAA;AAIpC,MAAM,UAAU,YAAY,CAAC,EAC3B,cAAc,GAAG,SAAS,EAC1B,aAAa,GAAG,gBAAgB,EAChC,iBAAiB,GAAG,sBAAsB,MAKxC,EAAE;IACJ,MAAM,MAAM,GAAG,IAAI,cAAc,CAC/B;QACE,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,OAAO;KACjB,EACD;QACE,YAAY,EAAE,mBAAmB;KAClC,CACF,CAAA;IAED,aAAa,CAAC,MAAM,CAAC,CAAA;IACrB,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAEzB,OAAO,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=create-server.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-server.test.d.ts","sourceRoot":"","sources":["../../src/server/create-server.test.ts"],"names":[],"mappings":""}