file-analyzer-mcp
動作確認
フォルダを指定すると、推測ではなく実際のツリーを返します:
$ analyze_folder_structure({ "folder_path": "tests/fixtures" }){
"status": "OK",
"file_count": 6,
"supported_file_count": 6,
"extension_stats": [
{ "extension": ".pdf", "count": 2, "bytes": 723995 },
{ "extension": ".docx", "count": 1, "bytes": 35505 },
{ "extension": ".pptx", "count": 1, "bytes": 33067 },
{ "extension": ".svg", "count": 1, "bytes": 319 },
{ "extension": ".png", "count": 1, "bytes": 74 }
],
"tree_text": "fixtures/\n├── sample.docx (34.7KB)\n├── sample.pdf (431B)\n├── sample.png (74B)\n├── sample.pptx (32.3KB)\n├── sample.svg (319B)\n└── sample_scanned.pdf (706.6KB)"
}その中の1つを読むと、見出し・段落・表が構造化された形で返ってきます(平坦化されません):
$ read_docx({ "file_path": "tests/fixtures/sample.docx" }){
"status": "OK",
"headings": ["테스트 문서"],
"text": "테스트 문서\n본문 첫 문단입니다.",
"tables": [{ "index": 0, "rows": [["A", "B"], ["1", "2"]] }]
}どちらの呼び出しも再現可能です — このリポジトリをクローンし、uv sync --extra dev を実行して、tests/fixtures/ に対して自分で呼び出してみてください。
Related MCP server: Agent Helper
これは何か
フォルダ内のあらゆるファイル(PDF、Word、PowerPoint、SVG、PNG)を読み取り、構造と生のコンテンツを呼び出し元のエージェント(Claude Code、Claude Desktop、Codex)に返す個人用MCPサーバーです。それ自体は要約を行いません。
これが設計全体です:サーバーが抽出し、ホストが解釈します。このサーバーにはLLM APIキーは一切ありません。PNGはキャプションではなくbase64の画像コンテンツとして返され、ホスト自身のビジョンがそれを読み取ります。スキャンされたPDFは、要求した場合にのみOCR処理されます。
ツール
Tool | Role |
| フォルダの再帰ツリー+拡張子ごとの統計 |
| フィルタリングされたpdf/docx/pptx/svg/pngパスのみ |
| ページごとのテキスト。テキストレイヤーのないページでは |
| 段落、見出し、表(.docは非対応) |
| スライドごとのタイトル、本文、発表者ノート(.pptは非対応) |
| サイズ、タグ数、 |
| PNGをメタデータ+画像コンテンツとして返し、ホストが直接確認できるようにする |
大きなドキュメントはページ分割されます:PDFはpage_start/page_end、PPTXはslide_start/slide_endです。デフォルトの上限は30ページ/60スライドで、それを超えるとレスポンスのnext_actionsが次に要求すべき範囲を教えてくれます。
インストール
uv sync --extra devClaude Codeに登録する:
claude mcp add -s user file-analyzer -- "<uv.exe path>" --directory "<this folder>" run python src/file_analyzer_mcp/server.pyWindowsでuvがpip経由でインストールされている場合、ClaudeのPATHには含まれません — uv.exeのフルパスを使用してください(確認はpip show uv)。Claude DesktopとCodexの例はconfig/にあります:claude_code.example.md、claude_desktop_config.example.json、codex-config.example.toml。
セキュリティ
機密パスは決定的に拒否されます — モデルが読まないと判断することに依存しません。paths.pyを参照してください。
Pattern | What it protects |
| 認証情報とクラウド設定のディレクトリ |
Browser profile roots (e.g. | 保存されたログイン情報とCookie |
| 名前パターンに一致するシークレットファイル |
| 特定の認証情報ファイル名 |
すべての呼び出しは監査もされます — ツール名、引数、結果(成功またはブロック)がlogs/audit.jsonlに追記されます。audit.pyを参照してください。これらすべてに加えて50MBのファイルサイズ上限が適用されます。
このサーバーを拡張する人向けの規約はAGENTS.mdにあります。
エラー
すべての失敗はToolFailureを発生させ、コード、平易な理由、復旧方法を含みます — メッセージは人間だけでなく、呼び出し元のモデルが読んで行動できるように書かれています。
Code | Raised when |
| フォルダまたはファイルパスが存在しない |
| ツールが誤った種類のパスを受け取った |
| ファイルがpdf/docx/pptx/svg/pngではない |
| 例: |
| ファイルが50MBの上限を超えている |
| パスが上記のセキュリティ表に一致する |
|
|
|
|
スキャンPDFのOCR
read_pdf(ocr=True)にはTesseractが必要です:
winget install UB-Mannheim.TesseractOCR
uv run python scripts/setup_ocr.py # copies eng/osd, downloads kor.traineddataocr_langのデフォルトは"kor+eng"です。Tesseractのパスが間違っていますか?TESSERACT_CMDを設定してください。
テスト
uv run pytest -q # parser / path / audit unit tests
uv run python scripts/smoke_stdio.py # real stdio round-trip against the server変更が完了と見なされるには、両方がパスする必要があります — pytestはモジュールを個別にチェックし、スモークテストだけが実際のMCPプロトコルを実行してスキーマレベルの破損を検出します。
制限
Limit | Why / what to do |
| レガシーなバイナリ形式 — 先に |
Scanned PDFs return empty text by default |
|
SVGs aren't rasterized | 構造をXMLとして解析し、画像としてはレンダリングしない |
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
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to read, search, and analyze local file systems with tools for reading file contents, listing directories, searching by patterns, and analyzing folder structures for context-aware queries.
- FlicenseNot gradedqualityBmaintenanceEnables AI agents to process files locally — OCR images, extract text from PDFs and DOCX, and describe images using local vision models, all without sending data to external services.
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to inspect and convert PDF, PowerPoint, Excel, and many other file formats into clean, structured Markdown, with chunking support for long documents.Apache 2.0
- 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
Related MCP Connectors
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Securely search and manage workspace context files for AI agents and teams.
Read PDFs and images as markdown or text, with exact costs and hard spend caps. $0.75/1k pages.
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/skaosqkf0-del/MCP_test'
If you have feedback or need assistance with the MCP directory API, please join our Discord server