@llmindset/hf-mcp 0.2.53 → 0.2.55

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.
package/dist/index.d.ts CHANGED
@@ -20,6 +20,8 @@ export * from './readme-utils.js';
20
20
  export * from './use-space.js';
21
21
  export * from './jobs/jobs-tool.js';
22
22
  export * from './space/dynamic-space-tool.js';
23
+ export * from './space/utils/gradio-caller.js';
24
+ export * from './space/utils/gradio-schema.js';
23
25
  export * from './types/tool-result.js';
24
26
  export * from './tool-ids.js';
25
27
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uCAAuC,CAAC;AACtD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAG9C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uCAAuC,CAAC;AACtD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAG/C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -20,6 +20,8 @@ export * from './readme-utils.js';
20
20
  export * from './use-space.js';
21
21
  export * from './jobs/jobs-tool.js';
22
22
  export * from './space/dynamic-space-tool.js';
23
+ export * from './space/utils/gradio-caller.js';
24
+ export * from './space/utils/gradio-schema.js';
23
25
  export * from './types/tool-result.js';
24
26
  export * from './tool-ids.js';
25
27
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uCAAuC,CAAC;AACtD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAG9C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uCAAuC,CAAC;AACtD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAG/C,cAAc,wBAAwB,CAAC;AAGvC,cAAc,eAAe,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { escapeMarkdown } from '../../utilities.js';
2
- import { VIEW_PARAMETERS } from '../dynamic-space-tool.js';
2
+ import { VIEW_PARAMETERS } from '../types.js';
3
3
  export const DISCOVER_PROMPTS = {
4
4
  RESULTS_HEADER: `**Available Spaces:**
5
5
 
@@ -1 +1 @@
1
- {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../../src/space/commands/discover.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAM3D,MAAM,CAAC,MAAM,gBAAgB,GAAG;IAE/B,cAAc,EAAE;;;sBAGK,eAAe;;CAEpC;IAGA,UAAU,EAAE,6CAA6C;IAGzD,WAAW,EAAE,CAAC,GAAW,EAAE,KAAa,EAAU,EAAE,CAAC,kCAAkC,GAAG,KAAK,KAAK,EAAE;CACtG,CAAC;AAMF,SAAS,eAAe,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,OAAO,GAAiE,EAAE,CAAC;IAEjF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAG3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAEhG,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,OAAO,CAAC,IAAI,CAAC;gBACZ,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBACnB,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;gBACzB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;aAC5B,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,OAAO,OAAO,CAAC;AAChB,CAAC;AAKD,SAAS,qBAAqB,CAAC,OAAqE;IACnG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,gBAAgB,CAAC,UAAU,CAAC;IACpC,CAAC;IAED,IAAI,QAAQ,GAAG,gBAAgB,CAAC,cAAc,CAAC;IAG/C,QAAQ,IAAI,yCAAyC,CAAC;IACtD,QAAQ,IAAI,yCAAyC,CAAC;IAGtD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,QAAQ;YACP,OAAO,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK;gBACrC,KAAK,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG;gBACvC,KAAK,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;IAChD,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,cAAc;IACnC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAE3C,IAAI,CAAC,GAAG,EAAE,CAAC;QACV,OAAO;YACN,SAAS,EAAE,4DAA4D;YACvE,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,OAAO,EAAE,IAAI;SACb,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YAClB,OAAO;gBACN,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,EAAE,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACvE,YAAY,EAAE,CAAC;gBACf,aAAa,EAAE,CAAC;gBAChB,OAAO,EAAE,IAAI;aACb,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QAEzC,OAAO;YACN,SAAS,EAAE,qBAAqB,CAAC,OAAO,CAAC;YACzC,YAAY,EAAE,OAAO,CAAC,MAAM;YAC5B,aAAa,EAAE,OAAO,CAAC,MAAM;SAC7B,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,OAAO;YACN,SAAS,EAAE,gBAAgB,CAAC,WAAW,CAAC,GAAG,EAAE,YAAY,CAAC;YAC1D,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,OAAO,EAAE,IAAI;SACb,CAAC;IACH,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"discover.js","sourceRoot":"","sources":["../../../src/space/commands/discover.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"invoke.d.ts","sourceRoot":"","sources":["../../../src/space/commands/invoke.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAQ,kBAAkB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAClG,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,8CAA8C,CAAC;AAWxG,wBAAsB,WAAW,CAChC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAC5D,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC,CAoIpC"}
1
+ {"version":3,"file":"invoke.d.ts","sourceRoot":"","sources":["../../../src/space/commands/invoke.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAQ,kBAAkB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAClG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAUxF,wBAAsB,WAAW,CAChC,SAAS,EAAE,MAAM,EACjB,cAAc,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAC5D,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC,CA+FpC"}
@@ -1,8 +1,7 @@
1
- import { CallToolResultSchema } from '@modelcontextprotocol/sdk/types.js';
2
- import { Client } from '@modelcontextprotocol/sdk/client/index.js';
3
- import { SSEClientTransport } from '@modelcontextprotocol/sdk/client/sse.js';
4
1
  import { analyzeSchemaComplexity, validateParameters, applyDefaults } from '../utils/schema-validator.js';
5
2
  import { formatComplexSchemaError, formatValidationError } from '../utils/parameter-formatter.js';
3
+ import { callGradioToolWithHeaders } from '../utils/gradio-caller.js';
4
+ import { parseGradioSchemaResponse, normalizeParsedTools } from '../utils/gradio-schema.js';
6
5
  export async function invokeSpace(spaceName, parametersJson, hfToken, extra) {
7
6
  try {
8
7
  let inputParameters;
@@ -59,42 +58,16 @@ export async function invokeSpace(spaceName, parametersJson, hfToken, extra) {
59
58
  }
60
59
  const finalParameters = applyDefaults(inputParameters, schemaResult);
61
60
  const sseUrl = `https://${metadata.subdomain}.hf.space/gradio_api/mcp/sse`;
62
- const client = await createLazyConnection(sseUrl, hfToken);
63
- try {
64
- const progressToken = extra?._meta?.progressToken;
65
- const requestOptions = {};
66
- if (progressToken !== undefined && extra) {
67
- requestOptions.onprogress = async (progress) => {
68
- await extra.sendNotification({
69
- method: 'notifications/progress',
70
- params: {
71
- progressToken,
72
- progress: progress.progress,
73
- total: progress.total,
74
- message: progress.message,
75
- },
76
- });
77
- };
78
- }
79
- const result = await client.request({
80
- method: 'tools/call',
81
- params: {
82
- name: tool.name,
83
- arguments: finalParameters,
84
- _meta: progressToken !== undefined ? { progressToken } : undefined,
85
- },
86
- }, CallToolResultSchema, requestOptions);
87
- return {
88
- result,
89
- warnings,
90
- totalResults: 1,
91
- resultsShared: 1,
92
- isError: result.isError,
93
- };
94
- }
95
- finally {
96
- await client.close();
97
- }
61
+ const { result } = await callGradioToolWithHeaders(sseUrl, tool.name, finalParameters, hfToken, extra, {
62
+ logProxiedReplica: true,
63
+ });
64
+ return {
65
+ result,
66
+ warnings,
67
+ totalResults: 1,
68
+ resultsShared: 1,
69
+ isError: result.isError,
70
+ };
98
71
  }
