@stabgan/openrouter-mcp-multimodal 1.4.0 → 1.8.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.
Files changed (42) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +164 -147
  3. package/dist/__tests__/image-utils.test.d.ts +1 -0
  4. package/dist/__tests__/image-utils.test.js +75 -0
  5. package/dist/__tests__/integration.test.d.ts +1 -0
  6. package/dist/__tests__/integration.test.js +111 -0
  7. package/dist/__tests__/model-cache.test.d.ts +1 -0
  8. package/dist/__tests__/model-cache.test.js +96 -0
  9. package/dist/index.js +47 -46
  10. package/dist/model-cache.d.ts +18 -46
  11. package/dist/model-cache.js +28 -125
  12. package/dist/openrouter-api.d.ts +2 -22
  13. package/dist/openrouter-api.js +34 -111
  14. package/dist/tool-handlers/analyze-image.d.ts +2 -17
  15. package/dist/tool-handlers/analyze-image.js +18 -259
  16. package/dist/tool-handlers/chat-completion.d.ts +1 -0
  17. package/dist/tool-handlers/chat-completion.js +10 -143
  18. package/dist/tool-handlers/generate-image.d.ts +30 -0
  19. package/dist/tool-handlers/generate-image.js +82 -0
  20. package/dist/tool-handlers/get-model-info.d.ts +5 -5
  21. package/dist/tool-handlers/get-model-info.js +11 -41
  22. package/dist/tool-handlers/image-utils.d.ts +11 -0
  23. package/dist/tool-handlers/image-utils.js +253 -0
  24. package/dist/tool-handlers/search-models.d.ts +3 -10
  25. package/dist/tool-handlers/search-models.js +6 -37
  26. package/dist/tool-handlers/validate-model.d.ts +5 -5
  27. package/dist/tool-handlers/validate-model.js +13 -37
  28. package/dist/tool-handlers.d.ts +1 -2
  29. package/dist/tool-handlers.js +55 -234
  30. package/package.json +20 -21
  31. package/dist/index.js.map +0 -1
  32. package/dist/model-cache.js.map +0 -1
  33. package/dist/openrouter-api.js.map +0 -1
  34. package/dist/tool-handlers/analyze-image.js.map +0 -1
  35. package/dist/tool-handlers/chat-completion.js.map +0 -1
  36. package/dist/tool-handlers/get-model-info.js.map +0 -1
  37. package/dist/tool-handlers/multi-image-analysis.d.ts +0 -46
  38. package/dist/tool-handlers/multi-image-analysis.js +0 -405
  39. package/dist/tool-handlers/multi-image-analysis.js.map +0 -1
  40. package/dist/tool-handlers/search-models.js.map +0 -1
  41. package/dist/tool-handlers/validate-model.js.map +0 -1
  42. package/dist/tool-handlers.js.map +0 -1
@@ -2,315 +2,136 @@ import { CallToolRequestSchema, ErrorCode, ListToolsRequestSchema, McpError, } f
2
2
  import OpenAI from 'openai';
3
3
  import { ModelCache } from './model-cache.js';
4
4
  import { OpenRouterAPIClient } from './openrouter-api.js';
5
- // Import tool handlers
6
5
  import { handleChatCompletion } from './tool-handlers/chat-completion.js';
6
+ import { handleAnalyzeImage } from './tool-handlers/analyze-image.js';
7
7
  import { handleSearchModels } from './tool-handlers/search-models.js';
8
8
  import { handleGetModelInfo } from './tool-handlers/get-model-info.js';
9
9
  import { handleValidateModel } from './tool-handlers/validate-model.js';
