MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / toServerInput

Function toServerInput

packages/plugins/mcp/src/api/handlers.ts:29–86  ·  view source on GitHub ↗
(
  payload: { transport?: "remote" | "stdio" } & Record<string, unknown>,
)

Source from the content-addressed store, hash-verified

27// ---------------------------------------------------------------------------
28
29const toServerInput = (
30 payload: { transport?: "remote" | "stdio" } & Record<string, unknown>,
31): McpServerInput => {
32 if (payload.transport === "stdio") {
33 const p = payload as {
34 transport: "stdio";
35 name: string;
36 description?: string;
37 command: string;
38 args?: readonly string[];
39 envVars?: readonly string[];
40 env?: Record<string, string>;
41 cwd?: string;
42 versionNegotiation?: "legacy" | "auto";
43 slug?: string;
44 };
45 return {
46 transport: "stdio",
47 name: p.name,
48 description: p.description,
49 command: p.command,
50 args: p.args ? [...p.args] : undefined,
51 envVars: p.envVars ? [...p.envVars] : undefined,
52 env: p.env,
53 cwd: p.cwd,
54 versionNegotiation: p.versionNegotiation,
55 slug: p.slug,
56 };
57 }
58
59 const p = payload as {
60 transport?: "remote";
61 name: string;
62 description?: string;
63 endpoint: string;
64 remoteTransport?: "streamable-http" | "sse" | "auto";
65 queryParams?: Record<string, string>;
66 headers?: Record<string, string>;
67 slug?: string;
68 authenticationTemplate?: McpServerInput extends { authenticationTemplate?: infer T }
69 ? T
70 : never;
71 auth?: McpServerInput extends { auth?: infer A } ? A : never;
72 };
73
74 return {
75 transport: "remote",
76 name: p.name,
77 description: p.description,
78 endpoint: p.endpoint,
79 remoteTransport: p.remoteTransport,
80 queryParams: p.queryParams,
81 headers: p.headers,
82 slug: p.slug,
83 authenticationTemplate: p.authenticationTemplate,
84 auth: p.auth,
85 };
86};

Callers 1

handlers.tsFile · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected