file-analysis-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@file-analysis-mcpAnalyze the contents of the 'proposals' folder and summarize each document."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
file-analysis-mcp
Reads unstructured documents (pdf, docx, pptx, txt, svg, png, csv, xlsx) in a specified folder, understands their structure, and is a personal local MCP that saves nothing without approval.
Real-world example
Actual results from running against the included synthetic sample folder (sample_docs/).
list_folder_contents()
→ count: 8, entries: data.csv, diagram.svg, notes.docx, photo.png,
readme.txt, report.pdf, sheet.xlsx, slides.pptx
describe_file(relative_path="slides.pptx")
→ {"slide_count": 3, "slide_titles": ["팀 소개", "구성원", "다음 스프린트"]}The report written from actually reading these files is at
data/outputs/onboarding-overview-report.md — it passed structure validation VALID and filename-based grounding check GROUNDED (100 points).
I also validated it against a real lecture materials folder (PPTX, 9MB, 16 slides), and in the process found and fixed a bug where trying to read a lock file (~$*.pptx) created while PowerPoint is open caused the format library exception to surface directly. Now it's handled as an error containing the cause code and recovery method.
[INVALID_REQUEST] '~$파일.pptx' 파일을 열지 못했습니다: Package not found ...
복구 방법: list_folder_contents로 파일 목록과 지원 형식을 다시 확인하세요.Related MCP server: local-docs-mcp
What it is
Point it at a folder and it reads the documents inside, first figures out the structure such as page/slide/sheet counts, and helps write a summary report. It handles 8 formats with dedicated parsers (pypdf/python-docx/python-pptx/openpyxl/Pillow).
Why it's different
MCP does not call the LLM. The actual summary sentences are written by the Host (Claude/Codex). The server only handles data lookup, structure analysis, validation, and saving.
Both an approval token and the user's explicit approval are required before saving. The only write tool is
save_approved_report; the other 10 are read-only.PNG is delivered as real image content, without OCR. The Host's vision capability sees and interprets it directly.
Errors always return a cause code + recovery method + selectable values (see example above).
How it works
list_folder_contents → describe_file → read_file_text(또는 read_image_file)
→ build_summary_prompt → validate_report_draft → check_report_grounding
→ preview_save_report → [사용자 승인] → save_approved_reportStep | Tool | Role |
DISCOVER |
| Recursive folder exploration |
STRUCTURE |
| Structure only (page/slide/sheet counts, no body text) |
READ |
| Body text or image content |
SUMMARIZE |
| Assembles template + file list (no LLM call) |
CHECK |
| Structure validation — save gate |
CHECK |
| Cross-checks that mentioned filenames actually exist — advisory |
PREVIEW |
| diff + issues approval token |
SAVED |
| The only write tool |
OBSERVE |
| View save history |
Getting started
python -m venv .venv
.venv/Scripts/pip install -e ".[dev]"
.venv/Scripts/python scripts/generate_samples.py
.venv/Scripts/python -m pytest -q
.venv/Scripts/python scripts/smoke_stdio.pyAnalyzing a real folder
The default is sample_docs/. Just change one environment variable before starting the server.
FILE_ANALYSIS_ROOT="D:\내 문서 폴더" .venv/Scripts/python src/file_analysis_mcp/server.pyTo register with Codex CLI:
codex mcp add file-analysis --env FILE_ANALYSIS_ROOT="D:\내 문서 폴더" -- \
"<프로젝트경로>\.venv\Scripts\python.exe" "<프로젝트경로>\src\file_analysis_mcp\server.py"Limitations
Images are not OCR'd. Instead of extracting text, the image content is passed to the Host as-is.
Files over 20MB can only have their structure checked; the body text cannot be read.
check_report_groundingis a regex-based heuristic, so false positives are possible (it's advisory only and does not block saving).Encrypted, corrupted, or files in use by another program are reported as errors with a cause code — the server does not crash.
Underlying patterns
Follows the same design principles as personal-meeting-mcp-training (layer separation, stage/next_actions, approval boundaries). For detailed tool contracts, see the module docstrings in src/file_analysis_mcp/.
This server cannot be installed
Maintenance
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
- FlicenseAqualityCmaintenanceEnables read-only analysis of local unstructured documents by scanning a folder, extracting text and structural metadata, and passing content with truncation and error-awareness to an LLM for summarization.9
- AlicenseAqualityCmaintenanceEnables reading and extracting text from local documents (PDF, Word, Excel, PowerPoint, HWP, Markdown, CSV, etc.) without network access, and provides approval-gated summary saving and file organization.11MIT
- FlicenseAqualityCmaintenanceEnables local analysis of unstructured documents (PDF, DOCX, PPTX, SVG, PNG) by extracting text and structure with citation anchors, and verifies summaries against source material before a human approves saving a report.9
- FlicenseAqualityCmaintenanceEnables read-only scanning and text extraction from PDF, DOCX, PPTX, SVG, and PNG files in a local folder, providing the raw text to AI models for summarization or analysis without an external LLM API.5
Related MCP Connectors
Search and reason over your Obsidian-style Markdown vault, right from ChatGPT.
Read PDFs and images as markdown or text, with exact costs and hard spend caps. $0.75/1k pages.
Convert PDF bank statements into structured transactions, accounts, and balances.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/KyuSeon80/fileanalyzer_mcp_testmonial'
If you have feedback or need assistance with the MCP directory API, please join our Discord server