-
Notifications
You must be signed in to change notification settings - Fork 0
modify search to fix claude issues #16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces a custom data_search tool to override the SDK's default implementation, aiming to resolve issues with Claude Desktop not properly applying search filters. The new implementation explicitly constructs date range and cloud cover filters and passes them to the Planet SDK.
Key changes:
- Adds a new
search.pyserver module with a customdata_searchtool that manually constructs search filters - Removes
data_searchfrom the SDK's signature override list and adds it to the ignore list - Updates the tool description to document the new
start_dateandend_dateparameters - Updates tests to work with the new tool signature
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| src/planet_mcp/servers/search.py | New custom data_search implementation with explicit date and cloud cover filters |
| src/planet_mcp/servers/sdk.py | Moves data_search from signature override to ignore list to prevent conflicts |
| src/planet_mcp/servers/descriptions.py | Updates documentation to reflect new date parameter requirements |
| src/planet_mcp/servers/init.py | Registers the new search server module |
| tests/test_server.py | Updates test to use new parameters and expected output format |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
58b1c75 to
356d976
Compare
datefilter is optional, and only used if user provided
356d976 to
c2ee833
Compare
| ) | ||
| async def data_search( | ||
| item_types: list[str], | ||
| start_date: str, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| start_date: str, | |
| start_date: str | None, |
the type hint (used for validation) still requires a value
override the data_search sdk method to hopefully fix issues with claude desktop not using search filters correctly.
I still added the method to the 'sdk' mcp server, this is up for review if it should be it's own or not.
need someone with claude desktop to confirm fixthis has been done!