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

McpToolRegistrationService(IConfigurationProvider<LangChainToolingConfiguration>)

Konstruer en McpToolRegistrationService.

Metoder

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ø.

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');
}
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);
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);
}
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);

Oplysninger om konstruktør

McpToolRegistrationService(IConfigurationProvider<LangChainToolingConfiguration>)

Konstruer en McpToolRegistrationService.

new McpToolRegistrationService(configProvider?: IConfigurationProvider<LangChainToolingConfiguration>)

Parametre

configProvider

IConfigurationProvider<LangChainToolingConfiguration>

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.