Skip to content

Add tool annotations to remaining MCP tools#115

Merged
AnnaXWang merged 1 commit into
mainfrom
hypeship/mcp-tool-annotations
Jun 23, 2026
Merged

Add tool annotations to remaining MCP tools#115
AnnaXWang merged 1 commit into
mainfrom
hypeship/mcp-tool-annotations

Conversation

@AnnaXWang

@AnnaXWang AnnaXWang commented Jun 23, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds MCP tool annotations (title + behavior hints) to the 12 tools that were missing them. Previously only 4 of 16 tools (manage_api_keys, manage_credentials, manage_credential_providers, manage_auth_connections) declared annotations; the rest passed schema → callback with no annotations object.

Every tool now declares a title and the applicable readOnlyHint/destructiveHint (plus idempotentHint/openWorldHint), matching the existing pattern. MCP clients use these to label tools in the UI and to gate destructive actions.

Hints applied

Tool readOnly destructive openWorld rationale
search_docs read-only search over first-party docs
manage_apps invokes apps against external sites; no delete op
manage_browsers delete terminates sessions; Kernel-API only
manage_profiles delete removes profiles; setup drives live login
manage_browser_pools delete/flush destroy browsers
manage_projects delete removes projects
manage_extensions delete removes extensions
manage_proxies delete removes proxies
execute_playwright_code runs arbitrary code against the open web
exec_command runs arbitrary shell commands
browser_curl issues arbitrary HTTP (incl. POST/DELETE)
computer_action arbitrary mouse/keyboard actuation

openWorldHint follows the existing convention: true for tools that touch external systems / the open web, false for Kernel-API-only management (consistent with manage_credentials = false, manage_auth_connections = true).

Test plan

  • tsc --noEmit passes
  • prettier --check clean on all changed files
  • Confirm the running server advertises annotations via tools/list (requires deployed/authed instance)

Context: this brings every tool in line with the Connector Directory submission requirement that all tools declare a title and the applicable read-only/destructive hint.

🤖 Generated with Claude Code


Note

Low Risk
Metadata-only changes to MCP tool registration with no handler or API logic modified.

Overview
Adds MCP tool annotation metadata (title, readOnlyHint, destructiveHint, idempotentHint, openWorldHint) to the 12 Kernel MCP tools that previously registered only schema + handler. Tool behavior is unchanged; registrations now pass the annotations object between the Zod schema and the callback, consistent with tools like manage_api_keys.

Hints are set per tool: search_docs is read-only and idempotent; Kernel-only management tools (browsers, pools, projects, extensions, proxies) mark openWorldHint: false and destructiveHint: true where delete/flush/terminate applies; manage_apps is non-destructive but openWorldHint: true for app invokes; automation tools (execute_playwright_code, exec_command, browser_curl, computer_action, profile setup) are marked destructive and open-world where they can act on arbitrary sites or commands.

This completes annotation coverage for Connector Directory / tools/list consumers that use titles and hints for UI labeling and gating destructive actions.

Reviewed by Cursor Bugbot for commit 44e6140. Bugbot is set up for automated code reviews on this repo. Configure here.

Adds title and behavior hints (readOnlyHint, destructiveHint,
idempotentHint, openWorldHint) to the 12 tools that were missing them,
matching the pattern already used by the credential and API-key tools.
All tools now declare annotations, which MCP clients use to label tools
and gate destructive actions.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 23, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
mcp Ready Ready Preview, Comment Jun 23, 2026 4:18am

@AnnaXWang AnnaXWang marked this pull request as ready for review June 23, 2026 15:28

@masnwilliams masnwilliams left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@firetiger-agent

Copy link
Copy Markdown

Created a monitoring plan for this PR.

What this PR does: Completes MCP tool metadata for the Kernel MCP server so all 16 tools declare a human-readable title and the correct read-only/destructive/open-world behavior hints, satisfying the Connector Directory submission requirement. Previously 12 of 16 tools were missing these annotations entirely.

Intended effect:

  • tools/list annotation coverage: baseline 4/16 tools annotated; confirmed if all 16 tools return a non-null annotations block with a title after deploy
  • Vercel Production deploy status: baseline all recent deploys SUCCESS; confirmed if this PR's Production deploy completes SUCCESS and the server starts normally

Risks:

  • Server startup failure — Vercel deployment health; alert if Production deploy does not reach SUCCESS or tools/list returns a connection error post-deploy
  • tools/list missing tools — manual tools/list call on the deployed server; alert if fewer than 16 tools are returned or any tool is missing annotations.title
  • Incorrect hint values — manual review of tools/list annotations output; alert if a read-only tool (e.g. search_docs) is marked destructiveHint: true or vice versa

View monitor

@AnnaXWang AnnaXWang merged commit b671700 into main Jun 23, 2026
10 checks passed
@AnnaXWang AnnaXWang deleted the hypeship/mcp-tool-annotations branch June 23, 2026 15:32
@firetiger-agent

Copy link
Copy Markdown

Tool annotations deployed successfully at 2m post-merge across Production.

Signals:

  • Vercel Production deploy: SUCCESS (SHA b671700)
  • Kernel API error rate: 0.013–0.02% (baseline 0.4–1.6%, no degradation)

Risks watched:

  • Startup failure from malformed annotations
  • API traffic drop indicating server availability issues

Monitoring continues across 72h window. Manual tools/list validation pending.

View monitor

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants