Server profile · Evaluated September 2026

Filesystem MCP

The official reference MCP server for giving AI agents controlled read and write access to local files. Its strongest property is the allowed-directory boundary: modern releases perform real-path and symlink checks well, but everything inside an allowed root—including hidden files—can still become reachable, and write or move operations can cause real data loss.

File systemsLocal · stdioNo API keyWrite capable
Publisher
Model Context Protocol / LF Projects
Official reference implementation
Package
@modelcontextprotocol/server-filesystem
npm · Node.js
Transport
stdio
Local process
Authentication
None
OS permission ∩ allowed roots
Schema overhead
~3K–6K tokens
Estimated for 13 tools
Telemetry
None found
Open-source local implementation

Start with Decision, Access Boundary, Safety, Token Cost and Fit. Setup is intentionally later: for this server, choosing the right directory scope matters more than copying the install command.

Should you use Filesystem MCP?

Best for

Coding agents and assistants that need controlled access to one or a few project, document or content directories—especially when the client does not already expose equivalent file tools.

Think twice when

You plan to expose a home directory, secrets folder, production data tree or any broad writable path. The server's sandbox can be technically correct while the permission you chose is still far too broad.

Main advantage

Current releases perform strong real-path and symlink containment against an explicit directory allowlist, with a small 13-tool surface and no external API dependency.

Main tradeoff

Directory scoping is coarse. Dotfiles and other sensitive files inside an allowed root are still in scope, and write_file, edit_file and move_file can change real data.

The sandbox is only as narrow as the directory you expose.

/project is a sensible permission. /Users/you usually is not. The most important Filesystem MCP security decision happens before the server starts.

Best defaultContainer + one project mount + read-only first.
GoodOne project directory with only the access the task needs.
RiskierSeveral large roots with write authority and recursive search.
Bad defaultHome directory, filesystem root, secrets or production data.

Why Filesystem MCP scores 82/100

The 82/100 score is carried by the filesystem boundary rather than by feature count. For this category, a server that reads and writes files is only useful if path containment remains dependable under traversal, symlinks and recursive operations.

Modern Filesystem MCP performs that core job well. The score is held below the high-80s by write-loss risk, hidden-file exposure, scope surprises from Roots, cross-platform reliability issues and incomplete migration to MCPVerdict's current 2026-07-28 compatibility criteria.

90
Effectiveness
Directly performs the core file job.
73
Reliability
Good core operations; recent path/client/write bugs remain.
83
Safety
Strong sandbox, but broad roots and destructive writes matter.
82
Efficiency
Small schema; recursive results can still explode.
72
Compatibility
Broad stdio support; current-spec migration is incomplete.
88
Maintainability
Official reference implementation with active releases.
93
Setup friction
Very simple NPX/Docker launch.
91
Sandbox escape resistance
Realpath and symlink revalidation are the strongest finding.

Why it scores well

  • explicit allowed-directory model;
  • modern real-path and symlink containment;
  • local stdio operation with no third-party MCP host;
  • clear tool annotations for read-only, destructive and open-world behavior;
  • only 13 tools, keeping definition overhead relatively low;
  • edit_file supports dry-run diff previews;
  • Docker makes a second OS-level boundary practical.

Why it does not score higher

  • dotfiles are not excluded by default;
  • write_file overwrites existing files;
  • move_file has a recent reproduced destination-overwrite bug on an affected release;
  • MCP Roots can replace CLI-provided directories rather than merge with them;
  • recursive trees/searches can dump large, irrelevant or sensitive context;
  • Windows and schema/client compatibility issues are still present in the 2026 evidence set;
  • MCPVerdict marks MCP 2026-07-28 compatibility as incomplete.

What is Filesystem MCP?

Filesystem MCP is the official reference Model Context Protocol server for letting an MCP-compatible AI client read, search, inspect, create, edit and move files inside explicitly allowed local directories.

The canonical package is @modelcontextprotocol/server-filesystem. It runs locally as a Node.js process over stdio, requires no API key or OAuth token, and inherits the operating-system permissions of the process that launches it.

