A custom MCP (Model Context Protocol) server that reads and summarizes the contents of any file type (PDF, DOCX, TXT, HTML, JSON, etc.) using Apache Tika, with optional multilingual support.
🧠 Easily plug this into Claude Desktop or other LLM tools to enable file-based context and summarization.
- 🔍 Reads content from any file type supported by Apache Tika
- ✨ Summarizes file content or raw input text
- 🌍 Auto-detects file language and translates non-English text before summarizing
- 🌐 Optional MCP tools to detect language and translate text
- 🧩 Async MCP tools for smooth integration
- 🛠️ Built with Python 3.12 and the FastMCP framework
- ✅ Ready for use with Claude Desktop or any other MCP client
- 📦 Published to PyPI for easy installation
pip install file-summarizer-mcp-servergit clone https://github.com/Muskan244/File_Summarizer_MCP_Server.git
cd File_Summarizer_MCP_Server
uv venv
source .venv/bin/activate # or .venv\Scripts\activate on Windows
uv pip install -r requirements.txtTo use this server inside Claude Desktop:
- Open (or create) your Claude config:
code ~/Library/Application\ Support/Claude/claude_desktop_config.jsoncode $env:AppData\Claude\claude_desktop_config.json- Add your server entry:
{
"mcpServers": {
"file-summarizer": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/File_Summarizer_MCP_Server/file_summarizer",
"run",
"file_summarizer.py"
]
}
}
}- Restart Claude Desktop, and your tools should appear!
| Tool Name | Description |
|---|---|
read_file |
Reads raw content from a file |
summarize_file |
Summarizes content of any file |
summarize_text |
Summarizes raw text string |
detect_language |
Detects the language of input text |
translate_text |
Translates any text to English |
transcribe_file |
Transcribe audio or video file content |
- Python 3.12
- Apache Tika
- langdetect
- deep-translator
- fastmcp
Install all with:
pip install -r requirements.txtThis project is licensed under the MIT License. See the LICENSE file for details.