Skip to main content
Glama
sadeghetemad

wikipedia-mcp-agent

by sadeghetemad

🌐 Wikipedia MCP Agent

A conversational AI agent that searches and reads Wikipedia using the Model Context Protocol (MCP), LangGraph, and AWS Bedrock (Claude Sonnet).

Python LangGraph MCP AWS Bedrock License


Overview

This project wires together three modern AI infrastructure pieces:

  1. MCP (Model Context Protocol) — a standard way to expose tools, prompts, and resources to an LLM

  2. LangGraph — a graph-based agent framework for multi-step reasoning with tool calls

  3. AWS Bedrock — managed LLM inference using Anthropic's Claude Sonnet

The agent launches an MCP server as a subprocess, dynamically loads its Wikipedia tools at runtime, and runs a stateful chat loop where the LLM can call tools as needed before answering.


Related MCP server: Wikipedia MCP Server

Architecture

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│                    mcp_client.py                    │
│                                                     │
│  ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”   │
│  │              LangGraph StateGraph            │   │
│  │                                              │   │
│  │   START ──► chat_node ──► tool_node ──┐      │   │
│  │                  ā–²                    │      │   │
│  │                  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜      │   │
│  │                         │ END                │   │
│  ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜   │
│                            │ tool calls              │
│              stdin/stdout (MCP stdio transport)      │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
                             │
ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā–¼ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│                    mcp_server.py                    │
│                                                     │
│   Tools      search_wikipedia                       │
│              list_wikipedia_sections                │
│              get_section_content                    │
│                                                     │
│   Prompts    highlight_sections_prompt              │
│                                                     │
│   Resources  suggested_titles                       │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜
                             │
                    wikipedia Python library

Features

Tools

Tool

Description

search_wikipedia

Search Wikipedia and return the summary + URL of the top result

list_wikipedia_sections

List all section titles of a Wikipedia article

get_section_content

Fetch the full text of a specific section

Prompts

Prompt

Description

highlight_sections_prompt

Ask the LLM to pick the 3–5 most important sections of an article and explain why

Resources

Resource

Description

suggested_titles

Reads a local suggested_titles.txt file with topic suggestions


Getting Started

Prerequisites

  • Python 3.10+

  • AWS account with Bedrock access enabled for anthropic.claude-sonnet-4-6 in eu-west-2

Installation

# Clone the repo
git clone https://github.com/sadeghetemad/wikipedia-mcp-agent.git
cd wikipedia-mcp-agent

# Create and activate a virtual environment
python -m venv venv
venv\Scripts\activate        # Windows
# source venv/bin/activate   # macOS / Linux

# Install dependencies
pip install -r requirements.txt

AWS Credentials

Configure your credentials via the AWS CLI or environment variables:

aws configure

Or manually:

export AWS_ACCESS_KEY_ID=your_key
export AWS_SECRET_ACCESS_KEY=your_secret
export AWS_DEFAULT_REGION=eu-west-2

Make sure your IAM user/role has the bedrock:InvokeModel permission.


Usage

python mcp_client.py

You will see:

Wikipedia MCP agent is ready.
Type a question or use one of the slash commands below:
  /prompts                       - list available prompt templates
  /prompt <name> "arg1" ...      - run a prompt template
  /resources                     - list available resources
  /resource <name or index>      - view a resource
  exit / quit / q                - quit

Example session

You: What is quantum entanglement?
AI: Quantum entanglement is a physical phenomenon where two or more particles ...

You: /prompts
Available Prompts:
  highlight_sections_prompt  (topic)

You: /prompt highlight_sections_prompt "Black hole"
=== Prompt Result ===
• Formation — explains how black holes arise from stellar collapse
• Event horizon — the defining boundary of no return
...

You: /resources
Available Resources:
[1] suggested_titles

You: /resource 1
=== Resource Text ===
Artificial intelligence
Large language model
...

Optional: suggested_titles.txt

Create this file in the project root (one topic per line) to populate the suggested_titles resource:

Artificial intelligence
Large language model
Model Context Protocol
Quantum computing

Project Structure

wikipedia-mcp-agent/
ā”œā”€ā”€ mcp_server.py          # FastMCP server — tools, prompts, resources
ā”œā”€ā”€ mcp_client.py          # LangGraph agent + interactive chat loop
ā”œā”€ā”€ requirements.txt       # Pinned Python dependencies
ā”œā”€ā”€ suggested_titles.txt   # (optional) topic suggestions for the resource
└── README.md

Tech Stack

Layer

Library

LLM

AWS Bedrock via langchain-aws

Agent framework

LangGraph

Tool protocol

MCP via mcp + langchain-mcp-adapters

Wikipedia data

wikipedia


License

MIT

F
license - not found
-
quality - not tested
C
maintenance

Maintenance

–Maintainers
–Response time
–Release cycle
–Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    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.
  • A
    license
    A
    quality
    C
    maintenance
    Enables LLMs to search for keywords and fetch full page content from Wikipedia across various languages. It provides direct access to Wikipedia information through search and fetch tools.
    2
    3
    MIT
  • A
    license
    -
    quality
    F
    maintenance
    Enables AI agents to search, read, and explore Wikipedia articles via tools like summaries, categories, and random articles, with no API keys required.
    1
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to access Wikipedia content, search articles, retrieve historical events, and fetch images through the Wikipedia API.
    4
    29
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Search and fetch Wikidata entities, execute SPARQL queries, and resolve external identifiers.

  • Live Wikipedia edit feed, page summaries, trending pages, and Wikidata search.

  • Wikipedia MCP — wraps Wikipedia REST API (free, no auth)

View all MCP Connectors

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/sadeghetemad/wikipedia-mcp-agent'

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