99
72
  catch (error) {
100
73
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -157,80 +130,11 @@ async function fetchGradioSchema(subdomain, isPrivate, hfToken) {
157
130
  throw new Error(`HTTP ${response.status}: ${response.statusText}`);
158
131
  }
159
132
  const schemaResponse = (await response.json());
160
- return parseSchemaResponse(schemaResponse);
133
+ const parsed = parseGradioSchemaResponse(schemaResponse);
134
+ return normalizeParsedTools(parsed);
161
135
  }
162
136
  finally {
163
137
  clearTimeout(timeoutId);
164
138
  }
165
139
  }
166
- function parseSchemaResponse(schemaResponse) {
167
- const tools = [];
168
- if (Array.isArray(schemaResponse)) {
169
- for (const item of schemaResponse) {
170
- if (typeof item === 'object' &&
171
- item !== null &&
172
- 'name' in item &&
173
- 'inputSchema' in item) {
174
- const itemRecord = item;
175
- if (typeof itemRecord.name === 'string') {
176
- const tool = itemRecord;
177
- tools.push({
178
- name: tool.name,
179
- description: tool.description || `${tool.name} tool`,
180
- inputSchema: {
181
- type: 'object',
182
- ...tool.inputSchema,
183
- },
184
- });
185
- }
186
- }
187
- }
188
- }
189
- else if (typeof schemaResponse === 'object' && schemaResponse !== null) {
190
- for (const [name, toolSchema] of Object.entries(schemaResponse)) {
191
- if (typeof toolSchema === 'object' && toolSchema !== null) {
192
- const schema = toolSchema;
193
- tools.push({
194
- name,
195
- description: schema.description || `${name} tool`,
196
- inputSchema: {
197
- type: 'object',
198
- ...toolSchema,
199
- },
200
- });
201
- }
202
- }
203
- }
204
- return tools.filter((tool) => !tool.name.toLowerCase().includes('<lambda'));
205
- }
206
- async function createLazyConnection(sseUrl, hfToken) {
207
- const remoteClient = new Client({
208
- name: 'hf-mcp-space-client',
209
- version: '1.0.0',
210
- }, {
211
- capabilities: {},
212
- });
213
- const transportOptions = {};
214
- if (hfToken) {
215
- const headerName = 'X-HF-Authorization';
216
- const customHeaders = {
217
- [headerName]: `Bearer ${hfToken}`,
218
- };
219
- transportOptions.requestInit = {
220
- headers: customHeaders,
221
- };
222
- transportOptions.eventSourceInit = {
223
- fetch: (url, init) => {
224
- const headers = new Headers(init.headers);
225
- Object.entries(customHeaders).forEach(([key, value]) => {
226
- headers.set(key, value);
227
- });
228
- return fetch(url.toString(), { ...init, headers });
229
- },
230
- };
231
- }
232
- const transport = new SSEClientTransport(new URL(sseUrl), transportOptions);
233
- await remoteClient.connect(transport);
234
- return remoteClient;
235
- }
236
140
  //# sourceMappingURL=invoke.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../../../src/space/commands/invoke.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../../../src/space/commands/invoke.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-space-tool.d.ts","sourceRoot":"","sources":["../../src/space/dynamic-space-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAEN,KAAK,SAAS,EACd,KAAK,YAAY,EAKjB,MAAM,YAAY,CAAC;AAOpB,cAAc,YAAY,CAAC;AAkJ3B,wBAAgB,yBAAyB,IAAI;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACnC,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,CAAC;CAC9E,CAgBA;AAKD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW5B,CAAC;AAKX,qBAAa,SAAS;IACrB,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,OAAO,CAAC,EAAE,MAAM;IAStB,OAAO,CACZ,MAAM,EAAE,SAAS,EACjB,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAC5D,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC;YAgEvB,UAAU;YAOV,cAAc;YAOd,oBAAoB;YAyBpB,YAAY;CA+C1B"}
