
Security News
CVE Volume Surges Past 48,000 in 2025 as WordPress Plugin Ecosystem Drives Growth
CVE disclosures hit a record 48,185 in 2025, driven largely by vulnerabilities in third-party WordPress plugins.
stackoverflow-mcp
Advanced tools
This Model Context Protocol (MCP) server enables AI assistants like Claude to search and access Stack Overflow content through a standardized protocol, providing seamless access to programming solutions, error handling, and technical knowledge.
[!NOTE]
The Stack Overflow MCP Server is currently in Beta. We welcome your feedback and encourage you to report any bugs by opening an issue.
Here are some example prompts you can use with Claude when the Stack Overflow MCP server is integrated:
| Tool | Example Prompt | Description |
|---|---|---|
search_by_query | "Search Stack Overflow for Django pagination best practices" | Finds the most relevant questions and answers about Django pagination techniques |
search_by_query | "Find Python asyncio examples with tags python and asyncio" | Searches for specific code examples filtering by multiple tags |
search_by_error | "Why am I getting 'TypeError: object of type 'NoneType' has no len()' in Python?" | Finds solutions for a common Python error |
get_question | "Get Stack Overflow question 53051465 about React hooks" | Retrieves a specific question by ID, including all answers |
analyze_stack_trace | "Fix this error: ReferenceError: useState is not defined at Component in javascript" | Analyzes JavaScript error to find relevant solutions |
advanced_search | "Find highly rated answers about memory leaks in C++ with at least 10 upvotes" | Uses advanced filtering to find high-quality answers |
Before using this MCP server, you need to:
To use this server effectively, you'll need a Stack Exchange API key:
This API key is not considered a secret and may be safely embedded in client-side code or distributed binaries. It simply allows you to receive a higher request quota when making requests to the Stack Exchange API.
# Using pip
pip install stackoverflow-mcp
# OR Using uv
uv venv
uv pip install stackoverflow-mcp
# OR using uv wihtout an venv
uv pip install stackoverflow-mcp --system
# Clone the repository
git clone https://github.com/yourusername/stackoverflow-mcp-server.git
cd stackoverflow-mcp-server
# Install with uv
uv venv
uv pip install -e .
To run the Stack Overflow MCP server with Claude Desktop:
Download Claude Desktop.
Launch Claude and navigate to: Settings > Developer > Edit Config.
Update your claude_desktop_config.json file with the following configuration:
{
"mcpServers": {
"stack-overflow": {
"command": "uv",
"args": ["run", "-m", "stackoverflow_mcp"],
"env": {
"STACK_EXCHANGE_API_KEY": "your_API_key"
}
}
}
}
You can also specify a custom directory:
{
"mcpServers": {
"stack-overflow": {
"command": "uv",
"args": [
"--directory",
"/path/to/stackoverflow-mcp-server",
"run",
"main.py"
],
"env": {
"STACK_EXCHANGE_API_KEY": "your_api_key_here"
}
}
}
}
The server can be configured using these environment variables:
# Required
STACK_EXCHANGE_API_KEY=your_api_key_here
# Optional
MAX_REQUEST_PER_WINDOW=30 # Maximum requests per rate limit window
RATE_LIMIT_WINDOW_MS=60000 # Rate limit window in milliseconds (1 minute)
RETRY_AFTER_MS=2000 # Delay after hitting rate limit
You can create a .env file in the project root:
STACK_EXCHANGE_API_KEY=your_api_key_here
MAX_REQUEST_PER_WINDOW=30
RATE_LIMIT_WINDOW_MS=60000
RETRY_AFTER_MS=2000
The Stack Overflow MCP server provides the following tools:
Search Stack Overflow for questions matching a query.
Parameters:
- query: The search query
- tags: Optional list of tags to filter by (e.g., ["python", "pandas"])
- excluded_tags: Optional list of tags to exclude
- min_score: Minimum score threshold for questions
- has_accepted_answer: Whether questions must have an accepted answer
- include_comments: Whether to include comments in results
- response_format: Format of response ("json" or "markdown")
- limit: Maximum number of results to return
Search Stack Overflow for solutions to an error message.
Parameters:
- error_message: The error message to search for
- language: Programming language (e.g., "python", "javascript")
- technologies: Related technologies (e.g., ["react", "django"])
- min_score: Minimum score threshold for questions
- include_comments: Whether to include comments in results
- response_format: Format of response ("json" or "markdown")
- limit: Maximum number of results to return
Get a specific Stack Overflow question by ID.
Parameters:
- question_id: The Stack Overflow question ID
- include_comments: Whether to include comments in results
- response_format: Format of response ("json" or "markdown")
Analyze a stack trace and find relevant solutions on Stack Overflow.
Parameters:
- stack_trace: The stack trace to analyze
- language: Programming language of the stack trace
- include_comments: Whether to include comments in results
- response_format: Format of response ("json" or "markdown")
- limit: Maximum number of results to return
Advanced search for Stack Overflow questions with many filter options.
Parameters:
- query: Free-form search query
- tags: List of tags to filter by
- excluded_tags: List of tags to exclude
- min_score: Minimum score threshold
- title: Text that must appear in the title
- body: Text that must appear in the body
- answers: Minimum number of answers
- has_accepted_answer: Whether questions must have an accepted answer
- sort_by: Field to sort by (activity, creation, votes, relevance)
- include_comments: Whether to include comments in results
- response_format: Format of response ("json" or "markdown")
- limit: Maximum number of results to return
This section is for contributors who want to develop or extend the Stack Overflow MCP server.
# Clone the repository
git clone https://github.com/yourusername/stackoverflow-mcp-server.git
cd stackoverflow-mcp-server
# Install dev dependencies
uv pip install -e ".[dev]"
# Run all tests
pytest
# Run specific test modules
pytest tests/test_formatter.py
pytest tests/test_server.py
# Run tests with coverage report
pytest --cov=stackoverflow_mcp
stackoverflow-mcp-server/
├── stackoverflow_mcp/ # Main package
│ ├── __init__.py
| |── __main__.py # Entry point
│ ├── api.py # Stack Exchange API client
│ ├── env.py # Environment configuration
│ ├── formatter.py # Response formatting utilities
│ ├── server.py # MCP server implementation
│ └── types.py # Data classes
├── tests/ # Test suite
│ ├── api/
│ │ └── test_search.py # API search tests
│ ├── test_formatter.py # Formatter tests
│ ├── test_general_api_health.py # API health tests
│ └── test_server.py # Server tests
├── pyproject.toml # Package configuration
├── api_query.py # testing stackexchange outside of MCP context
├── LICENSE # License file
└── README.md # This file
Contributions are welcome! Here's how you can contribute:
git checkout -b feature/my-featuregit commit -am 'Add new feature'git push origin feature/my-featurePlease make sure to update tests as appropriate and follow the project's coding style.
This project is licensed under the MIT License - see the LICENSE file for details.
Stack Overflow MCP Server: AI-accessible programming knowledge
FAQs
Stack Overflow MCP server for LLM applications
We found that stackoverflow-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
CVE disclosures hit a record 48,185 in 2025, driven largely by vulnerabilities in third-party WordPress plugins.

Security News
Socket CEO Feross Aboukhadijeh joins Insecure Agents to discuss CVE remediation and why supply chain attacks require a different security approach.

Security News
Tailwind Labs laid off 75% of its engineering team after revenue dropped 80%, as LLMs redirect traffic away from documentation where developers discover paid products.