The crucial distinction is that it is not intended to grant unrestricted machine access. The server combines the process's own OS permissions with an MCP-level allowed-directory list, so its effective authority is:

Operating-system process permissions ∩ Filesystem MCP allowed roots.

AI clientClaude / Cursor / VS Code / others
MCP protocoltools/list + tools/call
Filesystem MCP13 local tools
Allowed rootsreal-path checked
Files / foldersread or mutate

What can Filesystem MCP do?

The current server documents 13 tools. Nine are read/inspection operations and four can mutate the filesystem. The capability set is intentionally narrow: it handles files and directories rather than shell execution, web browsing, Git hosting or databases.

ToolTypeWhat it doesRisk to watch
read_text_fileReadReads text content.Sensitive text can enter model context.
read_media_fileReadReads media/binary content.Base64-style payloads can become expensive.
read_multiple_filesReadReads several files in one request.Large batches increase context quickly.
list_directoryInspectLists directory contents.Can reveal hidden/sensitive names.
list_directory_with_sizesInspectLists contents and sizes.Broad roots expose more inventory than needed.
search_filesInspectRecursively searches names/patterns.Can traverse huge repositories and hidden trees.
directory_treeInspectReturns a recursive tree.High token risk on large roots.
get_file_infoInspectReturns file metadata.Low direct risk; still reveals existence/metadata.
list_allowed_directoriesInspectShows the active access boundary.Useful verification tool.
write_fileMutateCreates or overwrites a file.Destructive-capable.
edit_fileMutateApplies targeted text edits; supports dry-run.Dry-run is not enforced by default.
create_directoryMutateCreates a directory.Lower destructive risk.
move_fileMutateMoves or renames files/directories.Destructive; affected versions could overwrite destination.
Tool annotations are a real positive

Current documentation publishes readOnlyHint, idempotentHint, destructiveHint and openWorldHint. The write, edit and move tools are explicitly marked destructive-capable, giving clients a basis for confirmation UX.

How the Filesystem MCP access boundary works

This is the most important technical section of the profile. A correct sandbox with an over-broad root is still an over-broad permission.

Directories can be supplied when the server starts or, in clients that support it, supplied dynamically through MCP Roots. Filesystem operations are validated against the currently allowed roots.

Real-path and symlink containment

The current implementation does more than compare raw path strings. It resolves/canonicalizes targets and checks real paths against the allowed directories. Independent September 2026 testing of filesystem MCP implementations found the official reference server revalidating resolved entries during recursive traversal, which materially improves resistance to symlink escape.

Allowed root
  • /Users/me/project/src ✓
  • /Users/me/project/docs ✓
  • /Users/me/project/.env ✓ if it exists here
  • /Users/me/project/.git ✓ if it exists here
→
Outside the root
  • /Users/me/.ssh ✕
  • /etc ✕
  • /Users/me/other-project ✕
  • symlink target outside allowed root ✕

Roots can change the active boundary

A subtle operational behavior matters here: when a connected client supplies MCP Roots, the current design can replace the CLI-provided allowed-directory set rather than merge with it. That often narrows access, but it can make scope less predictable—directories may disappear and the operator may believe one policy is active while another is actually in effect.

Use list_allowed_directories after setup changes or client switches. For a security-sensitive server, knowing the actual active boundary matters almost as much as choosing a narrow one.

Is Filesystem MCP safe?

Filesystem MCP has strong current directory-containment mechanics, but granting an AI filesystem access remains a high-authority action. The server can be configured safely; it cannot make a poor permission choice safe.

What the server protects well

  • operations are constrained to allowed roots;
  • current path validation uses canonical/real paths rather than trusting raw strings;
  • modern recursive operations re-check entries against the allowlist;
  • current tools advertise openWorldHint: false, reflecting local filesystem scope rather than open-network access;
  • no API key, OAuth token or third-party MCP host is required.

