Skip to content

refactor(cli,server): disambiguate ToolMetadata across mcp-server/mcp-cli/mcp-core#157

Merged
bug-ops merged 1 commit into
masterfrom
three-unrelated-toolmetadata-s
Jul 9, 2026
Merged

refactor(cli,server): disambiguate ToolMetadata across mcp-server/mcp-cli/mcp-core#157
bug-ops merged 1 commit into
masterfrom
three-unrelated-toolmetadata-s

Conversation

@bug-ops

@bug-ops bug-ops commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Summary

  • Renames mcp_execution_server::types::ToolMetadata to IntrospectedToolSummary and mcp_execution_cli::commands::introspect::ToolMetadata to ToolDisplay, so the three unrelated ToolMetadata shapes in the workspace stop sharing a name.
  • mcp_execution_core::metadata::ToolMetadata, the canonical _meta.json sidecar type, is unchanged.
  • Pure rename, no behavior change; both renamed types are wire/protocol-invisible (serde serializes by field name only).
  • Source-breaking for external library consumers of mcp-execution-server/mcp-execution-cli (neither crate sets publish = false, both types are pub-reachable) — documented in CHANGELOG.md and flagged via BREAKING CHANGE: footer; treat as a minor bump at 0.7.x per pre-1.0 SemVer convention.

Closes #156.

Test plan

  • cargo +nightly fmt --check
  • cargo +stable clippy --all-targets --all-features --workspace -- -D warnings
  • cargo nextest run --all-features --workspace --no-fail-fast (714 passed)
  • cargo test --doc --all-features --workspace

…-cli/mcp-core

Rename mcp_execution_server::types::ToolMetadata to IntrospectedToolSummary and
mcp_execution_cli::commands::introspect::ToolMetadata to ToolDisplay so the three
unrelated ToolMetadata shapes in the workspace stop sharing a name.
mcp_execution_core::metadata::ToolMetadata, the canonical _meta.json sidecar type,
is unchanged. Pure rename, wire/protocol-invisible (serde serializes by field name
only).

BREAKING CHANGE: mcp-execution-server::types::ToolMetadata is renamed to
IntrospectedToolSummary and mcp-execution-cli::commands::introspect::ToolMetadata
is renamed to ToolDisplay. Source-breaking for any external library consumer of
these two crates; treat as a minor version bump at 0.7.x (pre-1.0 SemVer
convention).

Closes #156
@github-actions github-actions Bot added area: cli CLI commands and interface area: bridge MCP bridge and integration crate: mcp-cli Changes to mcp-cli crate (command-line interface) type: documentation Documentation changes (*.md, docs/, comments) breaking change Contains breaking API changes (requires major version bump) release Release preparation (changelog, version bumps) labels Jul 9, 2026
@bug-ops
bug-ops enabled auto-merge (squash) July 9, 2026 18:02
@bug-ops
bug-ops merged commit e1118a4 into master Jul 9, 2026
17 checks passed
@bug-ops
bug-ops deleted the three-unrelated-toolmetadata-s branch July 9, 2026 18:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: bridge MCP bridge and integration area: cli CLI commands and interface breaking change Contains breaking API changes (requires major version bump) crate: mcp-cli Changes to mcp-cli crate (command-line interface) release Release preparation (changelog, version bumps) type: documentation Documentation changes (*.md, docs/, comments)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

three unrelated ToolMetadata structs share the same name across the workspace

1 participant