Repository navigation
docs(memory): slim the published MCP tool descriptions (~14% smaller tools/list) - #2442
Merged
Merged
Conversation
…tools/list) Every MCP client receives the whole tools/list surface — tool descriptions plus the per-field descriptions schemars lifts from the rustdoc — on every call. The prose had grown into a second documentation site: ~147K bytes of schema, roughly half of it explanatory text restating what the type and the docs/reference pages already say. Tool descriptions and field doc comments are rewritten to their contract only: security constraints (path ingestion allowlist), wire-compat rules (ids over 2^53 as decimal strings), type-strict comparison semantics, caps, defaults and empty-result meaning stay; narrative context, issue archaeology and repeated framing move to the plain comments next to them or are dropped. mcp-tools.json is regenerated: 146825 -> 126774 bytes. Verified: mcp_tools_drift, mcp_schema_bdd (20), the five description-pinning unit tests, and check-mcp-doc-contract (233 surfaces) all pass.
Up to standards ✅🟢 Issues
|
| Metric | Results |
|---|---|
| Complexity | 0 |
NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.
cyberlife-coder
enabled auto-merge (squash)
October 24, 2026 21:17
# Conflicts: # crates/velesdb-memory/CHANGELOG.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Every MCP client receives the whole
tools/listsurface — tool descriptions plus the per-field descriptions schemars lifts from the rustdoc — on every call. That prose had grown to ~147K bytes, roughly half of it explanatory text restating what the types anddocs/referencepages already carry.This PR rewrites tool descriptions and field doc comments down to their contract, and regenerates
docs/reference/mcp-tools.json(146 825 → 126 774 bytes, ~14%).Kept — everything a client needs to call the tool correctly:
VELESDB_MEMORY_INGEST_ROOTSallowlist, exclusivity vscontent/media, size caps, UTF-8)ids_as_strings,id_strrelay)truncated,relations_truncated,found,other_sessions)Dropped/moved — narrative context, issue archaeology and repeated framing, which now live in plain
//comments next to the fields when still useful.Test plan
mcp_tools_drift— published surface matches the committed artifact (1/1)mcp_schema_bdd(20/20), the five description-pinning unit tests (5/5)scripts/check-mcp-doc-contract.py --verbose— 233 surfaces, PASSembedder-http,http,extractor-http,tools/listover real MCP handshake = 122 129 bytes on the wire