Skip to Main Content
Shape the future of IBM watsonx Orchestrate

Start by searching and reviewing ideas others have posted, and add a comment (private if needed), vote, or subscribe to updates on them if they matter to you.

If you can't find what you are looking for, create a new idea:

  1. stick to one feature enhancement per idea

  2. add as much detail as possible, including use-case, examples & screenshots (put anything confidential in Hidden details field or a private comment)

  3. Explain business impact and timeline of project being affected

[For IBMers] Add customer/project name, details & timeline in Hidden details field or a private comment (only visible to you and the IBM product team).

This all helps to scope and prioritize your idea among many other good ones. Thank you for your feedback!

Specific links you will want to bookmark for future use
Learn more about IBM watsonx Orchestrate - Use this site to find out additional information and details about the product.
Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.
IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.
ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Submitted
Created by Guest
Created on Oct 29, 2025

Make embedded chat context variables directly available to tools

Our customer is reference customer who is implementing an agentic AI assistant for university students and staff.

They intend to embed the wxo webchat on their website, which will need to capture the jwt token from the web frontend once a student/staff is logged in.

The student/staff identity information needs to be made available directly to wxo tools and sub-agents.

The following features are required by the customer:

  1. Accessing the context variables from within the python tool

  2. Accessing the context variables in tool flow, MCP, openAPI

  3. Context Passing: context variables should be passed to registered WXA and WXA variables should be accessible within Agents

Requirements for these context variables:

  1. Context variables should be available to tools even if it's within a sub-agent

  2. A embedded chat user should not be able to see tool-specific context variables or change them, only tools can change the tool context variables

Our idea (also see diagram below):

We think we should distinguish agent-level context variables (available in agent prompts, modifiable by users or agents) and tool-level context variables (internal, not user-editable).

All the context variables should be kept by the wxo instance, but each variable has its own visibility and scope.

Take the multi-agent system in the diagram for example (this are also the agents our customer has):

1. Main Agent: The central orchestrator that manages sub-agents, Python tools, and WXA agents.

2. Sub-Agent: Interacts with both Python tools and MCP tools to perform specialized tasks.

Assume we have agent-level context variables, then we need to be able to define variable_1 can be used by main agent and sub-agent prompts, while variable_2 can be used by sub-agent prompt only.

- Python tools: can consume tool-level context variables as part of their expected tool input or other internal variables.

- MCP tools: use tool-level context variables possibly as _meta (eg. authentication or metadata, see https://modelcontextprotocol.io/specification/draft/basic/index#meta)

- WxA agent: Uses WxA variables such as context.integrations.chat.private.user_payload to represent user/session context (e.g., JWT or user identity).

Example scopes:

Agent-level variables:

context_variable.agent.variable_1
Scope: visible to main agent, sub-agent

context_variable.agent.variable_2
Scope: visible to sub-agent

...

Tool-level variables:

context_variable.tool.variable_1 → visible to python_tool_1, mcp_tool_1
context_variable.tool.variable_2 → visible to python_tool_2, python_tool_3

...

Idea priority Urgent