Back to Genai Toolbox

Javascript: Pre & Post Processing

docs/en/documentation/configuration/pre-post-processing/js/_index.md

1.1.01.9 KB
Original Source

Prerequisites

This tutorial assumes that you have set up MCP Toolbox with a basic agent as described in the local quickstart.

This guide demonstrates how to implement these patterns in your Toolbox applications.

Implementation

{{< tabpane persist=header >}} {{% tab header="ADK" text=true %}} The following example demonstrates how to use the beforeToolCallback and afterToolCallback hooks in the ADK LlmAgent to implement pre and post processing logic.

{{< include "adk/agent.js" "js" >}}

You can also add model-level (beforeModelCallback, afterModelCallback) and agent-level (beforeAgentCallback, afterAgentCallback) hooks to intercept messages at different stages of the execution loop.

For more information, see the ADK Callbacks documentation. {{% /tab %}} {{% tab header="Langchain" text=true %}} The following example demonstrates how to use ToolboxClient with LangChain's middleware to implement pre and post processing for tool calls.

{{< include "langchain/agent.js" "js" >}}

You can also use the wrapModelCall hook to intercept messages before and after model calls. You can also use node-style hooks to intercept messages at the agent and model level. See the LangChain Middleware documentation for details on these additional hook types.

{{% /tab %}} {{< /tabpane >}}

Results

The output should look similar to the following.

{{< notice note >}} The exact responses may vary due to the non-deterministic nature of LLMs and differences between orchestration frameworks. {{< /notice >}}

AI: Booking Confirmed! You earned 500 Loyalty Points with this stay.

AI: Error: Maximum stay duration is 14 days.