Stack Exchange MCP server

Provides a bridge to Stack Exchange sites for searching and retrieving questions, answers, and tags with efficient caching and rate limiting for seamless technical information access.
Back to servers
Setup instructions
Provider
Jagreet DG
Release date
Mar 24, 2025
Language
TypeScript
Stats
1 star

Re-Stack MCP Server integrates Stack Overflow into LLM-based coding workflows, providing real-time access to the latest solutions from Stack Overflow within AI coding environments like Cursor, Windsurf, GPT, and Claude. It bridges the gap between LLMs' knowledge cutoff and the latest community solutions while helping restore Stack Overflow's crucial feedback loop.

Prerequisites

  • Node.js 18+ (ES2022 support required)
  • Stack Exchange API Key
  • Stack Apps Registration (required for write access)

Installation

Clone and Setup

# Clone the repository
git clone https://github.com/jagreetdg/re-stack-mcp.git
cd re-stack-mcp

# Install dependencies
npm install

# Configure environment variables
cp .env.example .env
# Edit .env with your Stack Exchange API credentials

# Build the project
npm run build

# Start the server
npm start

Environment Configuration

Create a .env file with the following variables:

STACKEXCHANGE_CLIENT_ID=your_client_id
STACKEXCHANGE_API_KEY=your_api_key
STACKEXCHANGE_SCOPE=write_access,private_info
STACKEXCHANGE_REDIRECT_URI=https://stackexchange.com/oauth/login_success

Features

The server provides several MCP tools for interacting with Stack Overflow:

Read Operations

  • Questions: Search, fetch, and filter questions
  • Answers: Get answers for specific questions
  • Comments: Fetch comments on posts
  • Tags: Browse and search tags
  • Users: Get user information

Write Operations (Requires Authentication)

  • Questions: Post new questions
  • Answers: Submit answers to questions
  • Comments: Add comments to posts
  • Posts: Edit existing posts

Authentication Setup

The server supports Stack Exchange OAuth 2.0 authentication for write operations:

  1. Register your application on Stack Apps
  2. Create a Stack Apps post describing your application
  3. Configure the OAuth credentials in your .env file
  4. The server will handle the OAuth flow when write operations are requested

Usage Examples

Starting the Server

After completing the installation steps, you can start the server with:

npm start

Integrating with LLM Tools

The Re-Stack MCP Server can be configured as a tool provider in LLM-based development environments that support the Model Context Protocol. Once configured, you can:

  • Query Stack Overflow directly from your LLM coding environment
  • Post new questions when encountering undocumented issues
  • Submit your solutions back to Stack Overflow
  • Fetch the latest community answers to improve LLM responses

Available Tools

The server exposes Stack Overflow functionality through various MCP tools that can be called from compatible LLM interfaces:

  • Search for questions related to specific programming problems
  • Retrieve the most recent answers for particular questions
  • Submit new questions when encountering issues not in the LLM's knowledge
  • Post answers to help contribute back to the community

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "stack-exchange" '{"command":"npm","args":["start"],"cwd":"${workspaceFolder}"}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "stack-exchange": {
            "command": "npm",
            "args": [
                "start"
            ],
            "cwd": "${workspaceFolder}"
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "stack-exchange": {
            "command": "npm",
            "args": [
                "start"
            ],
            "cwd": "${workspaceFolder}"
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later