What directory scoping does not solve

  • hidden files inside the root remain accessible;
  • an allowed project can still contain .env, .npmrc, credentials or private exports;
  • write authority can modify valid files;
  • malicious instructions inside local files can still become model input;
  • a home-directory allowlist can expose far more data than the task requires while still staying inside the sandbox.
Scan Grade C

Grade C reflects meaningful local mutation authority. It is not a claim that the server is inherently unsafe; it means the capability surface deserves deliberate scoping, version hygiene and review of destructive actions.

Historical symlink vulnerability

Older releases had a high-severity symlink/path-validation advisory. That history matters because the entire security claim depends on resolving something like /allowed/project/link → /outside/secret before approving access. Modern releases are not the same design as those vulnerable versions, and current independent testing is materially more positive.

../ is not proof of a current sandbox escape

Path schemas can accept strings containing traversal syntax, but schema permissiveness and runtime containment are different layers. The evidence set supports the more precise conclusion: schema-level defense could be stronger, while current real-path validation is considerably stronger than a raw ../ string check.

Write, edit and move safety

Filesystem MCP is not a read-only connector. Its value comes partly from modifying local work, which is also why it deserves stronger safeguards than a documentation-only MCP.

write_file

write_file creates a file or overwrites an existing file. The tool is correctly marked destructive-capable. Use it only where replacement is acceptable or version control/backups make recovery easy.

edit_file

edit_file is the strongest mutation design in the server because it supports dryRun: true and can return a diff before an edit is applied. The limitation is that dry-run is guidance rather than enforced policy—the default is not automatically safe-preview-first.

move_file

A reproduced August 2026 report against version 2026.7.10 found move_file silently overwriting an existing destination even though the documentation said it should fail. That is a real data-loss class behavior. Until the exact deployed release is verified against the fix, treat moves onto potentially occupied destinations as high risk.

OperationMain failure modeSafer default
ReadSensitive content enters model contextExpose only task-specific roots
Search / treeIrrelevant secrets + context explosionUse excludes and narrow roots
WriteExisting file replacementWrite to disposable or version-controlled paths
EditIncorrect targeted changeUse dryRun=true, review diff, then apply
MovePath breakage / destination overwriteVerify destination does not exist; test on disposable data

Hidden files are inside the boundary unless you exclude them

The server's boundary is the allowed directory, not “the files the agent probably needs.” Dotfiles and dot-directories are not automatically excluded.

If an allowed project contains .git, .env, .terraform, .npmrc, generated artifacts or local credential/config files, those files can become part of the agent's searchable/readable space.

This affects both security and efficiency. Recursive search/tree calls can surface irrelevant metadata and secrets while also consuming large amounts of context. Use narrow roots and exclusion patterns rather than assuming hidden content is filtered for you.

How much context does Filesystem MCP use?

Filesystem MCP has a relatively small fixed tool surface: 13 tools. MCPVerdict estimates the complete tool-schema footprint at roughly 3K–6K tokens per session, depending on the client, schema serialization and target tokenizer.

The bigger variable is usually the tool result, not the schema. A tiny metadata call is cheap. A recursive directory tree, multi-file read, large search result or media payload can dwarf the fixed 3K–6K definition cost.

OperationTypical context pressureWhy
get_file_infoLowSmall metadata response.
list_directoryLow–mediumDepends on folder size.
read_text_fileVariableDirectly proportional to file size.
search_filesMedium–highCan return many paths recursively.
directory_treeHighRecursive JSON can become enormous.
read_multiple_filesHighCan inject whole document/source sets.
read_media_fileVery highBinary/base64 representations can be expensive.

What 3K–6K of schema means on current model windows

