shuck-file
shuck-file
어떤 파일이든 Markdown으로 — 필요한 것만 읽으세요.
shuck-file은 AI 에이전트와 LLM을 위해 문서를 깔끔한 Markdown으로 변환합니다. 작은 파일은 직접 출력하고, 큰 파일은 섹션 요약, 토큰 수, 실행 가능한 다음 단계가 포함된 문서 맵을 반환합니다 — 에이전트는 필요한 부분만 가져오면 됩니다.
왜 shuck-file인가?
AI 에이전트에게는 컨텍스트를 인식하는 브리지가 필요합니다:
작은 파일 →
shuck report.docx→ stdout에 전체 Markdown 출력큰 파일 →
shuck report.docx→ 섹션 및 추출 옵션이 포함된 문서 맵 반환타겟 추출 →
shuck report.docx --sections s1,s3→ 필요한 부분만 추출검색 →
shuck report.docx --grep "revenue"→ 전체를 읽지 않고 찾기
Related MCP server: mcp-document-converter
지원 형식
형식 | 확장자 | 라이브러리 | 보존되는 내용 |
Word |
| python-docx | 제목, 굵게/기울임, 목록, 표 |
| pdfplumber | 텍스트 내용, 페이지 나눔 | |
Excel |
| openpyxl | 모든 시트를 Markdown 표로 |
PowerPoint |
| python-pptx | 제목, 텍스트, 표, 발표자 노트 |
CSV |
| stdlib | 모든 행/열을 표로 |
설치
pip 사용 (권장)
pip install shuck-file이렇게 하면 shuck CLI 명령어와 MCP 서버가 설치됩니다.
소스에서 설치
git clone https://github.com/Shan-Zhu/shuck-file.git
cd shuck-file
pip install -e .빠른 시작
# Convert a document
shuck report.docx
# Force full output (bypass map mode)
shuck large-report.pdf --all
# Search within a document
shuck report.pdf --grep "revenue"사용법
자동 라우팅 (기본값)
작은 파일은 직접 출력되고, 큰 파일은 문서 맵을 반환합니다.
# Small file → direct Markdown output
shuck document.pdf
# Large file → document map with sections table + next steps
shuck large-report.pdf추출 옵션
# Force full output (bypass map mode)
shuck report.pdf --all
# Extract specific sections
shuck report.pdf --sections s1,s3
# Tables only
shuck report.pdf --tables-only
# Search within document
shuck report.pdf --grep "revenue"
# Token budget (smart compression)
shuck report.pdf --budget 4000
# Combinations work
shuck report.pdf --sections s2,s3 --budget 2000Excel/CSV 전용
# Column headers and types
shuck data.xlsx --schema-only
# Headers + first N rows
shuck data.xlsx --sample 5고급 사용자용 하위 명령어
# Force map mode (even on small files)
shuck probe document.docx
# Force full extraction (alias for --all)
shuck pull document.docx출력 제어
# Write to file
shuck document.pdf -o output.md
# Write to directory (auto-named)
shuck document.pdf -d ./converted/
# Skip YAML frontmatter
shuck document.pdf --no-frontmatter
# List supported formats
shuck --formats맵 모드 출력
파일이 큰 경우 shuck은 문서 맵을 반환합니다:
# Document Map: quarterly-report.pdf
**6 pages | ~12,400 tokens | 6 sections**
## Sections
| # | Title | Type | Tokens | Density |
|---|-------|------|--------|---------|
| s1 | Executive Summary | narrative | 450 | high |
| s2 | Q3 Financial Results | mixed | 2,800 | high |
| s3 | Revenue Breakdown | tabular | 3,200 | high |
| ...
## Next Steps
- `shuck quarterly-report.pdf --all` -- full document (~12,400 tokens)
- `shuck quarterly-report.pdf --sections s1,s2` -- high-density (~3,250 tokens)
- `shuck quarterly-report.pdf --grep "..."` -- search for keywordsMCP 서버
shuck-file에는 MCP(Model Context Protocol) 서버가 포함되어 있어 MCP 호환 AI 도구에서 사용할 수 있습니다.
Claude Code
claude mcp add shuck-file -- shuck-file또는 프로젝트의 .mcp.json에 추가:
{
"mcpServers": {
"shuck-file": {
"command": "shuck-file",
"args": []
}
}
}Cursor
~/.cursor/mcp.json에 추가:
{
"mcpServers": {
"shuck-file": {
"command": "shuck-file",
"args": []
}
}
}Windsurf
MCP 구성에 추가:
{
"mcpServers": {
"shuck-file": {
"command": "shuck-file",
"args": []
}
}
}모든 MCP 클라이언트
shuck-file은 mcp.servers 엔트리 포인트를 통해 MCP 서버로 등록됩니다. 노출되는 도구:
shuck— 모든 옵션(모드, 섹션, grep, 예산 등)으로 문서를 Markdown으로 변환list_formats— 지원되는 문서 형식 목록 표시
Claude Code 플러그인
/shuck 스킬용 Claude Code 플러그인으로 설치:
claude plugin add /path/to/shuck-file아키텍처
src/shuck_file/
├── cli.py # CLI entrypoint
├── server.py # MCP Server (FastMCP)
├── core/
│ ├── router.py # Auto-routing logic
│ ├── segmenter.py # Document segmentation
│ ├── mapper.py # Map mode renderer
│ ├── budget.py # Smart compression
│ ├── grep.py # In-document search
│ ├── frontmatter.py # YAML frontmatter
│ └── models.py # Data models
├── extractors/
│ ├── base.py # Base extractor ABC
│ ├── docx_ext.py # Word extractor
│ ├── pdf_ext.py # PDF extractor
│ ├── xlsx_ext.py # Excel extractor
│ ├── pptx_ext.py # PowerPoint extractor
│ └── csv_ext.py # CSV extractor
plugin/ # Claude Code plugin wrapper
tests/
├── test_extractors.py
├── test_router.py
├── test_segmenter.py
├── test_budget.py
└── test_grep.py라이선스
MIT
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
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to search, deep-read, and build knowledge bases from Markdown, PDF, DOCX, and PPTX documents via MCP tools for retrieval, document navigation, and ingestion.70616MIT
- AlicenseNot gradedqualityCmaintenanceConverts documents between multiple formats (Markdown, HTML, DOCX, PDF, Text) enabling AI agents to easily transform documents.12MIT
- AlicenseNot gradedqualityCmaintenanceProvides AI agents with comprehensive document parsing capabilities including PDF text extraction, OCR, HTML-to-markdown conversion, table extraction, and summarization, optimized for agent workflows.101MIT
- FlicenseAqualityCmaintenanceConverts files (PDF, DOCX, PPTX, XLSX, images via OCR) and URLs to Markdown, enabling AI clients to read them via a single MCP tool.1
Related MCP Connectors
OCR, transcription, file extraction, and image generation for AI agents via MCP.
Web scraping for AI agents. Converts URLs to clean, LLM-ready Markdown with anti-bot bypass.
Persistent docs and memory for AI agents — read, write, organize & search a shared workspace.
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/Shan-Zhu/shuck-file'
If you have feedback or need assistance with the MCP directory API, please join our Discord server