@llmindset/hf-mcp 0.2.36 → 0.2.37

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 (39) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/jobs/api-client.d.ts.map +1 -1
  6. package/dist/jobs/api-client.js.map +1 -1
  7. package/dist/jobs/commands/run.d.ts.map +1 -1
  8. package/dist/jobs/commands/run.js +2 -13
  9. package/dist/jobs/commands/run.js.map +1 -1
  10. package/dist/jobs/commands/scheduled.d.ts.map +1 -1
  11. package/dist/jobs/commands/scheduled.js +2 -12
  12. package/dist/jobs/commands/scheduled.js.map +1 -1
  13. package/dist/jobs/commands/uv-utils.d.ts +3 -1
  14. package/dist/jobs/commands/uv-utils.d.ts.map +1 -1
  15. package/dist/jobs/commands/uv-utils.js +19 -3
  16. package/dist/jobs/commands/uv-utils.js.map +1 -1
  17. package/dist/jobs/{tool.d.ts → jobs-tool.d.ts} +2 -3
  18. package/dist/jobs/jobs-tool.d.ts.map +1 -0
  19. package/dist/jobs/{tool.js → jobs-tool.js} +103 -44
  20. package/dist/jobs/jobs-tool.js.map +1 -0
  21. package/dist/jobs/schema-help.d.ts +22 -0
  22. package/dist/jobs/schema-help.d.ts.map +1 -0
  23. package/dist/jobs/schema-help.js +155 -0
  24. package/dist/jobs/schema-help.js.map +1 -0
  25. package/dist/jobs/types.d.ts +0 -6
  26. package/dist/jobs/types.d.ts.map +1 -1
  27. package/dist/jobs/types.js +13 -14
  28. package/dist/jobs/types.js.map +1 -1
  29. package/package.json +1 -1
  30. package/src/index.ts +1 -1
  31. package/src/jobs/api-client.ts +0 -2
  32. package/src/jobs/commands/run.ts +2 -15
  33. package/src/jobs/commands/scheduled.ts +2 -11
  34. package/src/jobs/commands/uv-utils.ts +25 -4
  35. package/src/jobs/{tool.ts → jobs-tool.ts} +112 -44
  36. package/src/jobs/schema-help.ts +230 -0
  37. package/src/jobs/types.ts +14 -14
  38. package/dist/jobs/tool.d.ts.map +0 -1
  39. package/dist/jobs/tool.js.map +0 -1
