nahmanmate

Code Research MCP Server

Community nahmanmate
Updated

A Model Context Protocol server

Code Research MCP Server

smithery badge

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.

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 string
    • limit (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 string
    • language (optional): Filter by programming language
    • limit (optional): Maximum results per category (1-10, default: 5)
  • Returns: Two sections:
    1. Top repositories sorted by stars
    2. 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 string
    • limit (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 string
    • limit (optional): Maximum results per platform (1-5, default: 3)
  • Returns: Combined results from all platforms:
    1. Stack Overflow questions and answers
    2. MDN documentation
    3. GitHub repositories and code
    4. npm packages
    5. 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

  1. Clone the repository and install dependencies:
git clone https://github.com/nahmanmate/code-research-mcp-server.git
cd code-research-server
npm install
  1. Build the server:
npm run build
  1. 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
{
  "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

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

AGPLv3

MCP Server · Populars

MCP Server · New

    chatmcp

    mcpso

    directory for Awesome MCP Servers

    Community chatmcp
    TBXark

    MCP Proxy Server

    An MCP proxy server that aggregates and serves multiple MCP resource servers through a single HTTP server.

    Community TBXark
    ttommyth

    interactive-mcp

    Ask users questions from your LLM! interactive-mcp: Local, cross-platform MCP server for interactive prompts, chat & notifications.

    Community ttommyth
    lpigeon

    ros-mcp-server

    The ROS MCP Server is designed to support robots in performing complex tasks and adapting effectively to various environments by providing a set of functions that transform natural language commands, entered by a user through an LLM, into ROS commands for robot control.

    Community lpigeon
    emicklei

    melrose-mcp

    interactive programming of melodies, producing MIDI

    Community emicklei