-
Notifications
You must be signed in to change notification settings - Fork 5
refactor: remove serper MCP, use curl subagent instead #187
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
Conversation
Serper functionality is now provided by .agent/seo/serper.md which uses curl directly - no MCP server overhead, same API functionality. - Remove serper from generate-opencode-agents.sh (was re-adding it) - Remove serper from setup-mcp-integrations.sh MCP list - Keep serper in setup.sh deprecated list for cleanup of existing configs
Summary of ChangesHello @marcusquinn, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request refactors the integration of Serper search capabilities by replacing the existing Serper Micro-Controller Platform (MCP) server with a more lightweight, curl-based subagent. This change aims to simplify the system's architecture and reduce operational overhead while preserving full functionality for Google Search API interactions. Highlights
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
WalkthroughThese changes remove Serper MCP integration from the DevOps framework by eliminating Serper tool definitions from agent configuration, removing MCP server setup code, and updating configuration lists to exclude Serper across shell script infrastructure. Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
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.
Code Review
This pull request refactors the Serper integration by removing the MCP server and replacing it with a curl-based subagent. The changes are clean and effectively remove the now-unnecessary code from generate-opencode-agents.sh and setup-mcp-integrations.sh. This simplification reduces overhead and complexity, which is a great improvement. I've added a couple of suggestions to improve code maintainability in the shell script.
|
|
||
| # Available integrations list | ||
| MCP_LIST="chrome-devtools playwright cloudflare-browser ahrefs perplexity nextjs-devtools google-search-console pagespeed-insights grep-vercel claude-code-mcp stagehand stagehand-python stagehand-both dataforseo serper" | ||
| MCP_LIST="chrome-devtools playwright cloudflare-browser ahrefs perplexity nextjs-devtools google-search-console pagespeed-insights grep-vercel claude-code-mcp stagehand stagehand-python stagehand-both dataforseo" |
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.
For better readability and maintainability, consider defining MCP_LIST as a bash array instead of a long, space-separated string. This makes it easier to add, remove, or view items in the list.
You would need to update how this variable is used in loops and for printing, for example, by iterating with for mcp in "${MCP_LIST[@]}" and printing with echo "${MCP_LIST[*]}".
| MCP_LIST="chrome-devtools playwright cloudflare-browser ahrefs perplexity nextjs-devtools google-search-console pagespeed-insights grep-vercel claude-code-mcp stagehand stagehand-python stagehand-both dataforseo" | |
| MCP_LIST=( | |
| "chrome-devtools" | |
| "playwright" | |
| "cloudflare-browser" | |
| "ahrefs" | |
| "perplexity" | |
| "nextjs-devtools" | |
| "google-search-console" | |
| "pagespeed-insights" | |
| "grep-vercel" | |
| "claude-code-mcp" | |
| "stagehand" | |
| "stagehand-python" | |
| "stagehand-both" | |
| "dataforseo" | |
| ) |
| print_info "Alternative: pip install serper-mcp-server" | ||
| fi | ||
| ;; | ||
| # "serper" - REMOVED: Uses curl subagent (.agent/seo/serper.md), no MCP needed |
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.
🔍 Code Quality Report�[0;35m[MONITOR]�[0m Code Review Monitoring Report �[0;34m[INFO]�[0m Latest Quality Status: �[0;34m[INFO]�[0m Recent monitoring activity: 📈 Current Quality Metrics
Generated on: Sun Jan 25 00:14:29 UTC 2026 Generated by AI DevOps Framework Code Review Monitoring |
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.
Actionable comments posted: 0
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.agent/scripts/setup-mcp-integrations.sh (1)
316-318: Fix malformed JSON in chrome-devtools.json heredoc.The
return 0and}statements at lines 317-318 are embedded inside the heredoc that generateschrome-devtools.json(EOF delimiter at line 319). These will be written as literal text into the config file, creating invalid JSON and breaking any tool that attempts to parse it. Move these statements outside and after the heredoc block (after line 319) to properly close thecreate_config_templates()function.
🧹 Nitpick comments (1)
.agent/scripts/generate-opencode-agents.sh (1)
646-647: Consider removing the commented case entry entirely.The empty comment
# serper - REMOVED: Uses curl subagent now, no MCP toolssits between active case branches. While informative, leaving commented-out case entries can accumulate over time. Since the migration is documented at lines 537-538, this entry is redundant.♻️ Suggested cleanup
dataforseo) extra_tools=$' dataforseo_*: true\n webfetch: true' ;; - # serper - REMOVED: Uses curl subagent now, no MCP tools playwriter) extra_tools=$' playwriter_*: true' ;;



Summary
.agent/seo/serper.mdsubagent provides the same functionality using direct curl API callsChanges
generate-opencode-agents.sh: Remove code that was re-adding serper MCPsetup-mcp-integrations.sh: Remove serper from MCP list and install functionsetup.shdeprecated list so existing configs get cleaned upMigration
Users with existing serper MCP configs will have them removed on next
./setup.shrun. The serper subagent (.agent/seo/serper.md) provides equivalent functionality via curl.Summary by CodeRabbit
✏️ Tip: You can customize this high-level summary in your review settings.