@mastra/mcp 2.9.0-alpha.2 → 2.9.0-alpha.3

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.
@@ -955,6 +955,12 @@ export declare class MCPClient<TServers extends MCPClientServers<TServers> = MCP
955
955
  private listResourceTemplatesWithErrors;
956
956
  private listPromptsWithErrors;
957
957
  private discoverValuesWithErrors;
958
+ /**
959
+ * Stores a tool under its `serverName_toolName` key. Server and tool names can both contain `_`,
960
+ * so two different pairs can produce one key (`local` + `x_status` and `local_x` + `status`).
961
+ * The later pair keeps the key, as before; this logs a warning instead of dropping a tool silently.
962
+ */
963
+ private setNamespacedTool;
958
964
  /**
959
965
  * Runs a per-server discovery `operation` against every configured server
960
966
  * concurrently, isolating and logging per-server failures. Results are
@@ -1 +1 @@
1
- {"version":3,"file":"configuration.d.ts","sourceRoot":"","sources":["../../src/client/configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configuration.d.ts","sourceRoot":"","sources":["../../src/client/configuration.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ name: mastra-mcp
3
3
  description: Documentation for @mastra/mcp. Use when working with @mastra/mcp APIs, configuration, or implementation.
4
4
  metadata:
5
5
  package: "@mastra/mcp"
6
- version: "2.9.0-alpha.2"
6
+ version: "2.9.0-alpha.3"
7
7
  ---
8
8
 
9
9
  ## When to use
@@ -1,16 +1,16 @@
1
1
  {
2
- "version": "2.9.0-alpha.2",
2
+ "version": "2.9.0-alpha.3",
3
3
  "package": "@mastra/mcp",
4
4
  "exports": {
5
5
  "InMemoryMCPEventCursorStore": {
6
6
  "types": "dist/integrations/events-cursor-store.d.ts",
7
7
  "implementation": "dist/index.js",
8
- "line": 25427
8
+ "line": 25452
9
9
  },
10
10
  "InMemoryMCPTaskStore": {
11
11
  "types": "dist/server/tasks/in-memory-store.d.ts",
12
12
  "implementation": "dist/index.js",
13
- "line": 22202
13
+ "line": 22227
14
14
  },
15
15
  "InMemoryOAuthStorage": {
16
16
  "types": "dist/client/oauth-provider.d.ts",
@@ -20,7 +20,7 @@
20
20
  "InMemoryWebhookSubscriptionStore": {
21
21
  "types": "dist/server/events/webhook-store.d.ts",
22
22
  "implementation": "dist/index.js",
23
- "line": 20572
23
+ "line": 20597
24
24
  },
25
25
  "InternalMastraMCPClient": {
26
26
  "types": "dist/client/client.d.ts",
@@ -40,7 +40,7 @@
40
40
  "MCPEventsSignalProvider": {
41
41
  "types": "dist/integrations/events-signals.d.ts",
42
42
  "implementation": "dist/index.js",
43
- "line": 25612
43
+ "line": 25637
44
44
  },
45
45
  "MCPOAuthClientProvider": {
46
46
  "types": "dist/client/oauth-provider.d.ts",
@@ -50,12 +50,12 @@
50
50
  "MCPServer": {
51
51
  "types": "dist/server/server.d.ts",
52
52
  "implementation": "dist/index.js",
53
- "line": 23217
53
+ "line": 23242
54
54
  },
55
55
  "MCPTaskLimitError": {
56
56
  "types": "dist/server/tasks/store.d.ts",
57
57
  "implementation": "dist/index.js",
58
- "line": 21384
58
+ "line": 21409
59
59
  },
60
60
  "MCP_CALL_TOOL_CONTENT": {
61
61
  "types": "dist/client/client.d.ts",
@@ -80,32 +80,32 @@
80
80
  "MCP_PROTOCOL_VERSION": {
81
81
  "types": "dist/server/types.d.ts",
82
82
  "implementation": "dist/index.js",
83
- "line": 25154
83
+ "line": 25179
84
84
  },
85
85
  "ServerEventActions": {
86
86
  "types": "dist/server/events/actions.d.ts",
87
87
  "implementation": "dist/index.js",
88
- "line": 19673
88
+ "line": 19698
89
89
  },
90
90
  "ServerPromptActions": {
91
91
  "types": "dist/server/actions.d.ts",
92
92
  "implementation": "dist/index.js",
93
- "line": 19653
93
+ "line": 19678
94
94
  },
95
95
  "ServerResourceActions": {
96
96
  "types": "dist/server/actions.d.ts",
97
97
  "implementation": "dist/index.js",
98
- "line": 19639
98
+ "line": 19664
99
99
  },
100
100
  "ServerToolActions": {
101
101
  "types": "dist/server/actions.d.ts",
102
102
  "implementation": "dist/index.js",
103
- "line": 19621
103
+ "line": 19646
104
104
  },
105
105
  "createIntrospectionValidator": {
106
106
  "types": "dist/server/oauth-middleware.d.ts",
107
107
  "implementation": "dist/index.js",
108
- "line": 25346
108
+ "line": 25371
109
109
  },
110
110
  "createOAuthCallbackServer": {
111
111
  "types": "dist/client/oauth-callback-server.d.ts",
@@ -115,7 +115,7 @@
115
115
  "createOAuthMiddleware": {
116
116
  "types": "dist/server/oauth-middleware.d.ts",
117
117
  "implementation": "dist/index.js",
118
- "line": 25199
118
+ "line": 25224
119
119
  },
120
120
  "createSimpleTokenProvider": {
121
121
  "types": "dist/client/oauth-provider.d.ts",
@@ -125,12 +125,12 @@
125
125
  "createStaticTokenValidator": {
126
126
  "types": "dist/server/oauth-middleware.d.ts",
127
127
  "implementation": "dist/index.js",
128
- "line": 25315
128
+ "line": 25340
129
129
  },
130
130
  "defineEvent": {
131
131
  "types": "dist/server/events/define-event.d.ts",
132
132
  "implementation": "dist/index.js",
133
- "line": 25417
133
+ "line": 25442
134
134
  },
135
135
  "extractBearerToken": {
136
136
  "types": "dist/shared/oauth-types.d.ts",
@@ -165,17 +165,17 @@
165
165
  "isMCPTaskStoreAdmin": {
166
166
  "types": "dist/server/tasks/store.d.ts",
167
167
  "implementation": "dist/index.js",
168
- "line": 21435
168
+ "line": 21460
169
169
  },
170
170
  "isWorkflowTaskContext": {
171
171
  "types": "dist/server/tasks/workflow-runs.d.ts",
172
172
  "implementation": "dist/index.js",
173
- "line": 22975
173
+ "line": 23000
174
174
  },
175
175
  "principalKeyOf": {
176
176
  "types": "dist/server/tasks/store.d.ts",
177
177
  "implementation": "dist/index.js",
178
- "line": 21376
178
+ "line": 21401
179
179
  },
180
180
  "taskKeyOf": {
181
181
  "types": "dist/shared/tasks/task-id.d.ts",
@@ -162,12 +162,13 @@ See [type generation reference](https://mastra.ai/reference/tools/mcp-client) fo
162
162
 
163
163
  Choose how to load tools based on whether the server configuration changes between requests:
164
164
 
165
- | | Static tools | Runtime toolsets |
166
- | ----------- | ---------------------------------- | ---------------------------------------- |
167
- | Method | `await mcpClient.listTools()` | `await mcpClient.listToolsets()` |
168
- | Use case | Shared, fixed configuration | Per-user or per-request configuration |
169
- | Credentials | Shared by all requests | Can vary between requests |
170
- | Agent API | `tools` in the `Agent` constructor | `toolsets` in `generate()` or `stream()` |
165
+ | | Static tools | Runtime toolsets |
166
+ | ----------- | ------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------- |
167
+ | Method | `await mcpClient.listTools()` | `await mcpClient.listToolsets()` |
168
+ | Use case | Shared, fixed configuration | Per-user or per-request configuration |
169
+ | Credentials | Shared by all requests | Can vary between requests |
170
+ | Agent API | `tools` in the `Agent` constructor | `toolsets` in `generate()` or `stream()` |
171
+ | Tool names | Prefixed with the server name, such as `weather_get_weather` | Raw tool names. Same-named tools from different servers collide. See [`listToolsets()`](https://mastra.ai/reference/tools/mcp-client). |
171
172
 
172
173
  The preceding agent example uses static tools. For runtime credentials, create a client for the request and pass its toolsets when calling the agent:
173
174
 
@@ -416,6 +416,8 @@ Retrieves all tools from all configured servers, with tool names namespaced by t
416
416
 
417
417
  App-only tools, whose `_meta.ui.visibility` omits `"model"`, are left out. `listToolsets()` and `listToolDefinitions()` leave them out too.
418
418
 
419
+ Server names and tool names can both contain `_`, so two different pairs can produce the same key. For example, server `local` with tool `x_status` and server `local_x` with tool `status` both produce `local_x_status`. The tool from the server listed later in `servers` keeps the key, and the client logs a warning that names both pairs. Rename one of the servers to keep both tools.
420
+
419
421
  ```ts
420
422
  new Agent({ id: 'agent', tools: await mcp.listTools() })
421
423
  ```
@@ -441,7 +443,7 @@ When called without options, the method omits only `durations`; `tools`, `errors
441
443
 
442
444
  ### `listToolsets()`
443
445
 
444
- Returns an object mapping namespaced tool names (in the format `serverName.toolName`) to their tool implementations. Intended to be passed at runtime into the generate or stream method.
446
+ Returns an object that maps each server name to that server's tools. Tools keep their raw names, without a server prefix. Intended to be passed at runtime into the generate or stream method.
445
447
 
446
448
  ```typescript
447
449
  const res = await agent.stream(prompt, {
@@ -449,6 +451,14 @@ const res = await agent.stream(prompt, {
449
451
  })
450
452
  ```
451
453
 
454
+ The agent combines toolsets by tool name. When two servers expose a tool with the same name, such as `search`, only the tool from the server listed later in `servers` reaches the model, and the agent logs a warning. To keep both tools, pass the prefixed tools from `listTools()` as a single toolset:
455
+
456
+ ```typescript
457
+ const res = await agent.stream(prompt, {
458
+ toolsets: { mcp: await mcp.listTools() }, // docs_search, tickets_search
459
+ })
460
+ ```
461
+
452
462
  ### `listToolsetsWithErrors(options?)`
453
463
 
454
464
  Returns toolsets grouped by server name, along with per-server discovery errors. Set `perServerTimeoutMs` to limit each server independently and include per-server `durations` in milliseconds.
package/dist/index.cjs CHANGED
@@ -19174,6 +19174,7 @@ onListChanged: async (serverName, handler) => {
19174
19174
  errorId: "MCP_CLIENT_GET_TOOLS_FAILED",
19175
19175
  logMessage: "Failed to list tools from server:"
19176
19176
  }, options);
19177
+ const keySources = /* @__PURE__ */ new Map();
19177
19178
  for (const { serverName, value, error, duration } of settled) {
19178
19179
  durations[serverName] = duration;
19179
19180
  if (error !== void 0) {
@@ -19181,7 +19182,7 @@ onListChanged: async (serverName, handler) => {
19181
19182
  errorDetails[serverName] = error;
19182
19183
  continue;
19183
19184
  }
19184
- for (const [toolName, toolConfig] of Object.entries(value)) connectedTools[`${serverName}_${toolName}`] = toolConfig;
19185
+ for (const [toolName, toolConfig] of Object.entries(value)) this.setNamespacedTool(connectedTools, keySources, serverName, toolName, toolConfig);
19185
19186
  }
19186
19187
  const result = {
19187
19188
  tools: connectedTools,
@@ -19353,16 +19354,18 @@ onListChanged: async (serverName, handler) => {
19353
19354
  async toolsFromDefinitions({ definitions: catalog }) {
19354
19355
  const configuredServers = new Set(Object.keys(this.serverConfigs));
19355
19356
  const tools = {};
19357
+ const keySources = /* @__PURE__ */ new Map();
19356
19358
  for (const [serverName, definitions] of Object.entries(catalog)) {
19357
19359
  if (!configuredServers.has(serverName)) {
19358
19360
  this.logger.warn("Skipping cached MCP tool definitions for a server that is no longer configured", { serverName });
19359
19361
  continue;
19360
19362
  }
19361
19363
  for (const [toolName, definition] of Object.entries(modelVisibleDefinitions(definitions))) try {
19362
- tools[`${serverName}_${toolName}`] = await this.toolFromDefinition({
19364
+ const tool = await this.toolFromDefinition({
19363
19365
  serverName,
19364
19366
  definition
19365
19367
  });
19368
+ this.setNamespacedTool(tools, keySources, serverName, toolName, tool);
19366
19369
  } catch (error) {
19367
19370
  if (!(error instanceof _mastra_core_error.MastraError && error.id === "MCP_CLIENT_INVALID_TOOL_INPUT_SCHEMA")) throw error;
19368
19371
  }
@@ -19423,6 +19426,28 @@ onListChanged: async (serverName, handler) => {
19423
19426
  } : result;
19424
19427
  }
19425
19428
  /**
19429
+ * Stores a tool under its `serverName_toolName` key. Server and tool names can both contain `_`,
19430
+ * so two different pairs can produce one key (`local` + `x_status` and `local_x` + `status`).
19431
+ * The later pair keeps the key, as before; this logs a warning instead of dropping a tool silently.
19432
+ */
19433
+ setNamespacedTool(tools, keySources, serverName, toolName, tool) {
19434
+ const key = `${serverName}_${toolName}`;
19435
+ const replaced = keySources.get(key);
19436
+ if (replaced) this.logger.warn(`MCP tool key "${key}" from server "${serverName}" (tool "${toolName}") replaces the tool from server "${replaced.serverName}" (tool "${replaced.toolName}"), which produces the same key. Only the tool from "${serverName}" is kept. Rename one of the servers in \`servers\` to keep both.`, {
19437
+ key,
19438
+ replaced,
19439
+ replacedBy: {
19440
+ serverName,
19441
+ toolName
19442
+ }
19443
+ });
19444
+ keySources.set(key, {
19445
+ serverName,
19446
+ toolName
19447
+ });
19448
+ tools[key] = tool;
19449
+ }
19450
+ /**
19426
19451
  * Runs a per-server discovery `operation` against every configured server
19427
19452
  * concurrently, isolating and logging per-server failures. Results are
19428
19453
  * returned in configuration order (`Object.keys(serverConfigs)`) so callers