Meducate MCP

Meducate MCP

A self-aware, AI-powered MCP server that acts as a personal medical education assistant for African students, understanding natural language and autonomously managing reminders, data bundles, and medical knowledge retrieval.

Category
Visit Server

README

πŸ₯ Meducate MCP - Africa's AI Medical Education Assistant

"Your AI-powered Jarvis(let's call him Ananse) for medical education in Africa"

Empowering African medical students and young doctors with intelligent, context-aware assistance through natural language AI and Model Context Protocol.

Link to Video Demo

Link to Presentation Slides


🌍 The African Medical Education Challenge

Meet Serwaa, a second-year medical student in Accra, Ghana:

  • πŸ“š Overwhelmed with lectures, labs, and clinical rotations
  • πŸ’Έ Limited budget for textbooks and study resources
  • πŸ“± Struggles to afford consistent internet for research
  • ⏰ Needs constant reminders but finds rigid apps frustrating
  • 🌐 Often searches for medical information in broken English or local languages

Serwaa's reality mirrors millions of medical students across Africa - brilliant minds facing systemic barriers that technology should solve, not complicate.


✨ Enter Meducate MCP

Meducate is a self-aware, AI-powered Model Context Protocol (MCP) server that acts like a personal medical education assistant - understanding natural language, working autonomously in the background, and bridging critical gaps in African healthcare education.

🎯 What Makes Meducate Revolutionary

  1. 🧠 Self-Aware & Autonomous

    • Constantly monitors your schedule and study needs
    • Understands natural language: "remind me every 5 minutes" or "quiz me tomorrow morning"
    • Works in the background - no constant manual input needed
  2. 🌍 African-First Design

    • First MCP integration with African telecoms (MTN, Airteltigo)
    • Buy data bundles at cheap prices directly through AI in natural language.
    • Track balances, send usage stats to guardians
    • First Hubnets MCP for SMS/OTP in Africa
  3. πŸ“– Medical Knowledge at Your Fingertips

    • Scrapes trusted sources: WHO Africa, CDC, PubMed, BMJ
    • Focuses on diseases relevant to African contexts (Malaria, TB, etc.)
    • Generates quizzes tailored to your curriculum
    • Finds cheapest textbook prices across platforms
  4. πŸ—£οΈ Natural Language Understanding

    • Write in English, Twi, Pidgin, or local languages
    • AI interprets context, not just keywords
    • Accessible to non-native speakers

πŸš€ Key Features

πŸ€– AI-Powered Intelligence

  • Natural Language Processing via Groq AI (Llama 3.3 70B)
  • Dynamic tool selection - AI decides which action to take
  • Context-aware suggestions based on your study patterns
  • Tools are automatically discovered and integrated into the AI's capabilities - no hardcoding required!

πŸ“… Smart Scheduling System

"Quiz me about pharmacology tomorrow morning"
"Remind me every hour to drink water"
"Send my study stats to mom every Sunday"
"buy 5gb for my data bundle when my balance is low"
"send 1gb to my sister tomorrow afternoon to thank her for helping me study`"

The AI understands and executes - no rigid formats!

πŸ“š Medical Knowledge Base

  • Disease information scraping (WHO, CDC, PubMed)

πŸ“š Medical Knowledge Base

  • Disease information scraping (WHO, CDC, PubMed)
  • Quiz generation for active recall
  • Study resource aggregation (videos, articles)
  • Textbook price comparison

πŸ“± Africa-Specific Integrations

  • Data bundle purchases (Airteltigo, MTN)
  • SMS notifications via Hubnets
  • Gmail notifications for reminders and updates

πŸ“Š Productivity Tools

  • Google Sheets integration for timetables
  • Gmail notifications
  • Autonomous/self-conscious reminder system

πŸ† Why Meducate Wins

βœ… Technical Excellence

  • JSON-based MCP protocol implementation
  • Multi-service architecture (Python + Node.js Puppeteer)
  • AI-powered natural language parsing
  • Dynamic tool execution system
  • Robust error handling