Current modelDocumented context3K schema6K schema
GPT-6 Astra
OpenAI
1,050,0000.29%0.57%
GPT-5.6 Sol
OpenAI
1,050,0000.29%0.57%
GPT-5.6 Terra
OpenAI
1,050,0000.29%0.57%
GPT-5.6 Luna
OpenAI
1,050,0000.29%0.57%
Claude Fable 5
Anthropic
1,000,0000.30%0.60%
Claude Opus 5
Anthropic
1,000,0000.30%0.60%
Claude Sonnet 5
Anthropic
1,000,0000.30%0.60%
Claude Haiku 4.5
Anthropic
200,0001.50%3.00%
Gemini 3.8 Flash
Google
1,048,5760.29%0.57%
Grok 4.6
xAI
500,0000.60%1.20%
Mistral Medium 3.5
Mistral
256,0001.17%2.34%
Mistral Small 4
Mistral
256,0001.17%2.34%
Mistral Large 3
Mistral
256,0001.17%2.34%
GLM 5.3
Z.ai / Mistral API
1,000,0000.30%0.60%

Model-window sources checked Sep 27, 2026: OpenAI current model/API pages; Anthropic model and Bedrock context documentation; Google Gemini 3.8 Flash docs; xAI Grok 4.6 docs; Mistral model docs. Percentages are arithmetic reference shares, not tokenizer-specific measurements of the actual Filesystem MCP schema.

The practical rule

Do not optimize only for tool-definition count. A 6K fixed schema is modest on a 1M-token model, but one badly scoped directory_tree over node_modules, .git, build output and caches can cost more than the entire schema many times over.

What does a realistic Filesystem MCP evaluation cost?

The MCP server itself costs $0: there is no subscription and no third-party API requirement. Model usage is the variable cost.

A realistic evaluator run would test normal reads, outside-root refusal, traversal, symlink escape, recursive search, dry-run editing, actual edits, overwrites, move collisions and hidden-file exposure. The working budget used here is approximately 30K input + 8K output tokens.

Current modelInput / output price usedApprox. 30K + 8K run
GPT-6 Astra$10 / $50 / 1M$0.70
GPT-5.6 Sol$4 / $20 / 1M$0.28
GPT-5.6 Terra$2 / $12 / 1M$0.16
GPT-5.6 Luna$0.20 / $1.20 / 1M$0.02
Claude Fable 5.1$10 / $50 / 1M$0.70
Claude Opus 5.5$4 / $20 / 1M$0.28
Claude Sonnet 5$2 / $10 / 1M$0.14
Claude Haiku 4.5$1 / $5 / 1M$0.07
Gemini 3.8 Flash$0.75 / $3.75 / 1M$0.05
Grok 4.6$2 / $6 / 1M$0.11
Mistral Medium 3.5$1.50 / $7.50 / 1M$0.10
Mistral Small 4$0.15 / $0.60 / 1M$0.01
Mistral Large 3$0.50 / $1.50 / 1M$0.03

Prices were checked against current vendor pages on Sep 27, 2026 where available. They are examples for the stated token budget, not a permanent price promise; caching, long-context tiers, regional processing and promotions can change the bill.

Wall-clock test budget

  • install and configure: about 2–5 minutes;
  • 12-task safety/function gauntlet: about 20–30 minutes;
  • review: about 10 minutes;
  • total: roughly 30–45 minutes.

The hidden costs matter more

  • accidental file loss from write/move operations;
  • secret exposure when broad roots include sensitive files;
  • token explosion from recursive trees/searches;
  • operator confusion when Roots change the active allowlist;
  • duplicating native filesystem tools already provided by the AI client.

MCP 2026-07-28 compatibility is incomplete

MCPVerdict currently marks compatibility as not yet complete. The repository's current source metadata still uses @modelcontextprotocol/sdk ^1.30.0, while the Filesystem README continues to recommend MCP Roots for dynamic directory control.

That combination is the basis for the compatibility score of 72: the server is broadly usable across stdio clients, but its lifecycle and Roots model still reflects the earlier protocol generation rather than a clean current-spec migration.

Do not confuse “works in current clients” with “fully migrated to the latest protocol revision.”

Interoperability can remain good while a reference server still carries older lifecycle assumptions.

Which AI clients work with Filesystem MCP?