@@ -0,0 +1,155 @@
1
+ import { z } from 'zod';
2
+ export function unwrapType(zodType) {
3
+ let current = zodType;
4
+ let isOptional = false;
5
+ let isNullable = false;
6
+ let defaultValue;
7
+ while (true) {
8
+ if (current instanceof z.ZodOptional) {
9
+ isOptional = true;
10
+ current = current._def.innerType;
11
+ continue;
12
+ }
13
+ if (current instanceof z.ZodDefault) {
14
+ isOptional = true;
15
+ defaultValue = current._def.defaultValue();
16
+ current = current._def.innerType;
17
+ continue;
18
+ }
19
+ if (current instanceof z.ZodNullable) {
20
+ isNullable = true;
21
+ current = current._def.innerType;
22
+ continue;
23
+ }
24
+ if (current instanceof z.ZodEffects) {
25
+ current = current._def.schema;
26
+ continue;
27
+ }
28
+ break;
29
+ }
30
+ return { baseType: current, isOptional, isNullable, defaultValue };
31
+ }
32
+ function isZodType(value) {
33
+ return value instanceof z.ZodType;
34
+ }
35
+ function isPlainObject(value) {
36
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
37
+ }
38
+ export function labelForType(zodType) {
39
+ if (zodType instanceof z.ZodString) {
40
+ return 'string';
41
+ }
42
+ if (zodType instanceof z.ZodNumber) {
43
+ return 'number';
44
+ }
45
+ if (zodType instanceof z.ZodBoolean) {
46
+ return 'boolean';
47
+ }
48
+ if (zodType instanceof z.ZodEnum) {
49
+ return `enum(${zodType.options.join(', ')})`;
50
+ }
51
+ if (zodType instanceof z.ZodLiteral) {
52
+ return `literal(${JSON.stringify(zodType.value)})`;
53
+ }
54
+ if (zodType instanceof z.ZodArray) {
55
+ return `array<${labelForType(zodType._def.type)}>`;
56
+ }
57
+ if (zodType instanceof z.ZodRecord) {
58
+ return `record<string, ${labelForType(zodType._def.valueType)}>`;
59
+ }
60
+ if (zodType instanceof z.ZodUnion) {
61
+ const options = zodType._def.options;
62
+ const labels = options.map((opt) => labelForType(opt));
63
+ return labels.join(' | ');
64
+ }
65
+ if (zodType instanceof z.ZodObject) {
66
+ return 'object';
67
+ }
68
+ return zodType.constructor.name.replace(/^Zod/, '').toLowerCase();
69
+ }
70
+ export function extractFieldDetails(schema) {
71
+ if (!(schema instanceof z.ZodObject)) {
72
+ return [];
73
+ }
74
+ const shape = schema.shape;
75
+ const keys = Object.keys(shape);
76
+ const details = [];
77
+ for (const key of keys) {
78
+ const candidate = shape[key];
79
+ if (!isZodType(candidate)) {
80
+ continue;
81
+ }
82
+ const fieldSchema = candidate;
83
+ const { baseType, isOptional, isNullable, defaultValue } = unwrapType(fieldSchema);
84
+ details.push({
85
+ key: String(key),
86
+ description: fieldSchema.description ?? baseType.description,
87
+ typeLabel: labelForType(baseType),
88
+ isOptional,
89
+ isNullable,
90
+ defaultValue,
91
+ });
92
+ }
93
+ return details;
94
+ }
95
+ export function formatDefaultValue(value) {
96
+ if (value === undefined) {
97
+ return undefined;
98
+ }
99
+ if (typeof value === 'string') {
100
+ return `"${value}"`;
101
+ }
102
+ if (typeof value === 'number' || typeof value === 'boolean' || typeof value === 'bigint') {
103
+ return String(value);
104
+ }
105
+ if (typeof value === 'symbol') {
106
+ return value.description ? `Symbol(${value.description})` : 'Symbol()';
107
+ }
108
+ if (value === null) {
109
+ return 'null';
110
+ }
111
+ if (Array.isArray(value)) {
112
+ try {
113
+ return JSON.stringify(value);
114
+ }
115
+ catch {
116
+ return '[unserializable]';
117
+ }
118
+ }
119
+ if (isPlainObject(value)) {
120
+ try {
121
+ return JSON.stringify(value);
122
+ }
123
+ catch {
124
+ return '[unserializable]';
125
+ }
126
+ }
127
+ return '[unsupported]';
128
+ }
129
+ export function formatCommandHelp(commandName, schema) {
130
+ if (!schema) {
131
+ return `No help available for '${commandName}'.`;
132
+ }
133
+ const fields = extractFieldDetails(schema);
134
+ if (fields.length === 0) {
135
+ return `No help available for '${commandName}'.`;
136
+ }
137
+ const header = `# Command help: ${commandName}\n\nArguments:\n`;
138
+ const lines = fields.map((field) => {
139
+ const parts = [];
140
+ parts.push(field.isOptional ? 'optional' : 'required');
141
+ parts.push(field.typeLabel);
142
+ if (field.isNullable) {
143
+ parts.push('nullable');
144
+ }
145
+ const defaultValue = formatDefaultValue(field.defaultValue);
146
+ if (defaultValue !== undefined) {
147
+ parts.push(`default: ${defaultValue}`);
148
+ }
149
+ const meta = parts.join(', ');
150
+ const description = field.description ?? 'No description provided.';
151
+ return `- \`${field.key}\` (${meta}): ${description}`;
152
+ });
153
+ return header + lines.join('\n');
154
+ }
155
+ //# sourceMappingURL=schema-help.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-help.js","sourceRoot":"","sources":["../../src/jobs/schema-help.ts"],"names":[],"mappings":"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"}
@@ -95,7 +95,6 @@ export declare const uvArgsSchema: z.ZodObject<{
95
95
  namespace: z.ZodOptional<z.ZodString>;
96
96
  } & {
97
97
  script: z.ZodString;
98
- repo: z.ZodOptional<z.ZodString>;
99
98
  with_deps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
100
99
  script_args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
101
100
  python: z.ZodOptional<z.ZodString>;
@@ -112,7 +111,6 @@ export declare const uvArgsSchema: z.ZodObject<{
112
111
  namespace?: string | undefined;
113
112
  env?: Record<string, string> | undefined;
114
113
  secrets?: Record<string, string> | undefined;
115
- repo?: string | undefined;
116
114
  with_deps?: string[] | undefined;
117
115
  script_args?: string[] | undefined;
118
116
  python?: string | undefined;
@@ -124,7 +122,6 @@ export declare const uvArgsSchema: z.ZodObject<{
124
122
  secrets?: Record<string, string> | undefined;
125
123
  timeout?: string | undefined;
126
124
  detach?: boolean | undefined;
127
- repo?: string | undefined;
128
125
  with_deps?: string[] | undefined;
129
126
  script_args?: string[] | undefined;
130
127
  python?: string | undefined;
@@ -219,7 +216,6 @@ export declare const scheduledUvArgsSchema: z.ZodObject<{
219
216
  namespace: z.ZodOptional<z.ZodString>;
220
217
  } & {
221
218
  script: z.ZodString;
222
- repo: z.ZodOptional<z.ZodString>;
223
219
  with_deps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
224
220
  script_args: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
225
221
  python: z.ZodOptional<z.ZodString>;
@@ -241,7 +237,6 @@ export declare const scheduledUvArgsSchema: z.ZodObject<{
241
237
  namespace?: string | undefined;
242
238
  env?: Record<string, string> | undefined;
243
239
  secrets?: Record<string, string> | undefined;
244
- repo?: string | undefined;
245
240
  with_deps?: string[] | undefined;
246
241
  script_args?: string[] | undefined;
247
242
  python?: string | undefined;
@@ -254,7 +249,6 @@ export declare const scheduledUvArgsSchema: z.ZodObject<{
254
249
  secrets?: Record<string, string> | undefined;
255
250
  timeout?: string | undefined;
256
251
  detach?: boolean | undefined;
257
- repo?: string | undefined;
258
252
  with_deps?: string[] | undefined;
259
253
  script_args?: string[] | undefined;
260
254
  python?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/jobs/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/jobs/types.ts"],"names":[],"mappings":"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"}
@@ -36,35 +36,36 @@ export const runArgsSchema = commonArgsSchema.extend({
36
36
  .default('cpu-basic')
37
37
  .describe(`Hardware flavor. Options: ${ALL_FLAVORS.join(', ')}`),
38
38
  env: z.record(z.string()).optional().describe('Environment variables as key-value pairs'),
39
- secrets: z.record(z.string()).optional().describe('Secret environment variables (encrypted server-side)'),
40
- timeout: z
41
- .string()
39
+ secrets: z
40
+ .record(z.string())
42
41
  .optional()
43
- .describe('Max duration (e.g., "5m", "2h", "30s"). Default: 30m')
44
- .default('30m'),
42
+ .describe('Secrets as key-value pairs. Use HF_TOKEN=$HF_TOKEN to include your token'),
43
+ timeout: z.string().optional().describe('Max duration (e.g., "5m", "2h", "30s"). Default: 30m').default('30m'),
45
44
  detach: z
46
45
  .boolean()
47
46
  .optional()
48
47
  .default(true)
49
- .describe('Run in background and return immediately (default: true)'),
48
+ .describe('Run in background and return after 10 seconds (default: true)'),
50
49
  });
51
50
  export const uvArgsSchema = commonArgsSchema.extend({
52
51
  script: z
53
52
  .string()
54
53
  .describe('Python script: local file path, URL, or inline code. UV will handle dependencies automatically.'),
55
- repo: z.string().optional().describe('Persistent repository name for script storage'),
56
54
  with_deps: z.array(z.string()).optional().describe('Additional package dependencies'),
57
55
  script_args: z.array(z.string()).optional().describe('Arguments to pass to the script'),
58
56
  python: z.string().optional().describe('Python interpreter version (e.g., "3.12")'),
59
57
  flavor: z.enum(ALL_FLAVORS).optional().default('cpu-basic').describe('Hardware flavor'),
60
- env: z.record(z.string()).optional().describe('Environment variables'),
61
- secrets: z.record(z.string()).optional().describe('Secret environment variables'),
58
+ env: z.record(z.string()).optional().describe('Environment variables as key-value pairs'),
59
+ secrets: z
60
+ .record(z.string())
61
+ .optional()
62
+ .describe('Secrets as key-value pairs. Use HF_TOKEN=$HF_TOKEN to include your token'),
62
63
  timeout: z.string().optional().default('30m').describe('Max duration'),
63
- detach: z.boolean().optional().default(true).describe('Run in background'),
64
+ detach: z.boolean().optional().default(true).describe('Run in background and return after 10 seconds'),
64
65
  });
65
66
  export const psArgsSchema = commonArgsSchema.extend({
66
67
  all: z.boolean().optional().default(false).describe('Show all jobs (default: only running)'),
67
- status: z.string().optional().describe('Filter by status (e.g., "RUNNING", "COMPLETED")'),
68
+ status: z.string().optional().describe('Filter by status ("RUNNING", "COMPLETED", "CANCELED", "ERROR", "DELETED")'),
68
69
  });
69
70
  export const logsArgsSchema = commonArgsSchema.extend({
70
71
  job_id: z.string().describe('Job ID to fetch logs from'),
@@ -77,9 +78,7 @@ export const cancelArgsSchema = commonArgsSchema.extend({
77
78
  job_id: z.string().describe('Job ID to cancel'),
78
79
  });
79
80
  export const scheduledRunArgsSchema = runArgsSchema.extend({
80
- schedule: z
81
- .string()
82
- .describe('Schedule: cron expression or shorthand (@hourly, @daily, @weekly, @monthly, @yearly)'),
81
+ schedule: z.string().describe('Schedule: cron expression or shorthand (@hourly, @daily, @weekly, @monthly, @yearly)'),
83
82
  suspend: z.boolean().optional().default(false).describe('Create in suspended state'),
84
83
  });
85
84
  export const scheduledUvArgsSchema = uvArgsSchema.extend({
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/jobs/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/jobs/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llmindset/hf-mcp",
3
- "version": "0.2.36",
3
+ "version": "0.2.37",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
package/src/index.ts CHANGED
@@ -19,7 +19,7 @@ export * from './docs-search/docs-semantic-search.js';
19
19
  export * from './docs-search/doc-fetch.js';
20
20
  export * from './readme-utils.js';
21
21
  export * from './use-space.js';
22
- export * from './jobs/tool.js';
22
+ export * from './jobs/jobs-tool.js';
23
23
 
24
24
  // Export shared types
25
25
  export * from './types/tool-result.js';
@@ -52,8 +52,6 @@ export class JobsApiClient extends HfApiCall {
52
52
  const ns = await this.getNamespace(namespace);
53
53
  const url = `https://huggingface.co/api/jobs/${ns}`;
54
54
 
55
- // Debug logging (will be visible in server logs)
56
-
57
55
  const result = await this.fetchFromApi<JobInfo>(url, {
58
56
  method: 'POST',
59
57
  headers: {
@@ -2,7 +2,7 @@ import type { RunArgs, UvArgs } from '../types.js';
2
2
  import type { JobsApiClient } from '../api-client.js';
3
3
  import { createJobSpec } from './utils.js';
4
4
  import { fetchJobLogs } from '../sse-handler.js';
5
- import { buildUvCommand, UV_DEFAULT_IMAGE, wrapInlineScript } from './uv-utils.js';
5
+ import { resolveUvCommand, UV_DEFAULT_IMAGE } from './uv-utils.js';
6
6
 
7
7
  /**
8
8
  * Execute the 'run' command
@@ -68,20 +68,7 @@ export async function uvCommand(args: UvArgs, client: JobsApiClient, token?: str
68
68
  const image = UV_DEFAULT_IMAGE;
69
69
 
70
70
  // Detect script source and build command
71
- const scriptSource = args.script;
72
- let command: string | string[];
73
-
74
- if (scriptSource.startsWith('http://') || scriptSource.startsWith('https://')) {
75
- // URL - download and run
76
- command = buildUvCommand(scriptSource, args);
77
- } else if (scriptSource.includes('\n')) {
78
- // Inline multi-line script - encode it
79
- const shellSnippet = wrapInlineScript(scriptSource, args);
80
- command = ['/bin/sh', '-lc', shellSnippet];
81
- } else {
82
- // Assume it's a URL or path - UV will handle it
83
- command = buildUvCommand(scriptSource, args);
84
- }
71
+ const command = resolveUvCommand(args);
85
72
 
86
73
  // Convert to run args
87
74
  const runArgs: RunArgs = {
@@ -8,7 +8,7 @@ import type {
8
8
  import type { JobsApiClient } from '../api-client.js';
9
9
  import { formatScheduledJobsTable, formatScheduledJobDetails } from '../formatters.js';
10
10
  import { createJobSpec } from './utils.js';
11
- import { buildUvCommand, UV_DEFAULT_IMAGE, wrapInlineScript } from './uv-utils.js';
11
+ import { resolveUvCommand, UV_DEFAULT_IMAGE } from './uv-utils.js';
12
12
 
13
13
  /**
14
14
  * Execute 'scheduled run' command
@@ -64,16 +64,7 @@ export async function scheduledUvCommand(
64
64
  const image = UV_DEFAULT_IMAGE;
65
65
 
66
66
  // Build UV command (similar to regular uv command)
67
- const scriptSource = args.script;
68
- let command: string;
69
-
70
- if (scriptSource.startsWith('http://') || scriptSource.startsWith('https://')) {
71
- command = buildUvCommand(scriptSource, args);
72
- } else if (scriptSource.includes('\n')) {
73
- command = wrapInlineScript(scriptSource, args);
74
- } else {
75
- command = buildUvCommand(scriptSource, args);
76
- }
67
+ const command = resolveUvCommand(args);
77
68
 
78
69
  // Convert to scheduled run args
79
70
  const scheduledRunArgs: ScheduledRunArgs = {
@@ -1,10 +1,12 @@
1
+ import { quote as shellQuote } from 'shell-quote';
1
2
  import type { UvArgs } from '../types.js';
2
3
 
3
4
  export const UV_DEFAULT_IMAGE = 'ghcr.io/astral-sh/uv:python3.12-bookworm';
4
5
 
5
6
  type UvCommandOptions = Pick<UvArgs, 'with_deps' | 'python' | 'script_args'>;
7
+ type UvCommandLikeArgs = Pick<UvArgs, 'script' | 'with_deps' | 'python' | 'script_args'>;
6
8
 
7
- export function buildUvCommand(script: string, args: UvCommandOptions): string {
9
+ export function buildUvCommand(script: string, args: UvCommandOptions): string[] {
8
10
  const parts: string[] = ['uv', 'run'];
9
11
 
10
12
  if (args.with_deps && args.with_deps.length > 0) {
@@ -23,11 +25,30 @@ export function buildUvCommand(script: string, args: UvCommandOptions): string {
23
25
  parts.push(...args.script_args);
24
26
  }
25
27
 
26
- return parts.join(' ');
28
+ return parts;
27
29
  }
28
30
 
29
31
  export function wrapInlineScript(script: string, args: UvCommandOptions): string {
30
- const encoded = Buffer.from(script).toString('base64');
31
- const baseCommand = buildUvCommand('-', args);
32
+ const encoded = Buffer.from(script, 'utf-8').toString('base64');
33
+ const baseCommand = shellQuote(buildUvCommand('-', args));
32
34
  return `echo "${encoded}" | base64 -d | ${baseCommand}`;
33
35
  }
36
+
37
+ export function resolveUvCommand(args: UvCommandLikeArgs): string[] {
38
+ const options: UvCommandOptions = {
39
+ with_deps: args.with_deps,
40
+ python: args.python,
41
+ script_args: args.script_args,
42
+ };
43
+ const scriptSource = args.script;
44
+
45
+ if (scriptSource.startsWith('http://') || scriptSource.startsWith('https://')) {
46
+ return buildUvCommand(scriptSource, options);
47
+ }
48
+
49
+ if (scriptSource.includes('\n')) {
50
+ return ['/bin/sh', '-lc', wrapInlineScript(scriptSource, options)];
51
+ }
52
+
53
+ return buildUvCommand(scriptSource, options);
54
+ }