MCP
MCP(模型上下文协议)工具的执行上下文已被重新组织,已弃用的客户端类已被移除。
🌐 MCP (Model Context Protocol) tool execution context has been reorganized, and deprecated client classes have been removed.
已更改Direct link to 已更改
🌐 Changed
getMCPServers 到 listMCPServersDirect link to getmcpservers-to-listmcpservers
🌐 getMCPServers to listMCPServers
mastra.getMCPServers() 方法已重命名为 mastra.listMCPServers()。此更改与整个 API 中的命名约定保持一致,其中复数的 getter 方法使用 list 前缀。
🌐 The mastra.getMCPServers() method has been renamed to mastra.listMCPServers(). This change aligns with the naming convention used across the API where plural getter methods use the list prefix.
要迁移,请将所有对 mastra.getMCPServers() 的调用替换为 mastra.listMCPServers()。
🌐 To migrate, replace all calls to mastra.getMCPServers() with mastra.listMCPServers().
- const servers = await mastra.getMCPServers();
+ const servers = await mastra.listMCPServers();
你可以使用 Mastra 的 codemod CLI 来自动更新你的代码:
🌐 You can use Mastra's codemod CLI to update your code automatically:
npx @mastra/codemod@latest v1/mastra-plural-apis .
getTools 到 listToolsDirect link to gettools-to-listtools
🌐 getTools to listTools
mcp.getTools() 方法已重命名为 mcp.listTools()。此更改与整个 API 中的命名约定保持一致,其中复数获取方法使用 list 前缀。
🌐 The mcp.getTools() method has been renamed to mcp.listTools(). This change aligns with the naming convention used across the API where plural getter methods use the list prefix.
要迁移,请将所有对 mcp.getTools() 的调用替换为 mcp.listTools()。
🌐 To migrate, replace all calls to mcp.getTools() with mcp.listTools().
- const tools = await mcp.getTools();
+ const tools = await mcp.listTools();
你可以使用 Mastra 的 codemod CLI 来自动更新你的代码:
🌐 You can use Mastra's codemod CLI to update your code automatically:
npx @mastra/codemod@latest v1/mcp-get-tools .
getToolsets 到 listToolsetsDirect link to gettoolsets-to-listtoolsets
🌐 getToolsets to listToolsets
mcp.getToolsets() 方法已重命名为 mcp.listToolsets()。此更改与 API 中的命名约定保持一致,其中复数 getter 方法使用 list 前缀。
🌐 The mcp.getToolsets() method has been renamed to mcp.listToolsets(). This change aligns with the naming convention used across the API where plural getter methods use the list prefix.
要迁移,请将所有对 mcp.getToolsets() 的调用替换为 mcp.listToolsets()。
🌐 To migrate, replace all calls to mcp.getToolsets() with mcp.listToolsets().
- const toolsets = await mcp.getToolsets();
+ const toolsets = await mcp.listToolsets();
你可以使用 Mastra 的 codemod CLI 来自动更新你的代码:
🌐 You can use Mastra's codemod CLI to update your code automatically:
npx @mastra/codemod@latest v1/mcp-get-toolsets .
MCP 工具上下文属性组织Direct link to MCP 工具上下文属性组织
🌐 MCP tool context properties organization
MCP 工具中的上下文属性现在已归类到 context.mcp 命名空间下。此更改提供了更好的组织结构,并为 MCP 特定功能提供了更清晰的 API 界面。
🌐 Context properties in MCP tools are now organized under the context.mcp namespace. This change provides better organization and clearer API surface for MCP-specific functionality.
要进行迁移,请通过 context.mcp 访问 MCP 特定的属性,如 elicitation 和 extra,而不是直接从上下文参数中访问。
🌐 To migrate, access MCP-specific properties like elicitation and extra through context.mcp instead of directly from the context parameter.
createTool({
id: 'account-balance',
- execute: async ({ context, elicitation, extra }) => {
- await checkAuth(extra.authInfo);
- const result = await elicitation.sendRequest({
- message: `Is it ok to fetch account ${context.accountId}?`,
- });
- },
+ execute: async (inputData, context) => {
+ await checkAuth(context?.mcp?.extra.authInfo);
+ const result = await context?.mcp?.elicitation.sendRequest({
+ message: `Is it ok to fetch account ${inputData.accountId}?`,
+ });
+ },
});
已移除Direct link to 已移除
🌐 Removed
已弃用的MCP客户端类Direct link to 已弃用的MCP客户端类
🌐 Deprecated MCP client classes
MastraMCPClient及相关已弃用的API已从@mastra/mcp中移除。此更改统一使用新的MCP客户端API。
🌐 The MastraMCPClient and related deprecated APIs have been removed from @mastra/mcp. This change consolidates on the new MCP client API.
要迁移,请使用新的 MCPClient 类,而不是弃用的类。
🌐 To migrate, use the new MCPClient class instead of deprecated classes.
- import { MastraMCPClient, MCPConfiguration } from '@mastra/mcp/client';
+ import { MCPClient } from '@mastra/mcp/client';
- const client = new MastraMCPClient({ ... });
- const config = new MCPConfiguration({ ... });
+ const client = new MCPClient({ ... });