Skip to main content
Glama
msilverblatt

Wikipedia MCP Server

by msilverblatt

wiki-mcp

npm version Smithery License: MIT

MCP (Model Context Protocol) server for Wikipedia. Provides tools to search articles, retrieve content, summaries, categories, links, images, language versions, and external references.

Features

  • 9 Wikipedia tools for comprehensive article access

  • Proper TypeScript types for all API responses

  • Request timeout handling

  • Error handling with informative messages

  • Modular architecture

Tools

Tool

Description

wiki_search

Search Wikipedia for articles matching a query

wiki_get_article

Get the full text content of an article

wiki_get_summary

Get a short summary of an article

wiki_random

Get random Wikipedia articles

wiki_get_categories

Get categories an article belongs to

wiki_get_links

Get internal Wikipedia links from an article

wiki_get_images

Get images used in an article

wiki_get_languages

Get available language versions of an article

wiki_get_references

Get external references/links from an article

Installation

bunx wiki-mcp install

This automatically adds wiki-mcp to Claude Desktop and Claude Code.

Manual install

# Or install globally
bun add -g wiki-mcp
npm install -g wiki-mcp

Via Smithery

npx @smithery/cli install wiki-mcp

From source

git clone https://github.com/msilverblatt/wiki-mcp.git
cd wiki-mcp
bun install

Usage

With Claude Desktop

Add to your Claude Desktop configuration (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "wikipedia": {
      "command": "bunx",
      "args": ["wiki-mcp"]
    }
  }
}

With Claude Code

Add to your Claude Code MCP settings (~/.claude/settings.json):

{
  "mcpServers": {
    "wikipedia": {
      "command": "bunx",
      "args": ["wiki-mcp"]
    }
  }
}

Standalone

bun run index.ts

The server communicates via stdio using the MCP protocol.

Tool Examples

Search for articles:

{
  "query": "artificial intelligence",
  "limit": 5
}

Returns:

[
  {
    "title": "Artificial intelligence",
    "snippet": "Artificial intelligence (AI) is the intelligence of machines...",
    "pageid": 1234
  }
]

wiki_get_article

Get full article content:

{
  "title": "JavaScript"
}

Returns plain text article content.

wiki_get_summary

Get article summary:

{
  "title": "TypeScript"
}

Returns:

{
  "title": "TypeScript",
  "description": "Programming language",
  "extract": "TypeScript is a strongly typed programming language...",
  "url": "https://en.wikipedia.org/wiki/TypeScript"
}

wiki_get_categories

Get article categories:

{
  "title": "Python (programming language)",
  "limit": 10
}

Returns:

{
  "title": "Python (programming language)",
  "categories": ["Programming languages", "Scripting languages", "..."]
}

Get internal links:

{
  "title": "Machine learning",
  "limit": 50
}

Returns:

{
  "title": "Machine learning",
  "links": ["Artificial intelligence", "Data science", "..."]
}

wiki_get_images

Get article images:

{
  "title": "Solar System",
  "limit": 20
}

Returns:

{
  "title": "Solar System",
  "images": [
    {
      "title": "Solar System.jpg",
      "url": "https://en.wikipedia.org/wiki/File:Solar_System.jpg"
    }
  ]
}

wiki_get_languages

Get available translations:

{
  "title": "Albert Einstein"
}

Returns:

{
  "title": "Albert Einstein",
  "languageCount": 200,
  "languages": [
    {
      "language": "Deutsch",
      "code": "de",
      "title": "Albert Einstein",
      "url": "https://de.wikipedia.org/wiki/Albert_Einstein"
    }
  ]
}

wiki_get_references

Get external references:

{
  "title": "Climate change",
  "limit": 30
}

Returns:

{
  "title": "Climate change",
  "references": ["https://www.ipcc.ch/", "..."]
}

wiki_random

Get random articles:

{
  "count": 3
}

Returns:

[
  { "title": "Random Article 1", "id": 12345 },
  { "title": "Random Article 2", "id": 67890 }
]

Development

# Run tests
bun test

# Type check
bun run typecheck

# Start server
bun run start

Project Structure

wiki-mcp/
├── index.ts              # Entry point
├── src/
│   ├── api.ts            # Wikipedia API client
│   ├── server.ts         # MCP server setup
│   ├── types.ts          # TypeScript interfaces
│   └── tools/
│       ├── index.ts      # Tool registration
│       ├── search.ts     # wiki_search
│       ├── article.ts    # wiki_get_article
│       ├── summary.ts    # wiki_get_summary
│       ├── random.ts     # wiki_random
│       ├── categories.ts # wiki_get_categories
│       ├── links.ts      # wiki_get_links
│       ├── images.ts     # wiki_get_images
│       ├── languages.ts  # wiki_get_languages
│       └── references.ts # wiki_get_references
└── tests/
    ├── api.test.ts       # API helper tests
    └── tools.test.ts     # Tool integration tests

License

MIT

-
security - not tested
A
license - permissive license
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/msilverblatt/wiki-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server