diff options
| author | sigoden <sigoden@gmail.com> | 2024-12-13 06:01:53 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-12-13 06:01:53 +0800 |
| commit | 8e8b2f736b8e635396e713e219c8fe8575a6f491 (patch) | |
| tree | 287177124e95506d0442e9916b052f905ae100d3 /mcp/bridge/index.js | |
| parent | 33ef4f9178dc0d9c70f3e370a596c01780cc5b27 (diff) | |
| download | llm-functions-docker-8e8b2f736b8e635396e713e219c8fe8575a6f491.tar.gz | |
feat(mcp): add `prefix` filed to bridge server configuraiton (#148)
Diffstat (limited to 'mcp/bridge/index.js')
| -rw-r--r-- | mcp/bridge/index.js | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/mcp/bridge/index.js b/mcp/bridge/index.js index c978737..59896e3 100644 --- a/mcp/bridge/index.js +++ b/mcp/bridge/index.js @@ -29,8 +29,9 @@ try { async function startMcpServer(id, serverConfig) { console.log(`Starting ${id} server...`); const capabilities = { tools: {} }; + const { prefix = true, ...rest } = serverConfig; const transport = new StdioClientTransport({ - ...serverConfig, + ...rest, }); const client = new Client( { name: id, version: "1.0.0" }, @@ -42,7 +43,7 @@ async function startMcpServer(id, serverConfig) { ({ name, description, inputSchema }) => ({ spec: { - name: `${normalizeToolName(`${id}_${name}`)}`, + name: `${formatToolName(id, name, prefix)}`, description, parameters: inputSchema, }, @@ -181,7 +182,8 @@ function arrayify(a) { return r } -function normalizeToolName(name) { +function formatToolName(serverName, toolName, prefix) { + const name = prefix ? `${serverName}_${toolName}` : toolName; return name.toLowerCase().replace(/-/g, "_"); } |
