Large File MCP Server
The Large File MCP Server enables intelligent handling, navigation, and analysis of large files without loading them fully into memory:
Read file chunks (
read_large_file_chunk): Access specific parts of large files using intelligent chunking with auto-detected optimal chunk sizes, with optional line numbers.Search within files (
search_in_large_file): Search for text or regex patterns with configurable case sensitivity, context lines around matches, result limits, and optional line range scoping.Navigate to a specific line (
navigate_to_line): Jump directly to any line number and view it with surrounding context.Analyze file structure (
get_file_structure): Get comprehensive metadata including line statistics, recommended chunk size, and sample content from the start and end of a file.Get a file summary (
get_file_summary): Retrieve statistical summaries including line counts, character statistics, and word counts.Stream large files (
stream_large_file): Efficiently stream very large files in configurable byte-based chunks from a specified offset.Optimized performance: Built-in LRU caching speeds up repeated access, and flexible environment variable configuration controls chunking, caching, and maximum file size handling.
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., "@Large File MCP Serverfind all ERROR lines in /var/log/app.log with 5 lines of context"
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.
Large File MCP Server
MCP server for intelligent handling of large files ā smart chunking, search, navigation, and streaming.
š Live Demo / Landing Page ā install with
npx @willianpinho/large-file-mcpš Full Documentation | API Reference | Examples
Features
Smart Chunking - Automatically determines optimal chunk size based on file type
Intelligent Navigation - Jump to specific lines with surrounding context
Powerful Search - Regex support with context lines before/after matches
File Analysis - Comprehensive metadata and statistical analysis
Memory Efficient - Stream files of any size without loading into memory
Performance Optimized - Built-in LRU caching for frequently accessed chunks
Type Safe - Written in TypeScript with strict typing
Cross-Platform - Works on Windows, macOS, and Linux
Related MCP server: Excel Analyser MCP
Installation
npm install -g @willianpinho/large-file-mcpOr use directly with npx:
npx @willianpinho/large-file-mcpQuick Start
Claude Code CLI
Add the MCP server using the CLI:
# Add for current project only (local scope)
claude mcp add --transport stdio --scope local large-file-mcp -- npx -y @willianpinho/large-file-mcp
# Add globally for all projects (user scope)
claude mcp add --transport stdio --scope user large-file-mcp -- npx -y @willianpinho/large-file-mcpVerify installation:
claude mcp list
claude mcp get large-file-mcpRemove if needed:
# Remove from local scope
claude mcp remove large-file-mcp -s local
# Remove from user scope
claude mcp remove large-file-mcp -s userMCP Scopes:
local- Available only in the current project directoryuser- Available globally for all projectsproject- Defined in.mcp.jsonfor team sharing
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"large-file": {
"command": "npx",
"args": ["-y", "@willianpinho/large-file-mcp"]
}
}
}Config file locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Restart Claude Desktop after editing.
Other AI Platforms
Gemini:
{
"tools": [
{
"name": "large-file-mcp",
"command": "npx @willianpinho/large-file-mcp",
"protocol": "mcp"
}
]
}Usage
Once configured, you can use natural language to interact with large files:
Read the first chunk of /var/log/system.logFind all ERROR messages in /var/log/app.logShow me line 1234 of /code/app.ts with contextGet the structure of /data/sales.csvAvailable Tools
read_large_file_chunk
Read a specific chunk of a large file with intelligent chunking.
Parameters:
filePath(required): Absolute path to the filechunkIndex(optional): Zero-based chunk index (default: 0)linesPerChunk(optional): Lines per chunk (auto-detected if not provided)includeLineNumbers(optional): Include line numbers (default: false)
Example:
{
"filePath": "/var/log/system.log",
"chunkIndex": 0,
"includeLineNumbers": true
}search_in_large_file
Search for patterns in large files with context.
Parameters:
filePath(required): Absolute path to the filepattern(required): Search patterncaseSensitive(optional): Case sensitive search (default: false)regex(optional): Use regex pattern (default: false)maxResults(optional): Maximum results (default: 100)contextBefore(optional): Context lines before match (default: 2)contextAfter(optional): Context lines after match (default: 2)
Example:
{
"filePath": "/var/log/error.log",
"pattern": "ERROR.*database",
"regex": true,
"maxResults": 50
}get_file_structure
Analyze file structure and get comprehensive metadata.
Parameters:
filePath(required): Absolute path to the file
Returns: File metadata, line statistics, recommended chunk size, and sample lines.
navigate_to_line
Jump to a specific line with surrounding context.
Parameters:
filePath(required): Absolute path to the filelineNumber(required): Line number to navigate to (1-indexed)contextLines(optional): Context lines before/after (default: 5)
get_file_summary
Get comprehensive statistical summary of a file.
Parameters:
filePath(required): Absolute path to the file
Returns: File metadata, line statistics, character statistics, and word count.
stream_large_file
Stream a file in chunks for processing very large files.
Parameters:
filePath(required): Absolute path to the filechunkSize(optional): Chunk size in bytes (default: 64KB)startOffset(optional): Starting byte offset (default: 0)maxChunks(optional): Maximum chunks to return (default: 10)
Supported File Types
The server intelligently detects and optimizes for:
Text files (.txt) - 500 lines/chunk
Log files (.log) - 500 lines/chunk
Code files (.ts, .js, .py, .java, .cpp, .go, .rs, etc.) - 300 lines/chunk
CSV files (.csv) - 1000 lines/chunk
JSON files (.json) - 100 lines/chunk
XML files (.xml) - 200 lines/chunk
Markdown files (.md) - 500 lines/chunk
Configuration files (.yml, .yaml, .sh, .bash) - 300 lines/chunk
Configuration
Customize behavior using environment variables:
Variable | Description | Default |
| Default lines per chunk | 500 |
| Overlap between chunks | 10 |
| Maximum file size in bytes | 10GB |
| Cache size in bytes | 100MB |
| Cache TTL in milliseconds | 5 minutes |
| Enable/disable caching | true |
Example with custom settings (Claude Desktop):
{
"mcpServers": {
"large-file": {
"command": "npx",
"args": ["-y", "@willianpinho/large-file-mcp"],
"env": {
"CHUNK_SIZE": "1000",
"CACHE_ENABLED": "true"
}
}
}
}Example with custom settings (Claude Code CLI):
claude mcp add --transport stdio --scope user large-file-mcp \
--env CHUNK_SIZE=1000 \
--env CACHE_ENABLED=true \
-- npx -y @willianpinho/large-file-mcpExamples
Analyzing Log Files
Analyze /var/log/nginx/access.log and find all 404 errorsThe AI will use the search tool to find patterns and provide context around each match.
Code Navigation
Find all function definitions in /project/src/main.pyUses regex search to locate function definitions with surrounding code context.
CSV Data Exploration
Show me the structure of /data/sales.csvReturns metadata, line count, sample rows, and recommended chunk size.
Large File Processing
Stream the first 100MB of /data/huge_dataset.jsonUses streaming mode to handle very large files efficiently.
Performance
Caching
LRU Cache with configurable size (default 100MB)
TTL-based expiration (default 5 minutes)
Speeds up repeated access to the same file chunk or structure lookup
Cache hit-rate depends entirely on your access pattern (how often you re-request
the same chunk), so there's no single universal number ā run pnpm run benchmark
to measure it against a documented, repeatable "hot chunk" workload. On that
workload it currently measures 95% (95/100 accesses hit the cache).
Memory Management
Streaming architecture - files are read line-by-line, never fully loaded
Configurable chunk sizes - adjust based on your use case
Smart buffering - minimal memory footprint for search operations
Read Latency (measured)
Uncached readChunk() latency from scripts/benchmark.mjs, generated fixtures,
Apple M1 Pro laptop ā re-run the script on your own hardware for your own numbers:
File Size | Observed Latency | Method |
~500KB | ~6-8ms | Direct read |
~5MB | ~17-24ms | Streaming |
~50MB | ~120-200ms | Streaming |
Larger tiers (100MB-1GB, >1GB) aren't benchmarked here ā the streaming
architecture (line-by-line readline, never loading the full file) means time
scales roughly linearly with size, and streamFile() switches to an
AsyncGenerator so memory stays flat regardless of file size.
Development
Building from Source
git clone https://github.com/willianpinho/large-file-mcp.git
cd large-file-mcp
pnpm install
pnpm buildDevelopment Mode
pnpm dev # Watch mode
pnpm lint # Run linter
pnpm start # Run serverProject Structure
src/
āāā index.ts # Entry point
āāā server.ts # MCP server implementation
āāā fileHandler.ts # Thin barrel ā delegates to src/file-handler/*
āāā file-handler/ # Chunking, search, navigation, streaming (split by concern)
āāā cacheManager.ts # Caching implementation
āāā types.ts # TypeScript type definitionsTroubleshooting
File not accessible
Ensure the file path is absolute and the file has read permissions:
chmod +r /path/to/fileOut of memory
Reduce
CHUNK_SIZEenvironment variableDisable cache with
CACHE_ENABLED=falseUse
stream_large_filefor very large files
Slow search performance
Reduce
maxResultsparameterUse
startLineandendLineto limit search rangeEnsure caching is enabled
Claude Code CLI: MCP server not found
Check if the server is installed:
claude mcp listIf not listed, reinstall:
claude mcp add --transport stdio --scope user large-file-mcp -- npx -y @willianpinho/large-file-mcpCheck server health:
claude mcp get large-file-mcpDesigned For
Log Analysis: Processing multi-GB log files with search and navigation
Data Processing: Reading large CSV/JSON files in manageable chunks
Code Review: Navigating large codebases efficiently
System Monitoring: Analyzing system logs and debug outputs
Document Analysis: Processing large text documents
Compatible with Claude Code, Cursor, and Gemini CLI. Available on npm and the Glama.ai registry, and listed in community awesome-MCP directories.
Contributing
Contributions are welcome! Please feel free to submit issues or pull requests.
Development Workflow
Fork the repository
Create a feature branch
Make your changes
Ensure code builds and lints successfully
Submit a pull request
See CONTRIBUTING.md for detailed guidelines.
License
MIT
Support
Issues: GitHub Issues
Documentation: This README and inline code documentation
Examples: Check the
examples/directory
Acknowledgments
Built with the Model Context Protocol SDK.
Made for the AI developer community.
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
- AlicenseAqualityDmaintenanceProvides LLM-optimized filesystem access with intelligent file pagination for large files, lightning-fast ripgrep-powered code search with regex support, and security sandboxing to safely explore and search codebases.Last updated7231MIT
- Alicense-qualityDmaintenanceEnables efficient reading, analyzing, and querying of Excel, CSV, and JSON files with support for chunked processing, column/field filtering, and streaming for large datasets. Supports multiple transport protocols (stdio, HTTP, SSE) for flexible integration.Last updated204ISC
- AlicenseAqualityCmaintenanceEnables LLMs to efficiently navigate and analyze large diff files by providing pattern-based chunk navigation, allowing direct access to relevant changes without loading entire diffs into context.Last updated58MIT
- AlicenseAqualityCmaintenanceNavigate, search, and edit large codebases, logs, and data files that exceed AI context limits.Last updated810MIT
Related MCP Connectors
Enterprise code intelligence for M&A, security audits, and tech debt. Hosted server with 200k free.
File uploads for AI agents. Upload, list, and manage files. No signup required.
Upload, organize, search, and transform images, videos, and files with AI-powered tools.
Appeared in Searches
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/willianpinho/large-file-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server