The canonical server is a local stdio MCP process, so any client that can launch a local stdio server can potentially use it. The important distinction is evidence strength: some clients document the local stdio path clearly, while others should be verified against their current MCP configuration before you rely on them.

ClientEvidence statusPractical note
Claude DesktopDocumented pathThe official MCP quickstart uses the canonical Filesystem package as the standard local-file example.
Claude CodeCompatibleCan launch stdio MCP servers; Roots behavior deserves attention because client-provided roots can change the active allowlist.
VS CodeCompatibleUse the client's current MCP server configuration shape and verify tools appear after reload/restart.
CursorCompatibleCursor officially supports local stdio MCP servers via mcp.json; project-scoped configuration is a natural fit for Filesystem MCP.
CodexVerify current configTreat the Filesystem server as a standard local stdio MCP and verify current client syntax before publishing a dedicated guide.
OpenCodeVerify current configLocal stdio MCP support may make it compatible; verify the current OpenCode configuration and tool behavior before relying on it.
AntigravityVerify current configTreat this as standard local MCP compatibility rather than a first-party Filesystem-specific integration claim.
LM StudioPackage ambiguityLM Studio supports MCP, but search results often surface third-party filesystem packages. Use the canonical package name explicitly.
Python is a different implementation question

“Filesystem MCP Python” is not a mode of the official reference server. The canonical implementation evaluated here is Node.js. Python results refer to alternative implementations or servers built with a Python MCP SDK; they are not this canonical Node.js package.

How to install Filesystem MCP

The install is simple. The permission choice is not. Start with one disposable or version-controlled project directory; verify the active boundary; only then widen access if the workflow actually needs it.

NPX / standard stdio configuration

For JSON-based clients that use the common mcpServers shape, the canonical package can be launched with one or more allowed-directory arguments:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-filesystem",
        "/absolute/path/to/project"
      ]
    }
  }
}

The final path is not decorative configuration—it is the security boundary. Prefer an absolute project path over a home directory.

Cursor project configuration

Cursor supports project-level .cursor/mcp.json. That is a strong match for Filesystem MCP because the configuration can live beside the project whose files you intend to expose.

Docker for stronger isolation

Docker can create a second independent boundary: the container can only see mounted paths, and Filesystem MCP then applies its own allowlist inside that view. For read-only evaluation, mount the project read-only first.

docker run -i --rm   -v /absolute/path/to/project:/workspace:ro   mcp/filesystem   /workspace

After confirming reads, use a separate disposable writable directory for edit/move tests rather than turning the whole project writable immediately.

Cheapest sensible test

Create one disposable project directory, expose only that directory, run the MCP with a read-only container mount first, deliberately test traversal and symlink escape, then enable a writable disposable subdirectory and test edits/moves separately.

Why Filesystem MCP is not working

The 2026 issue history shows that not every Filesystem MCP failure is user configuration. Start with the simplest boundary/runtime checks before blaming the client or server.

SymptomLikely causeWhat to check
Server never startsNode/NPX unavailable or GUI PATH mismatchRun node --version and npx --version in the same environment; use an absolute executable path if needed.
Allowed folder disappearsClient-provided Roots replaced CLI directoriesCall list_allowed_directories and inspect the active root set.
“Outside allowed directories”Path is not under active root or resolves outside via symlinkCheck canonical path and the active allowlist rather than only the text path.
Reads work; writes hang/failVersion/client compatibility issuePin/check current package version and review recent write/schema issues.
Tool appears connected but calls failSchema/client incompatibilityVerify a real tool call; do not treat a green connection indicator as proof.
Windows spawn errorSpaces/path handling in GUI launcherUse a command wrapper or absolute executable path; inspect client logs.
Unexpected file created on POSIXWindows-style path interpreted literallyUse native absolute paths for the host OS and test on disposable data.
Context blows upRecursive tree/search over broad rootNarrow root; use exclude patterns; target search before reading files.

Restart and verify