1
+ {"version":3,"file":"dynamic-space-tool.d.ts","sourceRoot":"","sources":["../../src/space/dynamic-space-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAC7B,OAAO,EAEN,KAAK,SAAS,EACd,KAAK,YAAY,EAMjB,MAAM,YAAY,CAAC;AAOpB,cAAc,YAAY,CAAC;AAkI3B,wBAAgB,yBAAyB,IAAI;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACnC,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,CAAC;CAC9E,CAgBA;AAKD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;CAW5B,CAAC;AAKX,qBAAa,SAAS;IACrB,OAAO,CAAC,OAAO,CAAC,CAAS;gBAEb,OAAO,CAAC,EAAE,MAAM;IAStB,OAAO,CACZ,MAAM,EAAE,SAAS,EACjB,KAAK,CAAC,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAC5D,OAAO,CAAC,YAAY,GAAG,UAAU,CAAC;YAgEvB,UAAU;YAOV,cAAc;YAOd,oBAAoB;YAyBpB,YAAY;CA+C1B"}
@@ -1,4 +1,4 @@
1
- import { spaceArgsSchema, isDynamicSpaceMode, getOperationNames, getSpaceArgsSchema, VIEW_PARAMETERS, } from './types.js';
1
+ import { spaceArgsSchema, isDynamicSpaceMode, getOperationNames, getSpaceArgsSchema, VIEW_PARAMETERS, FILE_HANDLING_TEXT, } from './types.js';
2
2
  import { findSpaces } from './commands/dynamic-find.js';
3
3
  import { discoverSpaces } from './commands/discover.js';
4
4
  import { viewParameters } from './commands/view-parameters.js';
@@ -7,11 +7,6 @@ export * from './types.js';
7
7
  const USAGE_INSTRUCTIONS = `# Gradio Space Interaction
8
8
 
9
9
  Dynamically interact with any Gradio MCP Space. Find spaces, view space parameter schemas, and invoke spaces.
10
-
11
- ## Supported Schema Types
12
-
13
- ✅ **Simple types** (supported):
14
- - Strings, numbers, booleans
15
10
  - Enums (predefined value sets)
16
11
  - Arrays of primitives
17
12
  - Shallow objects (one level deep)
@@ -61,25 +56,25 @@ Execute a space's first tool with provided parameters.
61
56
  1. **Find Spaces** - Use \`find\` to find MCP-enabled spaces for your task
62
57
  2. **Inspect Parameters** - Use \`${VIEW_PARAMETERS}\` to see what a space accepts
63
58
  3. **Invoke the Space** - Use \`invoke\` with the required parameters
64
-
65
- ## File Handling
66
-
67
59
  For parameters that accept files (FileData types):
68
60
  - Provide a publicly accessible URL (http:// or https://)
69
61
  - Example: \`{"image": "https://example.com/photo.jpg"}\`
70
- - Outputs from one tool may be used as inputs to another
71
-
72
- ## Tips
73
-
74
- - Focus searches on specific tasks (e.g., "video generation", "object detection")
75
62
  - The tool automatically applies default values for optional parameters
76
63
  - Unknown parameters generate warnings but are still passed through (permissive inputs)
77
64
  - Enum parameters show all allowed values in ${VIEW_PARAMETERS} output
78
65
  - Required parameters are clearly marked and validated
79
66
  `;
80
- const DYNAMIC_USAGE_INSTRUCTIONS = `# Gradio Space Interaction
67
+ const DYNAMIC_USAGE_INSTRUCTIONS = `# Hugging Face Space Dynamic Use
68
+
69
+ Perform Tasks using Hugging Face Spaces.
70
+
71
+ ## Workflow
72
+
73
+ 1. **Discover Taks and Spaces** - Use \`discover\` operation to see available spaces
74
+ 2. **View Parameters** - Use \`${VIEW_PARAMETERS}\` operation to inspect parameter schema
75
+ 3. **Invoke the Space** - Use \`invoke\` operation with the necessary parameters
81
76
 
82
- Use Hugging Face. Discover available spaces, view their parameter schemas, and invoke them. Use "discover" to find recommended spaces for tasks.
77
+ ${FILE_HANDLING_TEXT}
83
78
 
84
79
  ## Available Operations
85
80
 
@@ -94,7 +89,7 @@ List recommended spaces and their categories.
94
89
  \`\`\`
95
90
 
96
91
  ### ${VIEW_PARAMETERS}
97
- Display the parameter schema for a space's first tool.
92
+ Display the parameter schema for the Space.
98
93
 
99
94
  **Example:**
100
95
  \`\`\`json
@@ -105,7 +100,7 @@ Display the parameter schema for a space's first tool.
105
100
  \`\`\`
106
101
 
107
102
  ### invoke
108
- Execute a space's first tool with provided parameters.
103
+ Execute a Task on a Space.
109
104
 
110
105
  **Example:**
111
106
  \`\`\`json
@@ -116,18 +111,7 @@ Execute a space's first tool with provided parameters.
116
111
  }
117
112
  \`\`\`
118
113
 
119
- ## Workflow
120
-
121
- 1. **Discover Spaces** - Use \`discover\` to see available spaces
122
- 2. **Inspect Parameters** - Use \`${VIEW_PARAMETERS}\` to see what a space accepts
123
- 3. **Invoke the Space** - Use \`invoke\` with the required parameters
124
-
125
- ## File Handling
126
114
 
127
- For parameters that accept files (FileData types):
128
- - Provide a publicly accessible URL (http:// or https://)
129
- - Example: \`{"image": "https://example.com/photo.jpg"}\`
130
- - Output url's from one tool may be used as inputs to another.
131
115
  `;
132
116
  function getUsageInstructions() {
133
117
  return isDynamicSpaceMode() ? DYNAMIC_USAGE_INSTRUCTIONS : USAGE_INSTRUCTIONS;
@@ -137,10 +121,10 @@ export function getDynamicSpaceToolConfig() {
137
121
  return {
138
122
  name: 'dynamic_space',
139
123
  description: dynamicMode
140
- ? 'Perform tasks with Hugging Face Spaces. Use "discover" to find available tasks for the User. Task types include Image Generation, Background Removal, Text to Speech, OCR and more ' +
141
- 'Call with no operation for full usage instructions.'
124
+ ? 'Perform Tasks with Hugging Face Spaces. Use "discover" to view available Tasks. Examples are Image Generation/Editing, Background Removal, Text to Speech, OCR and many more. ' +
125
+ 'Call with no arguments for full usage instructions.'
142
126
  : 'Find (semantic/task search), inspect (view parameter schema) and dynamically invoke Hugging Face Spaces. ' +
143
- 'Call with no operation for full usage instructions.',
127
+ 'Call with no arguments for full usage instructions.',
144
128
  schema: getSpaceArgsSchema(),
145
129
  annotations: {
146
130
  title: 'Dynamically use Hugging Face Spaces',
@@ -1 +1 @@
1
- {"version":3,"file":"dynamic-space-tool.js","sourceRoot":"","sources":["../../src/space/dynamic-space-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dynamic-space-tool.js","sourceRoot":"","sources":["../../src/space/dynamic-space-tool.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ export declare const OPERATION_NAMES: readonly ["find", "view_parameters", "invo
4
4
  export declare const DYNAMIC_OPERATION_NAMES: readonly ["discover", "view_parameters", "invoke"];
5
5
  export type OperationName = (typeof OPERATION_NAMES)[number];
6
6
  export type DynamicOperationName = (typeof DYNAMIC_OPERATION_NAMES)[number];
7
+ export declare const FILE_INPUT_HELP_MESSAGE: string;
8
+ export declare const FILE_HANDLING_TEXT = "For parameters that accept files (FileData, Images, file URL types):\n- Provide a publicly accessible URL (http:// or https://)\n- Example: `{\"image\": \"https://example.com/photo.jpg\"}`\n- URL's generated by one Space can be used as inputs to another Space.";
7
9
  export declare function isDynamicSpaceMode(): boolean;
8
10
  export declare function getOperationNames(): readonly string[];
9
11
  export declare const spaceArgsSchema: z.ZodObject<{
@@ -82,7 +84,6 @@ export interface JsonSchema {
82
84
  description?: string;
83
85
  [key: string]: unknown;
84
86
  }
85
- export declare const FILE_INPUT_HELP_MESSAGE: string;
86
87
  export declare function isFileDataProperty(prop: JsonSchemaProperty): boolean;
87
88
  export declare function hasFileData(schema: JsonSchema): boolean;
88
89
  export interface InvokeResult {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/space/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/space/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,eAAe,oBAAoB,CAAC;AACjD,eAAO,MAAM,eAAe,gDAA+C,CAAC;AAC5E,eAAO,MAAM,uBAAuB,oDAAmD,CAAC;AACxF,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAC7D,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAK5E,eAAO,MAAM,uBAAuB,QAEM,CAAC;AAK3C,eAAO,MAAM,kBAAkB,yQAGwC,CAAC;AAKxE,wBAAgB,kBAAkB,IAAI,OAAO,CAE5C;AAKD,wBAAgB,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAErD;AAKD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;EAc1B,CAAC;AAKH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;EAOjC,CAAC;AAKH,wBAAgB,kBAAkB,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAE/D;AAED,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAKxD,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAKD,MAAM,WAAW,sBAAsB;IACtC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAKD,MAAM,WAAW,uBAAuB;IACvC,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAKD,MAAM,WAAW,kBAAkB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,KAAK,CAAC,EAAE,kBAAkB,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAKD,MAAM,WAAW,UAAU;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAChD,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAKD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAOpE;AAKD,wBAAgB,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAIvD;AAMD,MAAM,WAAW,YAAY;IAC5B,MAAM,EAAE;QACP,OAAO,EAAE,OAAO,EAAE,CAAC;QACnB,OAAO,CAAC,EAAE,OAAO,CAAC;QAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;KACvB,CAAC;IACF,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB"}
@@ -2,6 +2,12 @@ import { z } from 'zod';
2
2
  export const VIEW_PARAMETERS = 'view_parameters';
3
3
  export const OPERATION_NAMES = ['find', VIEW_PARAMETERS, 'invoke'];
4
4
  export const DYNAMIC_OPERATION_NAMES = ['discover', VIEW_PARAMETERS, 'invoke'];
5
+ export const FILE_INPUT_HELP_MESSAGE = 'Provide a publicly accessible URL (http:// or https://) for the file input. ' +
6
+ "Previously generated URL's are usable. ";
7
+ export const FILE_HANDLING_TEXT = `For parameters that accept files (FileData, Images, file URL types):
8
+ - Provide a publicly accessible URL (http:// or https://)
9
+ - Example: \`{"image": "https://example.com/photo.jpg"}\`
10
+ - URL's generated by one Space can be used as inputs to another Space.`;
5
11
  export function isDynamicSpaceMode() {
6
12
  return !!process.env.DYNAMIC_SPACE_DATA;
7
13
  }
@@ -13,8 +19,8 @@ export const spaceArgsSchema = z.object({
13
19
  space_name: z
14
20
  .string()
15
21
  .optional()
16
- .describe(`The Hugging Face space ID (format: "username/space-name"). Required for ${VIEW_PARAMETERS} and invoke operations.`),
17
- parameters: z.string().optional().describe('For invoke operation: JSON object string of parameters'),
22
+ .describe(`Space ID (format: "username/space-name"). Required for operation = ${VIEW_PARAMETERS} or invoke.`),
23
+ parameters: z.string().optional().describe('Required for invoke operation: JSON object string of parameters'),
18
24
  search_query: z
19
25
  .string()
20
26
  .optional()
@@ -27,13 +33,11 @@ export const dynamicSpaceArgsSchema = z.object({
27
33
  .string()
28
34
  .optional()
29
35
  .describe(`Space ID (format: "username/space-name"). Required for "${VIEW_PARAMETERS}" and "invoke" operations.`),
30
- parameters: z.string().optional().describe('JSON object string of parameters. Only required for "invoke" operation.'),
36
+ parameters: z.string().optional().describe('JSON object string of parameters. Only used for "invoke" operation.'),
31
37
  });
32
38
  export function getSpaceArgsSchema() {
33
39
  return isDynamicSpaceMode() ? dynamicSpaceArgsSchema : spaceArgsSchema;
34
40
  }
35
- export const FILE_INPUT_HELP_MESSAGE = 'Provide a publicly accessible URL (http:// or https://) for the Gradio file input. ' +
36
- "Content previously generated by 'invoke' is usable, as well as Hub Repository URLs. ";
37
41
  export function isFileDataProperty(prop) {
38
42
  return (prop.title === 'ImageData' ||
39
43
  prop.title === 'FileData' ||
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/space/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,CAAU,CAAC;AAC5E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAU,CAAC;AAOxF,MAAM,UAAU,kBAAkB;IACjC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;AACzC,CAAC;AAKD,MAAM,UAAU,iBAAiB;IAChC,OAAO,kBAAkB,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,eAAe,CAAC;AACzE,CAAC;AAKD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC/E,UAAU,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,2EAA2E,eAAe,yBAAyB,CACnH;IACF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;IACpG,YAAY,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,kLAAkL,CAClL;IACF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;CAC9G,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACvF,UAAU,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,eAAe,4BAA4B,CAAC;IAClH,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;CACrH,CAAC,CAAC;AAKH,MAAM,UAAU,kBAAkB;IACjC,OAAO,kBAAkB,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,eAAe,CAAC;AACxE,CAAC;AAqED,MAAM,CAAC,MAAM,uBAAuB,GACnC,qFAAqF;IACrF,sFAAsF,CAAC;AAKxF,MAAM,UAAU,kBAAkB,CAAC,IAAwB;IAC1D,OAAO,CACN,IAAI,CAAC,KAAK,KAAK,WAAW;QAC1B,IAAI,CAAC,KAAK,KAAK,UAAU;QACzB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChE,KAAK,CACL,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,WAAW,CAAC,MAAkB;IAC7C,IAAI,CAAC,MAAM,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAErC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAClF,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/space/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AACjD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,QAAQ,CAAU,CAAC;AAC5E,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,UAAU,EAAE,eAAe,EAAE,QAAQ,CAAU,CAAC;AAOxF,MAAM,CAAC,MAAM,uBAAuB,GACnC,8EAA8E;IAC9E,yCAAyC,CAAC;AAK3C,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;uEAGqC,CAAC;AAKxE,MAAM,UAAU,kBAAkB;IACjC,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;AACzC,CAAC;AAKD,MAAM,UAAU,iBAAiB;IAChC,OAAO,kBAAkB,EAAE,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,eAAe,CAAC;AACzE,CAAC;AAKD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC/E,UAAU,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,sEAAsE,eAAe,aAAa,CAAC;IAC9G,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;IAC7G,YAAY,EAAE,CAAC;SACb,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,kLAAkL,CAClL;IACF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uEAAuE,CAAC;CAC9G,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IACvF,UAAU,EAAE,CAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2DAA2D,eAAe,4BAA4B,CAAC;IAClH,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;CACjH,CAAC,CAAC;AAKH,MAAM,UAAU,kBAAkB;IACjC,OAAO,kBAAkB,EAAE,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,eAAe,CAAC;AACxE,CAAC;AAqED,MAAM,UAAU,kBAAkB,CAAC,IAAwB;IAC1D,OAAO,CACN,IAAI,CAAC,KAAK,KAAK,WAAW;QAC1B,IAAI,CAAC,KAAK,KAAK,UAAU;QACzB,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAChE,KAAK,CACL,CAAC;AACH,CAAC;AAKD,MAAM,UAAU,WAAW,CAAC,MAAkB;IAC7C,IAAI,CAAC,MAAM,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAErC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AAClF,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { CallToolResultSchema, type ServerNotification, type ServerRequest } from '@modelcontextprotocol/sdk/types.js';
2
+ import type { RequestHandlerExtra } from '@modelcontextprotocol/sdk/shared/protocol.js';
3
+ export interface GradioCallResult {
4
+ result: typeof CallToolResultSchema._type;
5
+ capturedHeaders: Record<string, string>;
6
+ }
7
+ export interface GradioCallOptions {
8
+ onHeaders?: (headers: Headers) => void;
9
+ logProxiedReplica?: boolean;
10
+ }
11
+ export declare function extractReplicaId(headerValue: string | undefined): string | null;
12
+ export declare function rewriteReplicaUrlsInResult(result: typeof CallToolResultSchema._type, proxiedReplicaHeader: string | undefined): typeof CallToolResultSchema._type;
13
+ export declare function callGradioToolWithHeaders(sseUrl: string, toolName: string, parameters: Record<string, unknown>, hfToken: string | undefined, extra: RequestHandlerExtra<ServerRequest, ServerNotification> | undefined, options?: GradioCallOptions): Promise<GradioCallResult>;
14
+ //# sourceMappingURL=gradio-caller.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradio-caller.d.ts","sourceRoot":"","sources":["../../../src/space/utils/gradio-caller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,KAAK,kBAAkB,EAAE,KAAK,aAAa,EAAE,MAAM,oCAAoC,CAAC;AACvH,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,8CAA8C,CAAC;AAExG,MAAM,WAAW,gBAAgB;IAChC,MAAM,EAAE,OAAO,oBAAoB,CAAC,KAAK,CAAC;IAC1C,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACxC;AAED,MAAM,WAAW,iBAAiB;IAEjC,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAEvC,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAMD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAO/E;AAOD,wBAAgB,0BAA0B,CACzC,MAAM,EAAE,OAAO,oBAAoB,CAAC,KAAK,EACzC,oBAAoB,EAAE,MAAM,GAAG,SAAS,GACtC,OAAO,oBAAoB,CAAC,KAAK,CAuCnC;AAMD,wBAAsB,yBAAyB,CAC9C,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,KAAK,EAAE,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,GAAG,SAAS,EACzE,OAAO,GAAE,iBAAsB,GAC7B,OAAO,CAAC,gBAAgB,CAAC,CAiH3B"}
@@ -0,0 +1,138 @@
1
+ import { Client } from '@modelcontextprotocol/sdk/client/index.js';
2
+ import { SSEClientTransport } from '@modelcontextprotocol/sdk/client/sse.js';
3
+ import { CallToolResultSchema } from '@modelcontextprotocol/sdk/types.js';
4
+ export function extractReplicaId(headerValue) {
5
+ if (!headerValue)
6
+ return null;
7
+ const parts = headerValue.split('-');
8
+ if (parts.length < 2)
9
+ return null;
10
+ const replicaId = parts[parts.length - 1];
11
+ if (!replicaId || replicaId.trim() === '')
12
+ return null;
13
+ return replicaId;
14
+ }
15
+ export function rewriteReplicaUrlsInResult(result, proxiedReplicaHeader) {
16
+ if (process.env.NO_REPLICA_REWRITE)
17
+ return result;
18
+ const replicaId = extractReplicaId(proxiedReplicaHeader);
19
+ if (!replicaId)
20
+ return result;
21
+ const urlPattern = /https:\/\/([^\s"']+)\/gradio_api(\S*)?/g;
22
+ const rewriteText = (text) => text.replace(urlPattern, (_match, host, rest = '') => {
23
+ return `https://${host}/--replicas/${replicaId}/gradio_api${rest}`;
24
+ });
25
+ let changed = false;
26
+ const newContent = result.content.map((item) => {
27
+ if (typeof item === 'string') {
28
+ const rewritten = rewriteText(item);
29
+ if (rewritten !== item) {
30
+ changed = true;
31
+ return { type: 'text', text: rewritten };
32
+ }
33
+ return { type: 'text', text: item };
34
+ }
35
+ if (item && typeof item === 'object' && 'text' in item && typeof item.text === 'string') {
36
+ const rewritten = rewriteText(item.text);
37
+ if (rewritten !== item.text) {
38
+ changed = true;
39
+ return { ...item, text: rewritten };
40
+ }
41
+ }
42
+ return item;
43
+ });
44
+ if (!changed)
45
+ return result;
46
+ return {
47
+ ...result,
48
+ content: newContent,
49
+ };
50
+ }
51
+ export async function callGradioToolWithHeaders(sseUrl, toolName, parameters, hfToken, extra, options = {}) {
52
+ const capturedHeaders = {};
53
+ let loggedHeader = false;
54
+ const handleHeaders = (headers) => {
55
+ const proxiedReplica = headers.get('x-proxied-replica') ?? '';
56
+ if (proxiedReplica) {
57
+ capturedHeaders['x-proxied-replica'] = proxiedReplica;
58
+ }
59
+ if (options.logProxiedReplica && !loggedHeader) {
60
+ loggedHeader = true;
61
+ }
62
+ options.onHeaders?.(headers);
63
+ };
64
+ const captureHeadersFetch = async (url, init) => {
65
+ const response = await fetch(url, init);
66
+ handleHeaders(response.headers);
67
+ return response;
68
+ };
69
+ const buildEventSourceFetch = (extraHeaders) => (url, init) => {
70
+ const headers = new Headers(init?.headers);
71
+ if (extraHeaders) {
72
+ Object.entries(extraHeaders).forEach(([key, value]) => headers.set(key, value));
73
+ }
74
+ const requestInit = { ...init, headers };
75
+ return captureHeadersFetch(url.toString(), requestInit);
76
+ };
77
+ const remoteClient = new Client({
78
+ name: 'hf-mcp-gradio-client',
79
+ version: '1.0.0',
80
+ }, {
81
+ capabilities: {},
82
+ });
83
+ const transportOptions = {
84
+ fetch: captureHeadersFetch,
85
+ };
86
+ if (hfToken) {
87
+ const headerName = 'X-HF-Authorization';
88
+ const customHeaders = {
89
+ [headerName]: `Bearer ${hfToken}`,
90
+ };
91
+ transportOptions.requestInit = {
92
+ headers: customHeaders,
93
+ };
94
+ transportOptions.eventSourceInit = {
95
+ fetch: buildEventSourceFetch(customHeaders),
96
+ };
97
+ }
98
+ else {
99
+ transportOptions.eventSourceInit = {
100
+ fetch: buildEventSourceFetch(),
101
+ };
102
+ }
103
+ const transport = new SSEClientTransport(new URL(sseUrl), transportOptions);
104
+ await remoteClient.connect(transport);
105
+ try {
106
+ const progressToken = extra?._meta?.progressToken;
107
+ const requestOptions = {};
108
+ if (progressToken !== undefined && extra) {
109
+ requestOptions.onprogress = (progress) => {
110
+ void extra.sendNotification({
111
+ method: 'notifications/progress',
112
+ params: {
113
+ progressToken,
114
+ progress: progress.progress,
115
+ total: progress.total,
116
+ message: progress.message,
117
+ },
118
+ });
119
+ };
120
+ requestOptions.resetTimeoutOnProgress = true;
121
+ }
122
+ const result = await remoteClient.request({
123
+ method: 'tools/call',
124
+ params: {
125
+ name: toolName,
126
+ arguments: parameters,
127
+ _meta: progressToken !== undefined ? { progressToken } : undefined,
128
+ },
129
+ }, CallToolResultSchema, requestOptions);
130
+ const proxiedReplica = capturedHeaders['x-proxied-replica'];
131
+ const rewritten = rewriteReplicaUrlsInResult(result, proxiedReplica);
132
+ return { result: rewritten, capturedHeaders };
133
+ }
134
+ finally {
135
+ await remoteClient.close();
136
+ }
137
+ }
138
+ //# sourceMappingURL=gradio-caller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gradio-caller.js","sourceRoot":"","sources":["../../../src/space/utils/gradio-caller.ts"],"names":[],"mappings":"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"}