Wikipedia MCP Server

Wikipedia MCP Server

Provides Claude with real-time access to Wikipedia through four essential tools: search articles, get full content, retrieve summaries, and find related articles. Enables comprehensive Wikipedia research workflows with structured data access and no API keys required.

Category
Visit Server

README

Wikipedia MCP Server

A Model Context Protocol (MCP) server that provides Claude with real-time access to Wikipedia. This server implements 4 essential tools for effective Wikipedia research while demonstrating core MCP concepts.

Features

Core Tools

  • search_wikipedia - Find articles when you don't know exact titles
  • get_article - Retrieve full article content for detailed analysis
  • get_summary - Get concise summaries for quick understanding
  • find_related - Discover related articles to expand research

Key Benefits

  • 🔄 Real-time data - Access current Wikipedia content, not training data
  • 🏗️ Structured output - Well-defined schemas for reliable data access
  • 🏠 Local control - Self-hosted, no API keys required
  • Fast & efficient - Async operations with proper error handling

Installation

Prerequisites

  • Python 3.9 or higher
  • uv (recommended) or pip

Install Dependencies

Using pip:

# Navigate to the project directory
cd wikipedia-mcp-server

# Install dependencies
pip install mcp httpx pydantic beautifulsoup4

Using uv (if available):

# Clone or create the project directory
cd wikipedia-mcp-server

# Install dependencies
uv sync

Usage

Running the Server

With python directly:

python -m src.wikipedia_mcp_server

With uv (if available):

uv run python -m src.wikipedia_mcp_server

Testing the Tools

You can test individual tools by running the server and connecting with an MCP client:

# Example: Search for articles
search_wikipedia("quantum computing", limit=3)

# Example: Get article summary
get_summary("Albert Einstein")

# Example: Get full article
get_article("Machine Learning")

# Example: Find related articles
find_related("Artificial Intelligence", limit=5)

Claude Desktop Integration

To use this MCP server with Claude Desktop, add it to your MCP configuration:

macOS/Linux Configuration

Edit ~/.config/claude-desktop/mcp.json:

{
  "mcpServers": {
    "wikipedia": {
      "command": "python",
      "args": [
        "-m", 
        "src.wikipedia_mcp_server"
      ],
      "cwd": "/ABSOLUTE/PATH/TO/wikipedia-mcp-server"
    }
  }
}

Windows Configuration

Edit %APPDATA%\Claude\mcp.json:

{
  "mcpServers": {
    "wikipedia": {
      "command": "python",
      "args": [
        "-m", 
        "src.wikipedia_mcp_server"
      ],
      "cwd": "C:\\ABSOLUTE\\PATH\\TO\\wikipedia-mcp-server"
    }
  }
}

Alternative: Using uv

If you have uv installed:

{
  "mcpServers": {
    "wikipedia": {
      "command": "uv",
      "args": [
        "run", 
        "python", 
        "-m", 
        "src.wikipedia_mcp_server"
      ],
      "cwd": "/ABSOLUTE/PATH/TO/wikipedia-mcp-server"
    }
  }
}

Research Workflows

Typical Research Flow

  1. Discover: search_wikipedia("quantum computing") → Find relevant articles
  2. Overview: get_summary("Quantum computing") → Quick understanding
  3. Deep dive: get_article("Quantum computing") → Full content when needed
  4. Expand: find_related("Quantum computing") → Related topics

Example Claude Conversation

User: I want to learn about Marie Curie's discoveries

Claude: I'll help you research Marie Curie's discoveries. Let me start by getting a summary of her Wikipedia article.

[Uses get_summary("Marie Curie")]

Based on the summary, Marie Curie was a pioneering scientist who discovered radium and polonium. Let me find related articles about her specific discoveries.

[Uses find_related("Marie Curie")]

Now let me get detailed information about her discovery of radium.

[Uses get_article("Radium")]

Tool Specifications

search_wikipedia

  • Purpose: Find articles when you don't know exact titles
  • Input: query (required), limit (1-10), language (default: "en")
  • Output: List of search results with titles, snippets, and URLs

get_article

  • Purpose: Retrieve full article content
  • Input: title (required), language (default: "en")
  • Output: Complete article with content, metadata, and sections

get_summary

  • Purpose: Get concise article summaries
  • Input: title (required), language (default: "en")
  • Output: Summary text with key facts

find_related

  • Purpose: Discover related articles
  • Input: title (required), limit (1-10), language (default: "en")
  • Output: Related articles with relationship types

Error Handling

The server includes comprehensive error handling for:

  • Invalid article titles
  • Network timeouts
  • Wikipedia API errors
  • Malformed requests
  • Rate limiting

Development

Project Structure

wikipedia-mcp-server/
├── src/wikipedia_mcp_server/
│   ├── __init__.py
│   ├── __main__.py
│   ├── server.py          # Main MCP server
│   ├── models.py          # Pydantic data models
│   └── wikipedia_client.py # Wikipedia API client
├── pyproject.toml
├── README.md
└── mvp.md

Key MCP Concepts Demonstrated

  • ✅ Tool registration with @mcp.tool()
  • ✅ Structured input/output with Pydantic models
  • ✅ Async operations for performance
  • ✅ Proper error handling and validation
  • ✅ Clear tool documentation

Adding New Tools

To add a new tool:

  1. Define the output model in models.py
  2. Add the Wikipedia API method in wikipedia_client.py
  3. Register the tool in server.py with @mcp.tool()

Performance Considerations

  • Async operations: All Wikipedia API calls are non-blocking
  • Response times: Typically < 3 seconds per operation
  • Rate limiting: Respects Wikipedia's guidelines
  • Error resilience: Graceful handling of API failures

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

License

This project is open source and available under the MIT License.

Acknowledgments


Happy researching with Claude and Wikipedia! 🔍📚

Recommended Servers

playwright-mcp

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.

Official
Featured
TypeScript
Magic Component Platform (MCP)

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.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

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.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

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.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured