diff --git a/packages/core/src/webmcp/types.ts b/packages/core/src/webmcp/types.ts index 49f8d733257..cd6e24bdc4e 100644 --- a/packages/core/src/webmcp/types.ts +++ b/packages/core/src/webmcp/types.ts @@ -75,6 +75,12 @@ export interface Annotations { * author of the tool. */ untrustedContentHint?: boolean; + + /** + * A hint that the tool will have consequential effects like mutating state or interacting + * with the external world. + */ + consequentialHint?: boolean; } /** diff --git a/packages/core/test/webmcp/declare_tool_spec.ts b/packages/core/test/webmcp/declare_tool_spec.ts index 93ea05288f7..488cceab1d8 100644 --- a/packages/core/test/webmcp/declare_tool_spec.ts +++ b/packages/core/test/webmcp/declare_tool_spec.ts @@ -79,6 +79,7 @@ describe('declareExperimentalWebMcpTool', () => { annotations: { readOnlyHint: true, untrustedContentHint: true, + consequentialHint: true, }, }, Injector.create({providers: []}), @@ -89,6 +90,7 @@ describe('declareExperimentalWebMcpTool', () => { annotations: { readOnlyHint: true, untrustedContentHint: true, + consequentialHint: true, }, }), jasmine.anything(),