aiquila-mcp 0.3.35 → 0.4.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.
@@ -23,7 +23,7 @@ function formatCoworker(c) {
23
23
  const state = !c.isActive ? 'disabled' : c.paused ? 'paused' : 'active';
24
24
  const lines = [
25
25
  `- **${c.title}** (ID: ${c.id}) — ${state}`,
26
- ` task: ${c.taskType} | provider: ${c.model ?? 'default'} | input: ${c.inputPath ?? '/'}`,
26
+ ` task: ${c.taskType} | provider: ${c.provider ?? 'default'}${c.model ? ` (${c.model})` : ''} | input: ${c.inputPath ?? '/'}`,
27
27
  ` schedule: ${c.cronSchedule} | next run: ${fmtTime(c.nextRunAt)} | last run: ${fmtTime(c.lastRunAt)}${c.lastStatus ? ` (${c.lastStatus})` : ''}`,
28
28
  ];
29
29
  if (c.lastError)
@@ -118,10 +118,14 @@ export const createCoworkerTool = {
118
118
  .describe('Built-in template id (see list_coworker_templates)'),
119
119
  title: z.string().optional(),
120
120
  taskType: z.string().optional().describe('Task type id, e.g. "vision:classify"'),
121
+ provider: z
122
+ .string()
123
+ .optional()
124
+ .describe('Provider id: "anthropic", "mistral", "deepseek", "hetzner" or "local"'),
121
125
  model: z
122
126
  .string()
123
127
  .optional()
124
- .describe('Provider id: "anthropic" (Claude) or "mistral" (Pixtral)'),
128
+ .describe("Model id to run with; omit to use the provider's default"),
125
129
  inputPath: z.string().optional().describe('Folder to process, e.g. "/Photos"'),
126
130
  cronSchedule: z.string().optional().describe('5-field cron, e.g. "0 3 * * *"'),
127
131
  maxTags: z.number().optional().describe('Max tags per image (vision:classify)'),
@@ -135,6 +139,8 @@ export const createCoworkerTool = {
135
139
  body.title = args.title;
136
140
  if (args.taskType !== undefined)
137
141
  body.task_type = args.taskType;
142
+ if (args.provider !== undefined)
143
+ body.provider = args.provider;
138
144
  if (args.model !== undefined)
139
145
  body.model = args.model;
140
146
  if (args.inputPath !== undefined) {
@@ -176,7 +182,11 @@ export const updateCoworkerTool = {
176
182
  inputSchema: z.object({
177
183
  id: z.number().describe('Coworker ID'),
178
184
  title: z.string().optional(),
179
- model: z.string().optional().describe('"anthropic" or "mistral"'),
185
+ provider: z
186
+ .string()
187
+ .optional()
188
+ .describe('Provider id; "" unpins so the coworker follows the owner setting'),
189
+ model: z.string().optional().describe("Model id; omit to use the provider's default"),
180
190
  inputPath: z.string().optional(),
181
191
  cronSchedule: z.string().optional(),
182
192
  maxTags: z.number().optional(),
@@ -187,6 +197,8 @@ export const updateCoworkerTool = {
187
197
  const body = {};
188
198
  if (args.title !== undefined)
189
199
  body.title = args.title;
200
+ if (args.provider !== undefined)
201
+ body.provider = args.provider;
190
202
  if (args.model !== undefined)
191
203
  body.model = args.model;
192
204
  if (args.inputPath !== undefined) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aiquila-mcp",
3
- "version": "0.3.35",
3
+ "version": "0.4.0",
4
4
  "description": "Nextcloud MCP server — files, calendar, contacts, mail, maps, notes, tasks & 120+ more tools",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",