βœ… Innovation

  • First African telcom MCP integration
  • First Hubnets SMS MCP
  • Natural language scheduler (vs rigid cron jobs)
  • Self-aware autonomous operation
  • Multi-domain integration (healthcare + telecom + education)

βœ… African Relevance

  • Solves real problems facing African medical students
  • Focus on African disease contexts
  • Affordable data management built-in
  • Accessible natural language interface

🎬 Quick Start

Prerequisites

  • Python 3.10+
  • Node.js 18+
  • Google Cloud account (for Sheets/Gmail)
  • Groq API key(This is free, you can get it via https://console.groq.com/keys)

Installation

  1. Clone the repository
git clone https://github.com/JoshNuku/meducate-mcp.git
cd meducate-mcp
  1. Set up Python environment
# Install UV package manager
pip install uv

# Install dependencies
uv sync
  1. Set up Puppeteer server
cd puppeteer-server
npm install
  1. Configure environment
# Copy example environment file
cp .env.example .env

# Edit .env with your credentials
# Add GROQ_API_KEY, Gmail credentials, etc.
  1. Set up Google Sheets API

    • Create a project in Google Cloud Console
    • Enable Google Sheets API
    • Create service account and download credentials.json
    • Place credentials.json in the root directory
  2. Run the servers

# Terminal 1: Start Puppeteer server
cd puppeteer-server
npm start

# Terminal 2: Start MCP server
cd ..
python main.py

πŸ“– Usage Examples

Natural Language Reminders

"Remind me to review anatomy every morning at 8am"
"Quiz me about cardiology tomorrow afternoon"
"Send my study hours to dad every Sunday"
"Drink water every 30 minutes"

Medical Information

"Get latest WHO guidelines on malaria treatment"
"Find recent research on tuberculosis in Africa"
"What are common symptoms of typhoid fever?"

Data Management

"Buy 5GB data bundle for my MTN number"
"Check my data balance"

Study Resources

"Find YouTube videos about pharmacology"
"Compare prices for Gray's Anatomy textbook"
"Generate 10 quiz questions on neurology"

🌍 African Language Support

Meducate understands context in multiple languages:

English (Standard)

"Remind me to study at 6pm everyday"

Pidgin (Nigeria)

"Make you remind me say make I read book for evening time"

Twi (Ghana)

"kai me s3 mefa "(Remind)

Swahili (East Africa)

"Nikumbushe kusoma saa kumi na mbili usiku"

The AI interprets intent, not just exact phrasing!


πŸ—οΈ Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚          User (AI Assistant/LLM)                β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                 β”‚ MCP Protocol (JSON-RPC)
                 β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚         Meducate MCP Server (Python)            β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  AI Decision Engine (Groq/Llama 3.3)     β”‚  β”‚
β”‚  β”‚  - Natural language parsing              β”‚  β”‚
β”‚  β”‚  - Dynamic tool selection                β”‚  β”‚
β”‚  β”‚  - Context-aware reasoning               β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  Tools Layer                             β”‚  β”‚
β”‚  β”‚  β€’ Medical scraping  β€’ Reminders         β”‚  β”‚
β”‚  β”‚  β€’ Telecom APIs      β€’ Payments          β”‚  β”‚
β”‚  β”‚  β€’ Notifications     β€’ Scheduling        β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β””β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
   β”‚              β”‚              β”‚
   β–Ό              β–Ό              β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚Puppeteer β”‚  β”‚  Google  β”‚  β”‚   African    β”‚
β”‚ Server   β”‚  β”‚ Services β”‚  β”‚   Telecom    β”‚
β”‚(Node.js) β”‚  β”‚(Sheets,  β”‚  β”‚    APIs      β”‚
β”‚          β”‚  β”‚ Gmail)   β”‚  β”‚ (MTN, etc.)  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
     β”‚
     β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Medical Websites                   β”‚
β”‚  β€’ WHO Africa  β€’ CDC  β€’ PubMed      β”‚
β”‚  β€’ BMJ  β€’ UpToDate  β€’ Book Stores   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ“ Project Structure

meducate_mcp/
β”œβ”€β”€ main.py                      # Entry point & MCP server
β”œβ”€β”€ .env.example                 # Environment template
β”œβ”€β”€ credentials.json             # Google API credentials
β”œβ”€β”€ pyproject.toml               # Python dependencies
β”‚
β”œβ”€β”€ Tools/                       # MCP tool implementations
β”‚   β”œβ”€β”€ disease_tools.py         # Medical info scraping
β”‚   β”œβ”€β”€ quiz_tools.py            # Quiz generation
β”‚   β”œβ”€β”€ study_tools.py           # Study resources
β”‚   β”œβ”€β”€ notification_tools.py    # Email/SMS alerts
β”‚   β”œβ”€β”€ reminder.py              # Reminder system
β”‚   └── buy_internet_bundle.py   # Data bundle purchases
β”‚
β”œβ”€β”€ utils/                       # Core utilities
β”‚   β”œβ”€β”€ ai_decision_engine.py    # Groq AI integration
β”‚   β”œβ”€β”€ scheduler.py             # Background scheduler
β”‚   β”œβ”€β”€ tool_extractor.py        # Dynamic tool discovery
β”‚   └── message_formatter.py     # AI message formatting
β”‚
β”œβ”€β”€ Helpers/                     # Business logic(functions for tools)
β”‚   β”œβ”€β”€ scheduler_helper.py      # Scheduling functions
β”‚   β”œβ”€β”€ notification_helpers.py  # Notification logic
β”‚   └── reminder_helpers.py      # Reminder helpers
β”‚
β”œβ”€β”€ puppeteer-server/            # Web scraping service
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ controllers/         # Scraping controllers
β”‚   β”‚   β”œβ”€β”€ services/            # Browser service
β”‚   β”‚   └── utils/               # Page utilities
β”‚   └── package.json
β”‚
└── at root/                        # Documentation
    β”œβ”€β”€ NOTIFICATION_DOCS.md
    β”œβ”€β”€ PUPPETEER_TOOLS_README.md
    └── REMINDER_DOCS.md

🎯 MCP Hackathon Africa 2025

Tracks Covered

  • πŸ₯ Healthcare Systems (Primary)
  • πŸ“š Education & Learning (Primary)
  • πŸ“‘ Telecommunications (Secondary)

Unique Value Propositions

  1. Only MCP with African telecom integration

    • Direct data bundle purchases- no stress of dialing ussd codes
    • Balance tracking and alerts
    • Guardian notifications
    • email sending- the course rep who has to announce to the class about rescheduled lectures can do so via gmail notification tool integrated into the mcp
  2. First Unofficial MCP with Hubnets SMS

    • OTP verification
    • SMS reminders for no-internet scenarios
    • Wider accessibility
  3. Natural Language AI Scheduler

    • Not just keyword matching
    • True context understanding
    • Works in multiple languages
  4. Self-Aware Operation

    • Autonomous background monitoring
    • Proactive suggestions
    • Contextual awareness
  5. Medical Education Focus

    • African disease contexts
    • Affordable resource discovery
    • Quiz generation for active learning

πŸ“š Documentation


🌟 Impact & Vision

Current Impact

βœ… Reduces study costs by aggregating free medical resources
βœ… Saves data expenses through affordable bundle integration
βœ… Increases efficiency with AI-powered autonomous reminders
βœ… Improves accessibility via natural language understanding
βœ… Bridges telecom gap with first-of-its-kind African MCP integrations

Future Vision

πŸš€ Expand to more African countries and telecom providers
πŸŽ™οΈ Add voice interface for hands-free, low-literacy operation
πŸ₯ Integrate with hospital systems for clinical rotation management
πŸ“š Build community knowledge base of African medical cases
🀝 Partner with medical schools across Africa
🌍 Support more local languages (Yoruba, Igbo, Amharic, etc.)
πŸ’‘ AI-powered study group matching and collaboration


🀝 Contributing

We welcome contributions! This is an open-source project for African impact.

See CONTRIBUTING.md for detailed developer guidelines.

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
Qdrant Server

Qdrant Server

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

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