用途:为 Tambo 提供数据和能力,主要包括自定义工具、MCP 服务器、上下文助手与资源四类接口,用于让模型能够调用函数、获取外部服务、感知环境状态并引用文档。
主要能力:
- 自定义工具:用 defineTool 注册 JavaScript 函数,字段包括 name、description、inputSchema(Zod 对象,建议用 .describe())、可选 outputSchema、tool 异步函数、transformToContent(返回富内容)。通过 TamboProvider 的 tools 属性传入。
- MCP 服务器:可连接外部 MCP 服务获取工具、资源与提示。服务端方式在项目仪表盘点击 Add MCP Server,填写 URL 与类型(StreamableHTTP 或 SSE),必要时完成 OAuth;性能更快、支持 OAuth 与 API 密钥,但不支持本地服务器。客户端方式在 React 代码中配置 mcpServers,需安装 @modelcontextprotocol/sdk@^1.24.0、zod@^4.0.0、zod-to-json-schema@^3.25.0,支持 localhost,但性能较慢且仅限浏览器会话认证。
- 上下文助手:通过 contextHelpers 在每条消息中提供动态上下文,可返回当前页面、时间、选中项等。使用 useTamboContextHelpers 的 addContextHelper / removeContextHelper 在运行时增删。
- 上下文附件:useTamboContextAttachment 提供一次性上下文,仅作用于下一条消息,发送后清除,适合用户选中的文件或选区。
- 本地资源:注册可通过 @ 提及引用的资源。静态资源用 resources 数组加 getResource;动态资源需同时提供 listResources 与 getResource;也可用 useTamboRegistry 的 registerResource / registerResources 以编程方式注册。
使用方式:在 React 应用中通过 TamboProvider 传入 tools、mcpServers、contextHelpers、resources、listResources、getResource 等属性;动态能力使用对应 hooks。
适用场景:需要让 AI 调用自定义函数、接入 MCP 生态、感知页面状态或引用文档数据的 React 应用。
限制:动态资源必须同时提供 listResources 和 getResource;上下文附件仅对下一条消息生效;服务端 MCP 不支持本地服务器,客户端 MCP 性能较慢且仅限浏览器会话认证。具体版本与配置细节以实际资料为准,其他平台或收费信息暂未提供。