Many local MCP clients load server definitions at startup or on explicit reload. After changing the config, restart/reload the MCP host and confirm both the tool list and list_allowed_directories rather than assuming the edited file was picked up.

What is Filesystem MCP actually useful for?

Filesystem MCP is most useful when an agent needs repeatable directory access rather than a one-off file upload. The value comes from persistent, scoped access; the risk comes from the same persistence when the root is too broad.

Read a project or document tree

Let an agent inspect source files, configs, docs and assets inside one controlled root.

Search without shell access

Find files and paths recursively without granting a full terminal or arbitrary command execution.

Edit project files

Create/update source, configuration, documentation and templates; use dry-run previews for targeted edits.

Access an extra workspace

Useful when a coding agent already has its repo workspace but needs a separate notes, docs or content directory.

Do you actually need Filesystem MCP?

Use it when it adds a controlled filesystem capability your client does not already provide, or when you need a standardized MCP interface to a directory outside the client's native workspace.

It can be redundant in coding agents that already have strong native read/search/patch/create tools scoped to the current project. In that case the adoption question is not “Can Filesystem MCP edit files?” but “Does it add useful scope or portability without duplicating tools, increasing context and creating another permission surface?”

SituationFilesystem MCP fitReason
General AI client has no local file toolsStrongAdds the missing capability directly.
Coding agent needs a second docs/content directoryStrongUseful controlled access outside native workspace.
Coding agent already has equivalent workspace toolsConditionalMay duplicate native functionality and tool schemas.
Need terminal executionPoorThis is not a shell or code-execution MCP.
Need cloud-drive collaborationPoorUse the provider's cloud/storage integration instead.
Need broad unattended write access to production dataPoorPermission surface and recovery risk are too high for the default setup.

For remote repository operations rather than local directory access, compare GitHub MCP.

MCPVerdict assessment

Filesystem MCP is a simple server with an unusually important security boundary. Unlike cloud MCPs, it needs no token and does not send filesystem requests to a third-party MCP host. Modern releases also appear to handle real-path and symlink containment well, including recursive operations—the single most important technical requirement for an allowed-directory sandbox.

The danger is mostly configuration and mutation authority rather than product complexity. Once a directory is allowed, hidden files and sensitive project artifacts are generally fair game, while write/edit/move tools can change real local data. The safest default is one project directory, preferably container-mounted, read-only until write capability is actually needed.

Its remaining strategic weakness is protocol age: the current implementation still leans on the earlier Roots/SDK v1 model, and the 2026 evidence set contains enough client, path and destructive-write bugs to justify Moderate rather than High verdict confidence.

Recommended when the root is narrow. The same server becomes a bad default when the root is broad.

Filesystem MCP technical details

Show the full technical profile
AttributeEvaluated value
Canonicalgithub.com/modelcontextprotocol/servers/tree/main/src/filesystem
PublisherModel Context Protocol / Linux Foundation project
npm package@modelcontextprotocol/server-filesystem
Evaluated distribution version2026.8.31
LicenseMIT
RuntimeNode.js
Transportstdio
Hosted reference endpointNo
AuthenticationNone
Effective authorityOS process permissions ∩ MCP allowed roots
Declared tools13
Read/inspection tools9
Write/mutation tools4
Open network requirementNo for filesystem operations
Tool openWorldHintfalse
Dynamic directory controlMCP Roots
Hidden files excluded by defaultNo
Dry-run editYes
TelemetryNone found
Estimated schema overhead~3K–6K tokens/session
Scan gradeC
Overall score82/100
ConfidenceModerate
MCP 2026-07-28Evaluator: incomplete / not yet

Derived decision parameters

ParameterScoreWhy it matters
Sandbox escape resistance91Current realpath/symlink containment is strong; historical CVE prevents a perfect score.
Scope predictability73Roots can dynamically replace startup directories.
Write-loss containment69Dry-run editing helps; overwrite-capable tools and move bug reduce confidence.
Sensitive-file minimization62Directory scoping does not exclude dotfiles or secret types.
Search/context efficiency71Excludes help, but broad recursive results can become expensive.
Edit precision86Targeted edits plus diff/dry-run are strong.
Platform path correctness68Recent Windows/POSIX path issues remain in the evidence set.
Native filesystem differentiation72Very useful where native file tools are absent; redundant for some coding agents.

