An MCP (Model Context Protocol) server that extracts text and images from PDF and PowerPoint files, making them accessible to Claude and other MCP-compatible AI clients.
read_pdf— Extracts text, tables (as Markdown), and images from a PDF file, page by page.read_pptx— Extracts text, images, and speaker notes from a PowerPoint file, slide by slide.read_docx— Extracts text, tables (as Markdown), and images from a Word document.read_xlsx— Extracts data from an Excel file as Markdown tables, one section per sheet.
- Python 3.12+
uv(recommended)
git clone https://github.com/Ron5474/slides-reader
cd slides-reader
uv syncuv run python main.pyThe quickest way to add this MCP server to Claude Code is with the claude mcp add command:
claude mcp add slides-reader -- uv --directory /absolute/path/to/slides-reader run python main.pyReplace /absolute/path/to/slides-reader with the actual absolute path to this repository.
To verify it was added:
claude mcp listAlternatively, edit ~/.claude/claude_code_config.json:
{
"mcpServers": {
"slides-reader": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/slides-reader",
"run",
"python",
"main.py"
]
}
}
}- Mac:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"slides-reader": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/slides-reader",
"run",
"python",
"main.py"
]
}
}
}After editing the config, restart Claude for the changes to take effect.
Once configured, you can ask Claude to read any supported file by providing its absolute path:
"Read the PDF at /home/user/documents/report.pdf"
"Summarize the slides at /home/user/presentations/lecture.pptx"
"Extract the text from /home/user/documents/report.docx"
"Show me the data in /home/user/spreadsheets/budget.xlsx"