Code Research MCP Server
Facilitates searching and accessing programming resources across platforms like Stack Overflow, MDN, GitHub, npm, and PyPI, aiding LLMs in finding code examples and documentation.
nahmanmate
Tools
search_stackoverflow
Search Stack Overflow for programming questions and answers
search_mdn
Search MDN Web Docs for web development documentation
search_github
Search GitHub for repositories and code
search_npm
Search npm registry for JavaScript packages
search_pypi
Search PyPI for Python packages
search_all
Search all platforms simultaneously
README
Code Research MCP Server
A Model Context Protocol server that provides tools for searching and accessing programming resources across multiple platforms. This server integrates with popular developer platforms to help LLMs find relevant code examples, documentation, and packages.
<a href="https://glama.ai/mcp/servers/8ibodeufsz"><img width="380" height="200" src="https://glama.ai/mcp/servers/8ibodeufsz/badge" alt="Code Research Server MCP server" /></a>
Features
Integrated Platforms
- Stack Overflow - Programming Q&A
- MDN Web Docs - Web development documentation
- GitHub - Code and repository search
- npm - JavaScript package registry
- PyPI - Python package index
Tools
search_stackoverflow
Search Stack Overflow for programming questions and answers.
- Parameters:
query
(required): Search query stringlimit
(optional): Maximum results (1-10, default: 5)
- Returns: Formatted list of questions with scores, answer counts, and excerpts
- Results are cached for 1 hour
search_mdn
Search MDN Web Docs for web development documentation.
- Parameters:
query
(required): Search query string
- Returns: Top 5 MDN documentation matches with summaries and links
- Results are cached for 1 hour
search_github
Search GitHub for both repositories and code examples.
- Parameters:
query
(required): Search query stringlanguage
(optional): Filter by programming languagelimit
(optional): Maximum results per category (1-10, default: 5)
- Returns: Two sections:
- Top repositories sorted by stars
- Relevant code files with repository context
- Results are cached for 1 hour
search_npm
Search npm registry for JavaScript packages.
- Parameters:
query
(required): Search query stringlimit
(optional): Maximum results (1-10, default: 5)
- Returns: Package information including version, description, and download stats
- Results are cached for 1 hour
search_pypi
Search PyPI for Python packages.
- Parameters:
query
(required): Search query string
- Returns: Detailed package information including version, author, and links
- Results are cached for 1 hour
search_all
Search all platforms simultaneously for comprehensive results.
- Parameters:
query
(required): Search query stringlimit
(optional): Maximum results per platform (1-5, default: 3)
- Returns: Combined results from all platforms:
- Stack Overflow questions and answers
- MDN documentation
- GitHub repositories and code
- npm packages
- PyPI packages
- Results are cached for 1 hour
- Note: Executes all searches in parallel for faster response
Requirements
- Node.js >= 20.11.0
- npm >= 10.0.0
- Optional: GitHub personal access token for higher API rate limits
Installation
Installing via Smithery
To install Code Research Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @nahmanmate/code-research-mcp-server --client claude
Manual Installation
- Clone the repository and install dependencies:
git clone https://github.com/nahmanmate/code-research-mcp-server.git
cd code-research-server
npm install
- Build the server:
npm run build
- Configure MCP Settings:
Add the server configuration to your MCP settings file:
- VSCode:
~/.vscode-server/data/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
- Claude Desktop:
- MacOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%/Claude/claude_desktop_config.json
- MacOS:
{
"mcpServers": {
"code-research": {
"command": "node",
"args": ["/absolute/path/to/code-research-mcp-server/build/index.js"],
"env": {
"GITHUB_TOKEN": "your_github_token" // Optional: Prevents rate limiting
},
"disabled": false,
"alwaysAllow": []
}
}
}
Note: Replace /absolute/path/to
with the actual path where you cloned the repository.
Development
Running in Development Mode
For development with auto-rebuild on changes:
npm run watch
Error Handling
The server implements robust error handling:
- API-specific error messages for each platform
- Rate limit handling for GitHub API
- Graceful fallbacks for service unavailability
- Cached responses to reduce API load
Debugging
Since MCP servers communicate over stdio, debugging can be challenging. Use the MCP Inspector for detailed request/response monitoring:
npm run inspector
The Inspector provides:
- Real-time request/response monitoring
- Tool execution tracing
- Error stack traces
- Performance metrics
Visit the provided URL in your browser to access the debugging interface.
Caching
Results are cached using node-cache
:
- Default TTL: 1 hour
- Separate cache keys per query/limit combination
- Platform-specific caching strategies
- Memory-efficient storage
Contributing
- Fork the repository
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
License
AGPLv3
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
MCP Package Docs Server
Facilitates LLMs to efficiently access and fetch structured documentation for packages in Go, Python, and NPM, enhancing software development with multi-language support and performance optimization.
Claude Code MCP
An implementation of Claude Code as a Model Context Protocol server that enables using Claude's software engineering capabilities (code generation, editing, reviewing, and file operations) through the standardized MCP interface.
@kazuph/mcp-taskmanager
Model Context Protocol server for Task Management. This allows Claude Desktop (or any MCP client) to manage and execute tasks in a queue-based system.
Gitingest-MCP
An MCP server for gitingest. It allows MCP clients like Claude Desktop, Cursor, Cline etc to quickly extract information about Github repositories including repository summaries, project directory structure, file contents, etc
Linear MCP Server
Enables interaction with Linear's API for managing issues, teams, and projects programmatically through the Model Context Protocol.
serper-search-scrape-mcp-server
This Serper MCP Server supports search and webpage scraping, and all the most recent parameters introduced by the Serper API, like location.