Skip to main content

File Server MCP

An MCP server with 14 tools for managing UTF-8 text files within a configured workspace. No API key or external service is required.

Install a published release

Requires uv. The distribution is mcp-files-context; the command is mcp-files:

uvx --python 3.13 --from mcp-files-context==0.2.0 mcp-files --workspace ./workspace

Published versions are listed on PyPI. If the version is not available yet, use the GitHub command below. Publishing is managed through GitHub Actions.

Run from GitHub without cloning

Requires uv and Git. uv downloads the selected package and manages Python 3.13 and its dependencies:

uvx --python 3.13 --from "git+https://github.com/jayanth-mkv/agent-mcp-registry.git@main#subdirectory=mcp-files" mcp-files --workspace ./workspace

Only this MCP and its runtime dependencies are installed. uv fetches the repository internally; you do not need a local checkout. To pin the source, replace main with a release tag or full commit SHA.

Install from source

From this directory, with Python 3.13+ and uv:

uv sync --locked --no-dev
uv run --locked --no-dev mcp-files --workspace ./workspace

The default transport is stdio. Configure your MCP client using the repository example.

For Streamable HTTP:

uv run --locked --no-dev mcp-files --transport http --host 127.0.0.1 --port 8000 --workspace ./workspace

Endpoint: http://127.0.0.1:8000/mcp. Legacy SSE is available with --transport sse at /sse.

Tools

Tool Arguments Behavior
create_file path, content="" Create a new file; fail if it exists.
read_file path Read UTF-8 text.
write_file path, content Create or overwrite a text file.
append_file path, content Append text; create the file if missing.
delete_path path Delete a file or recursively delete a directory.
rename_path src, dst Rename a file or directory.
copy_path src, dst Copy a file or directory; merge existing directories.
move_path src, dst Move a file or directory.
list_files None List workspace files recursively.
list_dirs None List workspace directories recursively.
search_file path, term Return matching lines with line numbers.
file_info path Return JSON metadata.
workspace_stats None Return JSON counts, sizes, and extensions.
path_exists path Return file, dir, or none.

Paths resolve inside the configured workspace. Parent directories are created when writing files. Relative workspace paths resolve from the process working directory; prefer an absolute workspace path in client configuration.

Configuration

Setting Environment variable Default
Workspace MCP_WORKSPACE_DIR ./workspace
HTTP/SSE host MCP_SERVER_HOST 127.0.0.1
HTTP/SSE port MCP_SERVER_PORT 8000

CLI flags override environment settings. --workspace is applied before the server starts. Startup diagnostics use stderr so stdout remains available for MCP messages.

Boundaries

Use a dedicated workspace: callers have read and write access, including recursive deletion. The workspace root itself cannot be deleted, renamed, or moved. Symbolic links and Windows junctions are unsupported and rejected, including links inside copied directory trees. These checks do not provide isolation against concurrent filesystem changes by other processes.

The server has no authentication or size quotas. Keep HTTP/SSE on loopback. Text tools read complete files into memory and are intended for small local text files.

Development

uv sync --locked
uv run --locked pytest -q
uv build

The CLI is now mcp-files; the former nested mcp-server workspace has been consolidated into this package. AI clients are in experimental/.

Version 0.2.0. Licensed under the MIT License.

Metadata

Release files for mcp-files-context 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-files-context 0.2.0
File Size Uploaded Provenance Actions
mcp_files_context-0.2.0.tar.gz 7.3 kB With provenance Details for mcp_files_context-0.2.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for mcp-files-context 0.2.0
File Interpreter ABI Platform Actions
mcp_files_context-0.2.0-py3-none-any.whl Python 3 none any Details for mcp_files_context-0.2.0-py3-none-any.whl

Total release size: 16.8 kB

Release files / mcp_files_context-0.2.0.tar.gz

Download URL mcp_files_context-0.2.0.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
da138565280c0d190fcb16cadab020c6e85b0801d0bb325a89f3a68b8f99b4a8
BLAKE2b-256 checksum
How to use checksums
4e0c54ef6450c3cc093d368a94a73f8c88619ed06c671bdd8e4bdc9b510b3d6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Release files / mcp_files_context-0.2.0-py3-none-any.whl

Download URL mcp_files_context-0.2.0-py3-none-any.whl
Size 9.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e2d7aebc49f05483f9a45241d73820aa21a4ac1204156f0e96d12a31ef68804e
BLAKE2b-256 checksum
How to use checksums
2215dd1054118bfa1b4733be325d5f44d80fb7c71fcebe21810f253d7bdddd47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

Security for mcp-files-context 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for mcp_files_context-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 29, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page