10
- import { handleMultiImageAnalysis } from './tool-handlers/multi-image-analysis.js';
11
- import { handleAnalyzeImage } from './tool-handlers/analyze-image.js';
10
+ import { handleGenerateImage } from './tool-handlers/generate-image.js';
11
+ function wrapToolArgs(a) {
12
+ return { params: { arguments: a ?? {} } };
13
+ }
12
14
  export class ToolHandlers {
13
- server;
14
15
  openai;
15
- modelCache;
16
+ modelCache = ModelCache.getInstance();
16
17
  apiClient;
17
18
  defaultModel;
18
19
  constructor(server, apiKey, defaultModel) {
19
- this.server = server;
20
- this.modelCache = ModelCache.getInstance();
21
- this.apiClient = new OpenRouterAPIClient(apiKey);
22
20
  this.defaultModel = defaultModel;
21
+ this.apiClient = new OpenRouterAPIClient(apiKey);
23
22
  this.openai = new OpenAI({
24
- apiKey: apiKey,
23
+ apiKey,
25
24
  baseURL: 'https://openrouter.ai/api/v1',
26
- defaultHeaders: {
27
- 'HTTP-Referer': 'https://github.com/stabgan/openrouter-mcp-multimodal',
28
- 'X-Title': 'OpenRouter MCP Multimodal Server',
29
- },
30
25
  });
31
- this.setupToolHandlers();
26
+ this.register(server);
32
27
  }
33
- setupToolHandlers() {
34
- this.server.setRequestHandler(ListToolsRequestSchema, async () => ({
28
+ register(server) {
29
+ server.setRequestHandler(ListToolsRequestSchema, async () => ({
35
30
  tools: [
36
- // Chat Completion Tool
37
31
  {
38
- name: 'mcp_openrouter_chat_completion',
39
- description: 'Send a message to OpenRouter.ai and get a response',
32
+ name: 'chat_completion',
33
+ description: 'Send messages to an OpenRouter model and get a response',
40
34
  inputSchema: {
41
35
  type: 'object',
42
36
  properties: {
43
- model: {
44
- type: 'string',
45
- description: 'The model to use (e.g., "google/gemini-2.5-pro-exp-03-25:free", "undi95/toppy-m-7b:free"). If not provided, uses the default model if set.',
46
- },
37
+ model: { type: 'string', description: 'Model ID (optional, uses default)' },
47
38
  messages: {
48
39
  type: 'array',
49
- description: 'An array of conversation messages with roles and content',
50
40
  minItems: 1,
51
- maxItems: 100,
52
41
  items: {
53
42
  type: 'object',
54
43
  properties: {
55
- role: {
56
- type: 'string',
57
- enum: ['system', 'user', 'assistant'],
58
- description: 'The role of the message sender',
59
- },
44
+ role: { type: 'string', enum: ['system', 'user', 'assistant'] },
60
45
  content: {
61
- oneOf: [
62
- {
63
- type: 'string',
64
- description: 'The text content of the message',
65
- },
66
- {
67
- type: 'array',
68
- description: 'Array of content parts for multimodal messages (text and images)',
69
- items: {
70
- type: 'object',
71
- properties: {
72
- type: {
73
- type: 'string',
74
- enum: ['text', 'image_url'],
75
- description: 'The type of content (text or image)',
76
- },
77
- text: {
78
- type: 'string',
79
- description: 'The text content (for text type)',
80
- },
81
- image_url: {
82
- type: 'object',
83
- description: 'The image URL object (for image_url type)',
84
- properties: {
85
- url: {
86
- type: 'string',
87
- description: 'URL of the image (can be a data URL with base64)',
88
- },
89
- },
90
- required: ['url'],
91
- },
92
- },
93
- required: ['type'],
94
- },
95
- },
96
- ],
46
+ oneOf: [{ type: 'string' }, { type: 'array', items: { type: 'object' } }],
97
47
  },
98
48
  },
99
49
  required: ['role', 'content'],
100
50
  },
101
51
  },
102
- temperature: {
103
- type: 'number',
104
- description: 'Sampling temperature (0-2)',
105
- minimum: 0,
106
- maximum: 2,
107
- },
52
+ temperature: { type: 'number', minimum: 0, maximum: 2 },
53
+ max_tokens: { type: 'number', minimum: 1 },
108
54
  },
109
55
  required: ['messages'],
110
56
  },
111
- maxContextTokens: 200000
112
57
  },
113
- // Single Image Analysis Tool
114
58
  {
115
- name: 'mcp_openrouter_analyze_image',
116
- description: 'Analyze an image using OpenRouter vision models',
59
+ name: 'analyze_image',
60
+ description: 'Analyze an image using a vision model',
117
61
  inputSchema: {
118
62
  type: 'object',
119
63
  properties: {
120
- image_path: {
121
- type: 'string',
122
- description: 'Path to the image file to analyze (can be an absolute file path, URL, or base64 data URL starting with "data:")',
123
- },
124
- question: {
125
- type: 'string',
126
- description: 'Question to ask about the image',
127
- },
128
- model: {
129
- type: 'string',
130
- description: 'OpenRouter model to use (e.g., "anthropic/claude-3.5-sonnet")',
131
- },
64
+ image_path: { type: 'string', description: 'File path, URL, or data URL' },
65
+ question: { type: 'string', description: 'Question about the image' },
66
+ model: { type: 'string' },
132
67
  },
133
68
  required: ['image_path'],
134
69
  },
135
70
  },
136
- // Multi-Image Analysis Tool
137
71
  {
138
- name: 'mcp_openrouter_multi_image_analysis',
139
- description: 'Analyze multiple images at once with a single prompt and receive detailed responses',
72
+ name: 'search_models',
73
+ description: 'Search available OpenRouter models',
140
74
  inputSchema: {
141
75
  type: 'object',
142
76
  properties: {
143
- images: {
144
- type: 'array',
145
- description: 'Array of image objects to analyze',
146
- items: {
147
- type: 'object',
148
- properties: {
149
- url: {
150
- type: 'string',
151
- description: 'URL or data URL of the image (use http(s):// for web images, absolute file paths for local files, or data:image/xxx;base64,... for base64 encoded images)',
152
- },
153
- alt: {
154
- type: 'string',
155
- description: 'Optional alt text or description of the image',
156
- },
157
- },
158
- required: ['url'],
159
- },
160
- },
161
- prompt: {
162
- type: 'string',
163
- description: 'Prompt for analyzing the images',
164
- },
165
- markdown_response: {
166
- type: 'boolean',
167
- description: 'Whether to format the response in Markdown (default: true)',
168
- default: true,
169
- },
170
- model: {
171
- type: 'string',
172
- description: 'OpenRouter model to use. If not specified, the system will use a free model with vision capabilities or the default model.',
173
- },
77
+ query: { type: 'string' },
78
+ provider: { type: 'string' },
79
+ capabilities: { type: 'object', properties: { vision: { type: 'boolean' } } },
80
+ limit: { type: 'number', minimum: 1, maximum: 50 },
174
81
  },
175
- required: ['images', 'prompt'],
176
82
  },
177
83
  },
178
- // Search Models Tool
179
84
  {
180
- name: 'search_models',
181
- description: 'Search and filter OpenRouter.ai models based on various criteria',
85
+ name: 'get_model_info',
86
+ description: 'Get details about a specific model',
182
87
  inputSchema: {
183
88
  type: 'object',
184
- properties: {
185
- query: {
186
- type: 'string',
187
- description: 'Optional search query to filter by name, description, or provider',
188
- },
189
- provider: {
190
- type: 'string',
191
- description: 'Filter by specific provider (e.g., "anthropic", "openai", "cohere")',
192
- },
193
- minContextLength: {
194
- type: 'number',
195
- description: 'Minimum context length in tokens',
196
- },
197
- maxContextLength: {
198
- type: 'number',
199
- description: 'Maximum context length in tokens',
200
- },
201
- maxPromptPrice: {
202
- type: 'number',
203
- description: 'Maximum price per 1K tokens for prompts',
204
- },
205
- maxCompletionPrice: {
206
- type: 'number',
207
- description: 'Maximum price per 1K tokens for completions',
208
- },
209
- capabilities: {
210
- type: 'object',
211
- description: 'Filter by model capabilities',
212
- properties: {
213
- functions: {
214
- type: 'boolean',
215
- description: 'Requires function calling capability',
216
- },
217
- tools: {
218
- type: 'boolean',
219
- description: 'Requires tools capability',
220
- },
221
- vision: {
222
- type: 'boolean',
223
- description: 'Requires vision capability',
224
- },
225
- json_mode: {
226
- type: 'boolean',
227
- description: 'Requires JSON mode capability',
228
- }
229
- }
230
- },
231
- limit: {
232
- type: 'number',
233
- description: 'Maximum number of results to return (default: 10)',
234
- minimum: 1,
235
- maximum: 50
236
- }
237
- }
89
+ properties: { model: { type: 'string' } },
90
+ required: ['model'],
238
91
  },
239
92
  },
240
- // Get Model Info Tool
241
93
  {
242
- name: 'get_model_info',
243
- description: 'Get detailed information about a specific model',
94
+ name: 'validate_model',
95
+ description: 'Check if a model ID exists',
244
96
  inputSchema: {
245
97
  type: 'object',
246
- properties: {
247
- model: {
248
- type: 'string',
249
- description: 'The model ID to get information for',
250
- },
251
- },
98
+ properties: { model: { type: 'string' } },
252
99
  required: ['model'],
253
100
  },
254
101
  },
255
- // Validate Model Tool
256
102
  {
257
- name: 'validate_model',
258
- description: 'Check if a model ID is valid',
103
+ name: 'generate_image',
104
+ description: 'Generate an image from a text prompt',
259
105
  inputSchema: {
260
106
  type: 'object',
261
107
  properties: {
262
- model: {
263
- type: 'string',
264
- description: 'The model ID to validate',
265
- },
108
+ prompt: { type: 'string' },
109
+ model: { type: 'string' },
110
+ save_path: { type: 'string' },
266
111
  },
267
- required: ['model'],
112
+ required: ['prompt'],
268
113
  },
269
114
  },
270
115
  ],
271
116
  }));
272
- this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
273
- switch (request.params.name) {
274
- case 'mcp_openrouter_chat_completion':
275
- return handleChatCompletion({
276
- params: {
277
- arguments: request.params.arguments
278
- }
279
- }, this.openai, this.defaultModel);
280
- case 'mcp_openrouter_analyze_image':
281
- return handleAnalyzeImage({
282
- params: {
283
- arguments: request.params.arguments
284
- }
285
- }, this.openai, this.defaultModel);
286
- case 'mcp_openrouter_multi_image_analysis':
287
- return handleMultiImageAnalysis({
288
- params: {
289
- arguments: request.params.arguments
290
- }
291
- }, this.openai, this.defaultModel);
117
+ server.setRequestHandler(CallToolRequestSchema, async (request) => {
118
+ const { name, arguments: args } = request.params;
119
+ switch (name) {
120
+ case 'chat_completion':
121
+ return handleChatCompletion(wrapToolArgs(args), this.openai, this.defaultModel);
122
+ case 'analyze_image':
123
+ return handleAnalyzeImage(wrapToolArgs(args), this.openai, this.defaultModel);
292
124
  case 'search_models':
293
- return handleSearchModels({
294
- params: {
295
- arguments: request.params.arguments
296
- }
297
- }, this.apiClient, this.modelCache);
125
+ return handleSearchModels(wrapToolArgs(args), this.apiClient, this.modelCache);
298
126
  case 'get_model_info':
299
- return handleGetModelInfo({
300
- params: {
301
- arguments: request.params.arguments
302
- }
303
- }, this.modelCache);
127
+ return handleGetModelInfo(wrapToolArgs(args), this.modelCache, this.apiClient);
304
128
  case 'validate_model':
305
- return handleValidateModel({
306
- params: {
307
- arguments: request.params.arguments
308
- }
309
- }, this.modelCache);
129
+ return handleValidateModel(wrapToolArgs(args), this.modelCache, this.apiClient);
130
+ case 'generate_image':
131
+ return handleGenerateImage(wrapToolArgs(args), this.openai);
310
132
  default:
311
- throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${request.params.name}`);
133
+ throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`);
312
134
  }
313
135
  });
314
136
  }
315
137
  }
316
- //# sourceMappingURL=tool-handlers.js.map
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stabgan/openrouter-mcp-multimodal",
3
- "version": "1.4.0",
4
- "description": "MCP server for OpenRouter providing text chat and image analysis tools",
3
+ "version": "1.8.0",
4
+ "description": "MCP server for OpenRouter with text chat, image analysis, and image generation",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
@@ -9,16 +9,17 @@
9
9
  },
10
10
  "files": [
11
11
  "dist",
12
- "README.md",
13
- "LICENSE"
12
+ "README.md"
14
13
  ],
15
14
  "scripts": {
16
15
  "build": "tsc && shx chmod +x dist/*.js",
17
16
  "prepare": "npm run build",
18
17
  "start": "node dist/index.js",
19
- "watch": "tsc --watch",
20
- "examples": "node examples/index.js",
21
- "audit": "npm audit fix"
18
+ "lint": "eslint src",
19
+ "format": "prettier --write \"src/**/*.ts\" *.json \"*.md\"",
20
+ "format:check": "prettier --check \"src/**/*.ts\"",
21
+ "test": "node --experimental-vm-modules node_modules/.bin/vitest run",
22
+ "test:integration": "node --experimental-vm-modules node_modules/.bin/vitest run --config vitest.integration.config.ts"
22
23
  },
23
24
  "keywords": [
24
25
  "mcp",
@@ -26,38 +27,36 @@
26
27
  "ai",
27
28
  "llm",
28
29
  "vision",
29
- "image-analysis",
30
- "modelcontextprotocol"
30
+ "image-analysis"
31
31
  ],
32
32
  "author": "stabgan",
33
- "license": "MIT",
34
33
  "repository": {
35
34
  "type": "git",
36
- "url": "git+https://github.com/stabgan/openrouter-mcp-multimodal.git"
35
+ "url": "https://github.com/stabgan/openrouter-mcp-multimodal"
37
36
  },
38
37
  "bugs": {
39
38
  "url": "https://github.com/stabgan/openrouter-mcp-multimodal/issues"
40
39
  },
41
40
  "homepage": "https://github.com/stabgan/openrouter-mcp-multimodal#readme",
41
+ "license": "MIT",
42
42
  "engines": {
43
43
  "node": ">=18.0.0"
44
44
  },
45
45
  "dependencies": {
46
- "@modelcontextprotocol/sdk": "^1.8.0",
47
- "axios": "^1.8.4",
48
- "dotenv": "^16.4.7",
49
- "node-fetch": "^3.3.2",
46
+ "@modelcontextprotocol/sdk": "^1.27.1",
50
47
  "openai": "^4.89.1",
51
48
  "sharp": "^0.33.5"
52
49
  },
53
50
  "devDependencies": {
51
+ "@eslint/js": "^9.39.2",
54
52
  "@types/node": "^22.13.14",
55
- "@types/sharp": "^0.32.0",
53
+ "dotenv": "^16.4.7",
54
+ "eslint": "^9.39.2",
55
+ "eslint-config-prettier": "^10.1.8",
56
+ "prettier": "^3.7.4",
56
57
  "shx": "^0.3.4",
57
- "typescript": "^5.8.2"
58
- },
59
- "overrides": {
60
- "uri-js": "npm:uri-js-replace",
61
- "whatwg-url": "^14.1.0"
58
+ "typescript": "^5.8.2",
59
+ "typescript-eslint": "^8.53.0",
60
+ "vitest": "^3.1.1"
62
61
  }
63
62
  }
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,mCAAmC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,yDAAyD;AACzD,MAAM,aAAa,GAAG,mCAAmC,CAAC;AAE1D,MAAM,0BAA0B;IACtB,MAAM,CAAS;IACf,YAAY,CAAgB,CAAC,sCAAsC;IAE3E;QACE,gEAAgE;QAChE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC9C,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,aAAa,CAAC;QAE3E,+BAA+B;QAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACzE,CAAC;QAED,wBAAwB;QACxB,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CACtB;YACE,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,OAAO;SACjB,EACD;YACE,YAAY,EAAE;gBACZ,KAAK,EAAE,EAAE;aACV;SACF,CACF,CAAC;QAEF,wBAAwB;QACxB,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAErE,2BAA2B;QAC3B,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAClC,IAAI,CAAC,MAAM,EACX,MAAM,EACN,YAAY,CACb,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,GAAG;QACP,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACnE,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,CAAC,oFAAoF,CAAC,CAAC;QACpG,OAAO,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;QAEvD,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,aAAa,CAAC;QAC3E,OAAO,CAAC,KAAK,CAAC,8BAA8B,YAAY,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAC;IAC/E,CAAC;CACF;AAED,MAAM,MAAM,GAAG,IAAI,0BAA0B,EAAE,CAAC;AAChD,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"model-cache.js","sourceRoot":"","sources":["../src/model-cache.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"openrouter-api.js","sourceRoot":"","sources":["../src/openrouter-api.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"analyze-image.js","sourceRoot":"","sources":["../../src/tool-handlers/analyze-image.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat-completion.js","sourceRoot":"","sources":["../../src/tool-handlers/chat-completion.ts"],"names":[],"mappings":"AAGA,yBAAyB;AACzB,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAQlC,wDAAwD;AACxD,SAAS,kBAAkB,CAAC,IAAY;IACtC,8CAA8C;IAC9C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpC,CAAC;AAED,qDAAqD;AACrD,SAAS,qBAAqB,CAC5B,QAAsC,EACtC,SAAiB;IAEjB,MAAM,SAAS,GAAiC,EAAE,CAAC;IACnD,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAE1B,iDAAiD;IACjD,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,iBAAiB,IAAI,kBAAkB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAiB,CAAC,CAAC;IACzE,CAAC;IAED,wDAAwD;IACxD,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAE5B,sDAAsD;QACtD,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ;YAAE,SAAS;QAEnD,+CAA+C;QAC/C,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACxC,MAAM,aAAa,GAAG,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1D,IAAI,iBAAiB,GAAG,aAAa,GAAG,SAAS;gBAAE,MAAM;YACzD,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3B,iBAAiB,IAAI,aAAa,CAAC;QACrC,CAAC;QACD,mEAAmE;aAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACxC,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACtC,aAAa,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjD,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBACrC,kEAAkE;oBAClE,0DAA0D;oBAC1D,aAAa,IAAI,IAAI,CAAC;gBACxB,CAAC;YACH,CAAC;YAED,IAAI,iBAAiB,GAAG,aAAa,GAAG,SAAS;gBAAE,MAAM;YACzD,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC3B,iBAAiB,IAAI,aAAa,CAAC;QACrC,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,6DAA6D;AAC7D,KAAK,UAAU,qBAAqB,CAAC,MAAc;IACjD,IAAI,CAAC;QACH,mDAAmD;QACnD,MAAM,cAAc,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAClD,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChF,OAAO,qCAAqC,CAAC,CAAC,4BAA4B;QAC5E,CAAC;QAED,kCAAkC;QAClC,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI;aACnC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aAC1C,GAAG,CAAC,KAAK,CAAC,EAAE;YACX,sDAAsD;YACtD,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,KAAY,CAAC,CAAC,gDAAgD;gBAC/E,IAAI,OAAO,QAAQ,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;oBAChD,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC;gBAC1C,CAAC;qBAAM,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;oBACnC,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;gBACxD,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,0CAA0C,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;YAC1E,CAAC;YAED,OAAO;gBACL,EAAE,EAAE,KAAK,CAAC,EAAE;gBACZ,aAAa,EAAE,aAAa,IAAI,CAAC;aAClC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEL,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,qCAAqC,CAAC,CAAC,mCAAmC;QACnF,CAAC;QAED,0EAA0E;QAC1E,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,aAAa,CAAC,CAAC;QAC7D,OAAO,CAAC,KAAK,CAAC,wBAAwB,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,yBAAyB,UAAU,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC;QAE9G,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC3D,OAAO,qCAAqC,CAAC,CAAC,4BAA4B;IAC5E,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAA6D,EAC7D,MAAc,EACd,YAAqB;IAErB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;IAEtC,yBAAyB;IACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,mEAAmE;iBAC1E;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,8BAA8B;QAC9B,0BAA0B;QAC1B,oCAAoC;QACpC,yEAAyE;QACzE,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,YAAY,CAAC;QAEvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAC5C,OAAO,CAAC,KAAK,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC;QACvD,CAAC;QAED,iDAAiD;QACjD,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAEnF,OAAO,CAAC,KAAK,CAAC,+BAA+B,KAAK,EAAE,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;YACtD,KAAK;YACL,QAAQ,EAAE,iBAAiB;YAC3B,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;SACnC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE;iBAClD;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yBAAyB,KAAK,CAAC,OAAO,EAAE;qBAC/C;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"get-model-info.js","sourceRoot":"","sources":["../../src/tool-handlers/get-model-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAOzE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAA2D,EAC3D,UAAsB;IAEtB,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;IAEtC,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC;YAC/B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yFAAyF;qBAChG;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,QAAQ,CAAC,SAAS,CAAC,aAAa,EAAE,UAAU,IAAI,CAAC,KAAK,aAAa,CAAC,CAAC;QACjF,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;iBACrC;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,gCAAgC,KAAK,CAAC,OAAO,EAAE;qBACtD;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1,46 +0,0 @@
1
- import OpenAI from 'openai';
2
- export interface MultiImageAnalysisToolRequest {
3
- images: Array<{
4
- url: string;
5
- alt?: string;
6
- }>;
7
- prompt: string;
8
- markdown_response?: boolean;
9
- model?: string;
10
- }
11
- /**
12
- * Find a suitable free model with vision capabilities, defaulting to Qwen
13
- */
14
- export declare function findSuitableFreeModel(openai: OpenAI): Promise<string>;
15
- /**
16
- * Main handler for multi-image analysis
17
- */
18
- export declare function handleMultiImageAnalysis(request: {
19
- params: {
20
- arguments: MultiImageAnalysisToolRequest;
21
- };
22
- }, openai: OpenAI, defaultModel?: string): Promise<{
23
- content: {
24
- type: string;
25
- text: string;
26
- }[];
27
- metadata: {
28
- model: string;
29
- usage: OpenAI.Completions.CompletionUsage | undefined;
30
- error_type?: undefined;
31
- error_message?: undefined;
32
- };
33
- isError?: undefined;
34
- } | {
35
- content: {
36
- type: string;
37
- text: string;
38
- }[];
39
- isError: boolean;
40
- metadata: {
41
- error_type: any;
42
- error_message: any;
43
- model?: undefined;
44
- usage?: undefined;
45
- };
46
- }>;