Remove template IDs from MCP tool call metadata (#33467)

## What changed

- Remove `template_id` from MCP tool call items and lifecycle events.
- Remove `templateId` from app-server `McpToolCallAppContext` responses and generated schemas.
- Update protocol conversions, documentation, and existing test expectations for the revised metadata shape.

GitOrigin-RevId: f2b1304eadff661eec3966673ea71206b1542b98
This commit is contained in:
Martin Au-Yeung authored and copyberry committed 2026-07-16 01:23:52 +00:00
1 parent be39aab9f4
commit 800715d201
33 files changed
+2 -173

No files matched your search

-11
View File
@@ -344,7 +344,6 @@ struct McpToolCallItemMetadata {
link_id: Option<String>,
mcp_app_resource_uri: Option<String>,
app_name: Option<String>,
template_id: Option<String>,
action_name: Option<String>,
plugin_id: Option<String>,
}
@@ -363,7 +362,6 @@ impl McpToolCallItemMetadata {
mcp_app_resource_uri: metadata
.and_then(|metadata| metadata.mcp_app_resource_uri.clone()),
app_name: trusted_mcp_app_metadata.and_then(|metadata| metadata.connector_name.clone()),
template_id: trusted_mcp_app_metadata.and_then(|metadata| metadata.template_id.clone()),
action_name: trusted_mcp_app_metadata
.and_then(|metadata| metadata.codex_apps_meta.as_ref())
.and_then(|meta| meta.get(MCP_TOOL_RESOURCE_URI_META_KEY))
@@ -911,7 +909,6 @@ async fn notify_mcp_tool_call_started(
mcp_app_resource_uri: item_metadata.mcp_app_resource_uri,
link_id: item_metadata.link_id,
app_name: item_metadata.app_name,
template_id: item_metadata.template_id,
action_name: item_metadata.action_name,
plugin_id: item_metadata.plugin_id,
status: McpToolCallStatus::InProgress,
@@ -956,7 +953,6 @@ async fn notify_mcp_tool_call_completed(
mcp_app_resource_uri: item_metadata.mcp_app_resource_uri,
link_id: item_metadata.link_id,
app_name: item_metadata.app_name,
template_id: item_metadata.template_id,
action_name: item_metadata.action_name,
plugin_id: item_metadata.plugin_id,
status,
@@ -1034,7 +1030,6 @@ pub(crate) struct McpToolApprovalMetadata {
tool_title: Option<String>,
tool_description: Option<String>,
mcp_app_resource_uri: Option<String>,
template_id: Option<String>,
codex_apps_meta: Option<serde_json::Map<String, serde_json::Value>>,
openai_file_input_optional_fields: Option<HashMap<String, Vec<String>>>,
}
@@ -1045,7 +1040,6 @@ const MCP_TOOL_LINK_ID_META_KEY: &str = "link_id";
const MCP_TOOL_PLUGIN_ID_META_KEY: &str = "plugin_id";
const MCP_TOOL_THREAD_ID_META_KEY: &str = "threadId";
const MCP_TOOL_CONNECTED_ACCOUNT_EMAIL_META_KEY: &str = "connected_account_email";
const MCP_TOOL_TEMPLATE_ID_META_KEY: &str = "template_id";
const MCP_TOOL_RESOURCE_URI_META_KEY: &str = "resource_uri";
async fn custom_mcp_tool_approval_mode(
@@ -1568,11 +1562,6 @@ pub(crate) async fn lookup_mcp_tool_metadata(
tool_title: tool_info.tool.title,
tool_description: tool_info.tool.description.map(std::borrow::Cow::into_owned),
mcp_app_resource_uri: get_mcp_app_resource_uri(tool_info.tool.meta.as_deref()),
template_id: codex_apps_meta
.as_ref()
.and_then(|meta| meta.get(MCP_TOOL_TEMPLATE_ID_META_KEY))
.and_then(serde_json::Value::as_str)
.map(str::to_string),
codex_apps_meta,
// Disallow custom MCPs from uploading files via fileParams.
openai_file_input_optional_fields: openai_file_input_optional_fields_for_server(