mcp-filesystem-extended
Enables bounded local filesystem inspection, comparison, and mutation with search and resume capabilities.
README
Filesystem MCP Server
TypeScript implementation of a local filesystem MCP server with bounded inspection, comparison, and mutation surfaces.
This root README is the DX-first entrypoint. It keeps only shared orientation and routes detailed tool guidance to endpoint-local README.md files.
Read this next
| Need | Start here |
|---|---|
| Shared conventions and cross-endpoint rules | CONVENTIONS.md |
| Shared architecture and ownership boundaries | DESCRIPTION.md |
| Tool-specific quick guidance | Endpoint-local README.md links below |
Architecture at a glance
| Layer | Responsibility |
|---|---|
application |
MCP bootstrap, tool-catalog composition, stable server framing, and server-scope exposure |
domain |
Tool-specific handlers, schemas, results, and runtime semantics |
infrastructure |
Path guarding, logging, persistence, and shared technical helpers |
Shared developer rules
- All path-based operations stay inside configured allowed directories.
- Broad-root discovery and recursive inspection default-exclude vendor, cache, and generated trees unless callers explicitly target them or reopen named descendants.
- Resume-capable inspection families stay same-endpoint and continue through
resumeTokenplus the appropriateresumeMode. - Primary result data stays complete in
content.text;structuredContentadds machine-readable envelope metadata and mirrored structured payloads. - Public read surfaces remain intentionally split:
read_files_with_line_numbersfor bounded inline batch reads,read_file_contentfor advanced single-file modes.
External dependency for content search
The regex, fixed-string, and native pattern-aware count lanes depend on the native ugrep executable.
This dependency is now resolved during MCP server startup preflight, not lazily during request execution. The server expects one of these runtime conditions:
UGREP_EXECUTABLE_PATHpoints to the native shell-freeugrepbinary, or- the MCP server process
PATHalready contains the directory that holds the nativeugrepexecutable.
A successful ugrep --version check in an interactive shell is helpful, but it is not sufficient by itself. The decisive environment is the Node.js process that runs the MCP server.
Common installation examples:
- Debian/Ubuntu:
apt-get install ugrep - Fedora/RHEL/CentOS:
dnf install ugrep - Arch:
pacman -S ugrep - macOS:
brew install ugrep - Windows:
winget install Genivia.ugreporchoco install ugrep
After installation, verify with ugrep --version and then restart the MCP client or IDE process that launches the server so the server runtime can inherit the updated environment.
Windows permanent fix when ugrep --version is not available
If ugrep is installed on Windows but ugrep --version still cannot be executed, you MUST apply the permanent Chocolatey fix below.
This usually means ChocolateyInstall is set incorrectly and Chocolatey created the package under the wrong root.
Run:
[Environment]::SetEnvironmentVariable('ChocolateyInstall','C:\ProgramData\chocolatey','Machine')
$env:ChocolateyInstall = 'C:\ProgramData\chocolatey'
$env:Path = "C:\ProgramData\chocolatey\bin;$env:Path"
choco install ugrep --force -y
Then open a new PowerShell window and verify again:
ugrep --version
If the MCP server still cannot start native search afterward, configure UGREP_EXECUTABLE_PATH with the absolute path to ugrep.exe for the process that launches the MCP server.
Endpoint README TOC
Application/server scope
Inspection — discovery
Inspection — metadata and integrity
Inspection — search family and count
inspection/searchfamily READMEsearch_file_contents_by_regexsearch_file_contents_by_fixed_stringcount_lines
Inspection — read
Comparison
Mutation — content
Mutation — path
Documentation boundary
Root documentation stays shared and non-redundant:
README.md= DX-first entrypointDESCRIPTION.md= architecture indexCONVENTIONS.md= shared conventions and leaf-slice routing- endpoint-local
README.mdfiles = detailed developer-facing guidance per public endpoint
This root file is intentionally a navigation surface, not a second endpoint-by-endpoint manual.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.