-
Notifications
You must be signed in to change notification settings - Fork 613
[FEATURE]: Maintain custom and original description for tools #2893
Description
🧭 Type of Feature
Please select the most appropriate category:
- Enhancement to existing functionality
- New feature or capability
- New MCP-compliant server
- New component or integration
- Developer tooling or test improvement
- Packaging, automation and deployment (ex: pypi, docker, quay.io, kubernetes, terraform)
- Other (please describe below)
🧭 Epic
Title: Maintain custom and original description for tools
Goal: This helps us provide LLM's access to custom descriptions which are fine grained to needs.
Why now: Sometimes descriptions can be unnecessarily large and it eats up a lot of context window space, this feature lets user modify description without modifying MCP Server tools. As tools exposed via virtual servers read description of tools persisted in db using MCP protocol this would be a custom one solving the problem. Also always have a copy of original description during registration.
🙋♂️ User Story 1
As a: developer
I want: add original_description column to tools table, copy description column to it during alembic db upgrade
So that: a copy of original description is persisted eventhough description is overridden
✅ Acceptance Criteria
Scenario: db upgrade
Given tools table without original_description column
When db upgrade happens thru alembic
Then original_description column is created and populated with values of description column
Scenario: Registering gateway
Given a new gateway is registered
When MCP protocol discovers tools
Then copy description to original_description
Scenario: ensure tool apis are updated
Given context forge has a gateway registered and has some tools
When update, statechange and listing of tools get invoked
Then original_description column should be present along with description column🔗 MCP Standards Check
- Change adheres to current MCP specifications
- No breaking changes to existing MCP-compliant integrations
- If deviations exist, please describe them below: