McpToolRegistrationService class
Find MCP-servere og listeværktøjer, der er formateret til LangChain Orchestrator. Bruger listToolServers til at hente serverkonfigurationer og getTools til at optælle værktøjer.
Indeholder også metoder til at sende chathistorik til MCP-platformen til analyse af trusler i realtid (RTP).
Konstruktører
| Mcp |
Konstruer en McpToolRegistrationService. |
Metoder
| add |
Registrerer MCP-værktøjsservere og opdaterer agentindstillinger med fundne værktøjer og serverkonfigurationer. Kald dette for at aktivere dynamisk langchain-værktøjsadgang baseret på det aktuelle MCP-miljø. |
| send |
Sender chathistorik fra en LangGraph CompiledStateGraph til MCP-platformen. Dette er den api, der er nemmest at bruge på højeste niveau. Den henter den aktuelle tilstand fra grafen, udtrækker meddelelser, konverterer dem til ChatHistoryMessage-format og sender dem til MCP-platformen for at beskytte trusler i realtid. Eksempel
|
| send |
Henter meddelelser fra en BaseChatMessageHistory-forekomst og sender dem til MCP-platformen. Brug denne API, når du arbejder med LangChains hukommelses abstraktioner (f.eks. InMemoryChatMessageHistory, RedisChatMessageHistory osv.). Eksempel
|
| send |
Sender en matrix af LangChain-meddelelser til MCP-platformen for at beskytte trusler i realtid. Dette er den API på laveste niveau, der accepterer rå BaseMessage-matrixer. Brug dette, når du allerede har udpakket meddelelser eller har en brugerdefineret meddelelseskilde, der ikke er dækket af API'er på højere niveau. Denne metode konverterer den angivne BaseMessage-matrix til ChatHistoryMessage-format og sender dem til MCP-platformen. Tomme matrixer sendes as-is for at registrere brugermeddelelsen på platformen. Eksempel
|
| send |
Udtrækker meddelelser fra et LangGraph StateSnapshot og sender dem til MCP-platformen. Brug denne API, når du allerede har et StateSnapshot (f.eks. fra et tidligere Eksempel
|
Oplysninger om konstruktør
McpToolRegistrationService(IConfigurationProvider<LangChainToolingConfiguration>)
Konstruer en McpToolRegistrationService.
new McpToolRegistrationService(configProvider?: IConfigurationProvider<LangChainToolingConfiguration>)
Parametre
- configProvider
Valgfri konfigurationsprovider. StandardindstillingenLangChainToolingConfigurationProvider er som standard, hvis den ikke er angivet.
Oplysninger om metode
addToolServersToAgent(ReactAgent<AgentTypeConfig<Record<string, any>, undefined, AnyAnnotationRoot, readonly AgentMiddleware<any, any, any, readonly (ClientTool | ServerTool)[]>[], readonly (ClientTool | ServerTool)[]>>, Authorization, string, TurnContext, string)
Registrerer MCP-værktøjsservere og opdaterer agentindstillinger med fundne værktøjer og serverkonfigurationer. Kald dette for at aktivere dynamisk langchain-værktøjsadgang baseret på det aktuelle MCP-miljø.
function addToolServersToAgent(agent: ReactAgent<AgentTypeConfig<Record<string, any>, undefined, AnyAnnotationRoot, readonly AgentMiddleware<any, any, any, readonly (ClientTool | ServerTool)[]>[], readonly (ClientTool | ServerTool)[]>>, authorization: Authorization, authHandlerName: string, turnContext: TurnContext, authToken: string): Promise<ReactAgent<AgentTypeConfig<Record<string, any>, undefined, AnyAnnotationRoot, readonly AgentMiddleware<any, any, any, readonly (ClientTool | ServerTool)[]>[], readonly (ClientTool | ServerTool)[]>>>
Parametre
- agent
-
ReactAgent<AgentTypeConfig<Record<string, any>, undefined, AnyAnnotationRoot, readonly AgentMiddleware<any, any, any, readonly (ClientTool | ServerTool)[]>[], readonly (ClientTool | ServerTool)[]>>
Den LangChain Agent-forekomst, som MCP-servere føjes til.
- authorization
- Authorization
Autorisationsobjekt for tokenudveksling.
- authHandlerName
-
string
Navnet på den godkendelseshandler, der skal bruges til tokenudveksling.
- turnContext
- TurnContext
TurnContext for den aktuelle anmodning.
- authToken
-
string
Valgfrit ihændehavertoken til MCP-serveradgang.
Returnerer
Promise<ReactAgent<AgentTypeConfig<Record<string, any>, undefined, AnyAnnotationRoot, readonly AgentMiddleware<any, any, any, readonly (ClientTool | ServerTool)[]>[], readonly (ClientTool | ServerTool)[]>>>
Den opdaterede Agent-forekomst med registrerede MCP-servere.
sendChatHistoryAsync(TurnContext, CompiledStateGraph<unknown, unknown, string, StateDefinition, StateDefinition, StateDefinition, unknown, unknown, unknown>, RunnableConfig<Record<string, any>>, number, ToolOptions)
Sender chathistorik fra en LangGraph CompiledStateGraph til MCP-platformen.
Dette er den api, der er nemmest at bruge på højeste niveau. Den henter den aktuelle tilstand fra grafen, udtrækker meddelelser, konverterer dem til ChatHistoryMessage-format og sender dem til MCP-platformen for at beskytte trusler i realtid.
Eksempel
const config = { configurable: { thread_id: '1' } };
const result = await service.sendChatHistoryAsync(turnContext, graph, config);
if (result.succeeded) {
console.log('Chat history sent successfully');
}
function sendChatHistoryAsync(turnContext: TurnContext, graph: CompiledStateGraph<unknown, unknown, string, StateDefinition, StateDefinition, StateDefinition, unknown, unknown, unknown>, config: RunnableConfig<Record<string, any>>, limit?: number, toolOptions?: ToolOptions): Promise<OperationResult>
Parametre
- turnContext
- TurnContext
Den turn-kontekst, der indeholder samtaleoplysninger.
- graph
-
CompiledStateGraph<unknown, unknown, string, StateDefinition, StateDefinition, StateDefinition, unknown, unknown, unknown>
LangGraph CompiledStateGraph-forekomsten. Graftilstanden skal indeholde en matrix af 'meddelelser'.
- config
-
RunnableConfig<Record<string, any>>
RunnableConfig, der indeholder thread_id og anden konfiguration.
- limit
-
number
Valgfri grænse for antallet af meddelelser, der skal sendes.
- toolOptions
- ToolOptions
Valgfrie værktøjsindstillinger til tilpasning.
Returnerer
Promise<OperationResult>
En Promise-løsning til en OperationResult, der angiver, om handlingen lykkedes eller mislykkedes.
sendChatHistoryFromChatHistoryAsync(TurnContext, BaseChatMessageHistory, number, ToolOptions)
Henter meddelelser fra en BaseChatMessageHistory-forekomst og sender dem til MCP-platformen.
Brug denne API, når du arbejder med LangChains hukommelses abstraktioner (f.eks. InMemoryChatMessageHistory, RedisChatMessageHistory osv.).
Eksempel
const chatHistory = new InMemoryChatMessageHistory();
// ... add messages to history ...
const result = await service.sendChatHistoryFromChatHistoryAsync(turnContext, chatHistory);
function sendChatHistoryFromChatHistoryAsync(turnContext: TurnContext, chatHistory: BaseChatMessageHistory, limit?: number, toolOptions?: ToolOptions): Promise<OperationResult>
Parametre
- turnContext
- TurnContext
Den turn-kontekst, der indeholder samtaleoplysninger.
- chatHistory
-
BaseChatMessageHistory
Forekomsten BaseChatMessageHistory, der skal hentes meddelelser fra.
- limit
-
number
Valgfri grænse for antallet af meddelelser, der skal sendes.
- toolOptions
- ToolOptions
Valgfrie værktøjsindstillinger til tilpasning.
Returnerer
Promise<OperationResult>
En Promise-løsning til en OperationResult, der angiver, om handlingen lykkedes eller mislykkedes.
sendChatHistoryFromMessagesAsync(TurnContext, BaseMessage<MessageStructure<MessageToolSet>, MessageType>[], number, ToolOptions)
Sender en matrix af LangChain-meddelelser til MCP-platformen for at beskytte trusler i realtid.
Dette er den API på laveste niveau, der accepterer rå BaseMessage-matrixer. Brug dette, når du allerede har udpakket meddelelser eller har en brugerdefineret meddelelseskilde, der ikke er dækket af API'er på højere niveau.
Denne metode konverterer den angivne BaseMessage-matrix til ChatHistoryMessage-format og sender dem til MCP-platformen. Tomme matrixer sendes as-is for at registrere brugermeddelelsen på platformen.
Eksempel
const messages = await messageHistory.getMessages();
const result = await service.sendChatHistoryFromMessagesAsync(turnContext, messages, 50);
if (result.succeeded) {
console.log('Chat history sent successfully');
} else {
console.error('Failed to send chat history:', result.errors);
}
function sendChatHistoryFromMessagesAsync(turnContext: TurnContext, messages: BaseMessage<MessageStructure<MessageToolSet>, MessageType>[], limit?: number, toolOptions?: ToolOptions): Promise<OperationResult>
Parametre
- turnContext
- TurnContext
Den turn-kontekst, der indeholder samtaleoplysninger.
- messages
-
BaseMessage<MessageStructure<MessageToolSet>, MessageType>[]
Matrix af LangChain BaseMessage-objekter, der skal sendes.
- limit
-
number
Valgfri grænse for antallet af meddelelser, der skal sendes.
- toolOptions
- ToolOptions
Valgfrie værktøjsindstillinger til tilpasning.
Returnerer
Promise<OperationResult>
En Promise-løsning til en OperationResult, der angiver, om handlingen lykkedes eller mislykkedes.
sendChatHistoryFromStateAsync(TurnContext, StateSnapshot, number, ToolOptions)
Udtrækker meddelelser fra et LangGraph StateSnapshot og sender dem til MCP-platformen.
Brug denne API, når du allerede har et StateSnapshot (f.eks. fra et tidligere graph.getState() opkald), og du vil undgå at hente tilstanden igen.
Eksempel
const config = { configurable: { thread_id: '1' } };
const stateSnapshot = await graph.getState(config);
const result = await service.sendChatHistoryFromStateAsync(turnContext, stateSnapshot);
function sendChatHistoryFromStateAsync(turnContext: TurnContext, stateSnapshot: StateSnapshot, limit?: number, toolOptions?: ToolOptions): Promise<OperationResult>
Parametre
- turnContext
- TurnContext
Den turn-kontekst, der indeholder samtaleoplysninger.
- stateSnapshot
-
StateSnapshot
LangGraph StateSnapshot, der indeholder meddelelsestilstanden.
- limit
-
number
Valgfri grænse for antallet af meddelelser, der skal sendes.
- toolOptions
- ToolOptions
Valgfrie værktøjsindstillinger til tilpasning.
Returnerer
Promise<OperationResult>
En Promise-løsning til en OperationResult, der angiver, om handlingen lykkedes eller mislykkedes.