Recent Filesystem MCP evidence

The verdict uses current package data, recent security research and issue evidence rather than treating the README as the complete truth. Positive findings and negative reports are separated so one bug does not erase the underlying architecture—and one good security audit does not erase real operational failures.

Evidence confidence: strong corpus; overall verdict confidence Moderate because the current 2026.8.31 package was not independently run through the full live gauntlet in this profile.

Show the evidence set
  1. Current package: npm publishes 2026.8.31 as the current distribution.
  2. Sandbox design: current implementation performs canonical/real-path checks against allowed directories.
  3. Independent Sep 2026 survey: official reference implementation was reported as defended by design against recursive symlink escape.
  4. Historical advisory: older symlink/path-validation releases had a high-severity vulnerability and were patched.
  5. Roots behavior: client Roots can replace CLI-provided directories, creating scope surprises.
  6. Hidden files: dot directories are not automatically excluded, increasing secret and context risk.
  7. Write annotations: write, edit and move operations are declared destructive-capable.
  8. move_file Aug 2026: version 2026.7.10 could silently overwrite an existing destination.
  9. Write reliability: 2026 reports documented write hangs in some NPX/client combinations.
  10. Schema compatibility: strict clients have hit parameter/output-schema incompatibilities in affected releases.
  11. Windows startup: GUI launch paths with spaces have caused spawn/startup failures.
  12. Cross-platform path handling: a Windows-style path could be interpreted as a literal filename on POSIX in a reported edge case.
  13. Release lag: repository fixes have at times taken time to reach the published latest package.
  14. Current direct vulnerabilities: the review found no current direct known vulnerability listing for 2026.8.31 at review time.
  15. Open source / telemetry: no telemetry or analytics endpoint was found in the local implementation.

Filesystem MCP questions

What is an MCP filesystem?

In this context, it means an MCP server that exposes filesystem operations as tools an AI client can call. The official reference Filesystem MCP limits those operations to explicitly allowed local directories.

Does Filesystem MCP give an AI access to my whole computer?

No—not by design. It operates inside allowed roots and the OS permissions of the process. But if you configure your whole home directory or disk root as allowed, you have effectively made the permitted scope very broad.

Is Filesystem MCP a JSON file?

No. MCP is the protocol and Filesystem MCP is a server implementation. JSON files are commonly used by MCP clients to configure the command, arguments and paths used to launch local servers.

Is Filesystem MCP free?

Yes. The server itself requires no paid API or subscription. Your AI model usage still consumes tokens, and the practical hidden costs are context, operational mistakes and review time.

Can Filesystem MCP edit files?

Yes. edit_file supports targeted edits and a dry-run diff mode. write_file can overwrite files, and move_file is destructive-capable.

Does Filesystem MCP exclude .env or .git automatically?

No. Hidden files and directories inside an allowed root are not automatically outside scope. Keep sensitive files outside the allowed root or explicitly exclude irrelevant paths where the tool supports it.

Is the official Filesystem MCP written in Python?

No. The canonical server evaluated on this page is the Node.js package @modelcontextprotocol/server-filesystem. Python filesystem MCPs are separate implementations and should not be conflated with the official reference server.

Why does Filesystem MCP stop seeing a directory I added at launch?

If the connected client supplies MCP Roots, those client roots can replace the CLI-provided directory list. Check list_allowed_directories to see the active boundary.

Is a local Filesystem MCP private?

The MCP process itself operates locally and does not require a third-party MCP host. File contents returned by tools can still be sent into the AI model's context, so privacy also depends on the client/model path you use.

Evaluating this for a team?

Check the choice against your workflow, clients, permissions, deployment, and alternatives.

Team evaluation
Cookie policy · Disclaimer