McpToolRegistrationService class
发现为 OpenAI 代理 SDK 设置格式的 MCP 服务器和列表工具。 使用 listToolServers 提取服务器配置。
构造函数
| Mcp |
构造 McpToolRegistrationService。 |
方法
| add |
使用发现的工具和服务器配置注册 MCP 工具服务器和更新代理选项。 调用此选项以基于当前的 MCP 环境启用动态 OpenAI 工具访问。 |
| send |
将聊天历史记录从 OpenAI 会话发送到 MCP 平台,以便进行实时威胁防护。 此方法使用 示例
|
| send |
将 OpenAI 消息列表发送到 MCP 平台进行实时威胁防护。 此方法将提供的 AgentInputItem 消息转换为 示例
|
构造函数详细信息
McpToolRegistrationService(IConfigurationProvider<OpenAIToolingConfiguration>)
构造 McpToolRegistrationService。
new McpToolRegistrationService(configProvider?: IConfigurationProvider<OpenAIToolingConfiguration>)
参数
- configProvider
可选配置提供程序。 如果未指定,则默认为 defaultOpenAIToolingConfigurationProvider。
方法详细信息
addToolServersToAgent(Agent<unknown, "text">, Authorization, string, TurnContext, string)
使用发现的工具和服务器配置注册 MCP 工具服务器和更新代理选项。 调用此选项以基于当前的 MCP 环境启用动态 OpenAI 工具访问。
function addToolServersToAgent(agent: Agent<unknown, "text">, authorization: Authorization, authHandlerName: string, turnContext: TurnContext, authToken: string): Promise<Agent<unknown, "text">>
参数
- agent
-
Agent<unknown, "text">
将向其添加 MCP 服务器的 OpenAI 代理实例。
- authorization
- Authorization
令牌交换的授权对象。
- authHandlerName
-
string
用于令牌交换的身份验证处理程序的名称。
- turnContext
- TurnContext
当前请求的 TurnContext。
- authToken
-
string
用于 MCP 服务器访问的可选持有者令牌。
返回
Promise<Agent<unknown, "text">>
已注册 MCP 服务器的已更新代理实例。
sendChatHistoryAsync(TurnContext, OpenAIConversationsSession, number, ToolOptions)
将聊天历史记录从 OpenAI 会话发送到 MCP 平台,以便进行实时威胁防护。
此方法使用 getItems() 从提供的 OpenAI 会话中提取消息,将其 ChatHistoryMessage 转换为格式,并将其发送到 MCP 平台。
示例
const session = new OpenAIConversationsSession(sessionOptions);
const result = await service.sendChatHistoryAsync(turnContext, session, 50);
if (result.succeeded) {
console.log('Chat history sent successfully');
} else {
console.error('Failed to send chat history:', result.errors);
}
function sendChatHistoryAsync(turnContext: TurnContext, session: OpenAIConversationsSession, limit?: number, toolOptions?: ToolOptions): Promise<OperationResult>
参数
- turnContext
- TurnContext
包含聊天信息的轮次上下文。
- session
- OpenAIConversationsSession
要从中提取消息的 OpenAI 会话实例。
- limit
-
number
要从会话检索的消息数的可选限制。
- toolOptions
- ToolOptions
自定义的可选工具选项。
返回
Promise<OperationResult>
解析为 OperationResult 的 Promise,指示成功或失败。
sendChatHistoryMessagesAsync(TurnContext, AgentInputItem[], ToolOptions)
将 OpenAI 消息列表发送到 MCP 平台进行实时威胁防护。
此方法将提供的 AgentInputItem 消息转换为 ChatHistoryMessage 格式并将其发送到 MCP 平台。
示例
const items = await session.getItems();
const result = await service.sendChatHistoryMessagesAsync(turnContext, items);
function sendChatHistoryMessagesAsync(turnContext: TurnContext, messages: AgentInputItem[], toolOptions?: ToolOptions): Promise<OperationResult>
参数
- turnContext
- TurnContext
包含聊天信息的轮次上下文。
- messages
-
AgentInputItem[]
要发送的 AgentInputItem 消息的数组。
- toolOptions
- ToolOptions
用于自定义的可选 ToolOptions。
返回
Promise<OperationResult>
解析为 OperationResult 的 Promise,指示成功或失败。