|
1 | 1 | import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js' |
2 | 2 | import type { CallToolResult, TextContent } from '@modelcontextprotocol/sdk/types.js' |
3 | | -import type { CreateAssemblyParams, LintAssemblyInstructionsResult } from '@transloadit/node' |
| 3 | +import type { |
| 4 | + AssemblyInstructionsInput, |
| 5 | + CreateAssemblyParams, |
| 6 | + LintAssemblyInstructionsResult, |
| 7 | +} from '@transloadit/node' |
4 | 8 | import { |
5 | 9 | extractFieldNamesFromTemplate, |
6 | 10 | getRobotHelp, |
@@ -541,6 +545,14 @@ const parseInstructions = (input: unknown): CreateAssemblyParams | undefined => |
541 | 545 | return undefined |
542 | 546 | } |
543 | 547 |
|
| 548 | +const toAssemblyInstructionsInput = (params: CreateAssemblyParams): AssemblyInstructionsInput => { |
| 549 | + if (!params.auth || params.auth.key) { |
| 550 | + return params as AssemblyInstructionsInput |
| 551 | + } |
| 552 | + const { auth: _auth, ...rest } = params |
| 553 | + return rest as AssemblyInstructionsInput |
| 554 | +} |
| 555 | + |
544 | 556 | export const createTransloaditMcpServer = ( |
545 | 557 | options: TransloaditMcpServerOptions = {}, |
546 | 558 | ): McpServer => { |
@@ -631,7 +643,10 @@ export const createTransloaditMcpServer = ( |
631 | 643 | const template = await client.getTemplate(params.template_id) |
632 | 644 | allowStepsOverride = template.content.allow_steps_override !== false |
633 | 645 | try { |
634 | | - const merged = mergeTemplateContent(template.content, params) |
| 646 | + const merged = mergeTemplateContent( |
| 647 | + template.content, |
| 648 | + toAssemblyInstructionsInput(params), |
| 649 | + ) |
635 | 650 | mergedInstructions = merged as CreateAssemblyParams |
636 | 651 | mergedSteps = isRecord(merged.steps) ? (merged.steps as Record<string, unknown>) : {} |
637 | 652 | mergedFields = isRecord(merged.fields) ? (merged.fields as Record<string, unknown>) : {} |
@@ -681,7 +696,7 @@ export const createTransloaditMcpServer = ( |
681 | 696 | mergedSteps, |
682 | 697 | isRecord(params.steps) ? params.steps : undefined, |
683 | 698 | analysis.importStepNames, |
684 | | - ) |
| 699 | + ) as CreateAssemblyParams['steps'] |
685 | 700 | } |
686 | 701 | } |
687 | 702 | } |
|
0 commit comments