Download packages/agent-core-v2/src/mcpCore/client-remote.ts from SaylorTwift/kimi-code: direct link, hf CLI and curl.
- Browser
- Download file 1.13 kB
-
https://huggingface.co/SaylorTwift/kimi-code/resolve/main/packages/agent-core-v2/src/mcpCore/client-remote.ts
- Command line
-
hf download hf://SaylorTwift/kimi-code/packages/agent-core-v2/src/mcpCore/client-remote.ts
-
curl -L -o client-remote.ts https://huggingface.co/SaylorTwift/kimi-code/resolve/main/packages/agent-core-v2/src/mcpCore/client-remote.ts
1.13 kB
| import type { McpRemoteServerConfig, McpServerConfig } from './config-schema'; | |
| import { ErrorCodes, Error2 } from '#/errors'; | |
| export function buildMcpRemoteHeaders( | |
| config: McpRemoteServerConfig, | |
| envLookup: (name: string) => string | undefined, | |
| ): Record<string, string> | undefined { | |
| const headers: Record<string, string> = { ...config.headers }; | |
| if (config.bearerTokenEnvVar !== undefined) { | |
| const token = envLookup(config.bearerTokenEnvVar); | |
| if (token === undefined || token.length === 0) { | |
| throw new Error2( | |
| ErrorCodes.CONFIG_INVALID, | |
| `MCP ${config.transport.toUpperCase()} bearer token env var "${config.bearerTokenEnvVar}" is not set or is empty`, | |
| ); | |
| } | |
| for (const key of Object.keys(headers)) { | |
| if (key.toLowerCase() === 'authorization') { | |
| delete headers[key]; | |
| } | |
| } | |
| headers['Authorization'] = `Bearer ${token}`; | |
| } | |
| return Object.keys(headers).length > 0 ? headers : undefined; | |
| } | |
| export function isRemoteMcpConfig(config: McpServerConfig): config is McpRemoteServerConfig { | |
| return config.transport === 'http' || config.transport === 'sse'; | |
| } | |