Mcp Server Filesystem

io.github.bytedancePublished by GitHub account bytedancev1.0.0Updated Oct 24, 2026

MCP server for filesystem access

VerifiedSTDIODesktop onlyFiles & StorageDeveloper Tools

Overview

AI-generated overview

A local MCP server that gives an AI assistant filesystem operations on the user's machine, with an optional allowed-directories restriction.

What you can do
List and inspect directories and files on the local machine, as shown by the list_directory tool example in the README (the full tool list is not published). Run as a local stdio process started through npx, or expose it over SSE or Streamable HTTP on a chosen port. Embed it in-process from a JavaScript or TypeScript MCP client instead of installing the command line. Restrict access to specific folders with the allowed-directories argument.
When to use it
Useful when an assistant needs to read or work with files on the user's own computer, for example in VS Code, Cursor, Windsurf or Claude Desktop, and you want to limit it to chosen folders.
Requirements
Node.js 18 or newer and an MCP client such as VS Code, Cursor, Windsurf or Claude Desktop. Runs locally via npx from the npm package, or can be started with a port for SSE or Streamable HTTP. No authentication, environment variables or headers are declared.
Before you install
It grants an assistant access to the local filesystem, so scope it with the allowed-directories argument rather than leaving broad access. The README does not document which operations write, change or delete files; assume file-modifying tools may exist and review before use. The remote mode is started without declared authentication, so keep it bound to localhost.

Installation

In SourceWeft

  1. Open Mcp Server Filesystem in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

FileSystem MCP Server

[NPM Downloads]

[Install MCP Server] [Install in VS Code] [Install in VS Code Insiders]

A Model Context Protocol (MCP) server that provides filesystem operations.

[Image]

Requirements

  • Node.js 18 or newer
  • VS Code, Cursor, Windsurf, Claude Desktop or any other MCP client

Getting started

Local (Stdio)

First, install the Filesystem MCP server with your client. A typical configuration looks like this:

js
{  "mcpServers": {    "filesystem": {      "command": "npx",      "args": [        "@agent-infra/mcp-server-filesystem@latest"      ]    }  }}
Install in VS Code

You can also install the Filesystem MCP server using the VS Code CLI:

bash
# For VS Codecode --add-mcp '{"name":"filesystem","command":"npx","args":["@agent-infra/mcp-server-filesystem@latest"]}'

After installation, the Filesystem MCP server will be available for use with your GitHub Copilot agent in VS Code.

Install in Cursor

Go to Cursor Settings -> MCP -> Add new MCP Server. Name to your liking, use command type with the command npx @agent-infra/mcp-server-filesystem. You can also verify config or add command like arguments via clicking Edit.

js
{  "mcpServers": {    "filesystem": {      "command": "npx",      "args": [        "@agent-infra/mcp-server-filesystem@latest",        "--allowed-directories /tmp"      ]    }  }}
Install in Windsurf

Follow Windsuff MCP documentation. Use following configuration:

js
{  "mcpServers": {    "filesystem": {      "command": "npx",      "args": [        "@agent-infra/mcp-server-filesystem@latest",        "--allowed-directories /tmp"      ]    }  }}
Install in Claude Desktop

Follow the MCP install guide, use following configuration:

js
{  "mcpServers": {    "filesystem": {      "command": "npx",      "args": [        "@agent-infra/mcp-server-filesystem@latest",        "--allowed-directories /tmp"      ]    }  }}
Remote (SSE / Streamable HTTP)

At the same time, use --port $your_port arg to start the browser mcp can be converted into SSE and Streamable HTTP Server.

bash
# normal run remote mcp servernpx @agent-infra/mcp-server-filesystem --port 8089 --allowed-directories <dir>

You can use one of the two MCP Server remote endpoint:

  • Streamable HTTP(Recommended): http://127.0.0.1::8089/mcp
  • SSE: http://127.0.0.1::8089/sse

And then in MCP client config, set the url to the SSE endpoint:

js
{  "mcpServers": {    "filesystem": {      "url": "http://127.0.0.1::8089/sse"    }  }}

url to the Streamable HTTP:

js
{  "mcpServers": {    "filesystem": {      "type": "streamable-http", // If there is MCP Client support      "url": "http://127.0.0.1::8089/mcp"    }  }}
In-memory call

If your MCP Client is developed based on JavaScript / TypeScript, you can directly use in-process calls to avoid requiring your users to install the command-line interface to use Filesystem MCP.

js
import { Client } from '@modelcontextprotocol/sdk/client/index.js';import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';
// type: module project usageimport { createServer } from '@agent-infra/mcp-server-filesystem';// commonjs project usage// const { createServer } = await import('@agent-infra/mcp-server-filesystem')
const client = new Client(  {    name: 'test filesystem client',    version: '1.0',  },  {    capabilities: {},  },);
const server = createServer();const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();
await Promise.all([  client.connect(clientTransport),  server.connect(serverTransport),]);
// list toolsconst result = await client.listTools();console.log(result);
// call toolconst toolResult = await client.callTool({  name: 'list_directory',  arguments: {    path: '~/your_computer'  },});console.log(toolResult);

Development

Access http://127.0.0.1:6274/:

bash
npm run dev

Source: packages/agent-infra/mcp-servers/filesystem/README.md at commit 2ff41a9

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts