basic-fns-mcp
Click on "Deploy 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., "@basic-fns-mcp grep for TODO in the project"
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.
basic-fns-mcp
A streamable-HTTP/stdio MCP server exposing the core filesystem, shell, search, and listing tools that mirror the default agent toolset.
Tools
Tool | Hint | Purpose |
| readOnly | Read a text file with cat-style line numbers |
| destructive | Create or overwrite a file atomically |
| destructive | Create a directory and any missing parents |
| destructive | Targeted string replacement in a text file |
| destructive | Execute a shell command and capture output/exit code |
| readOnly | Search file contents by regex (uses |
| readOnly | Find files/directories by glob-style name match |
| readOnly | List directory contents |
All filesystem paths are resolved relative to the configured server root. The server refuses any path that resolves outside that root, including symlinks that escape it.
Related MCP server: MCP File Server
Quick start
Install and run over HTTP:
uv sync
uv run basic-fns-mcp --root . --port 8080Add it to Claude Code:
claude mcp add --transport http basic-fns http://127.0.0.1:8080/mcpstdio
The same server runs over stdio, where the client spawns it as a subprocess:
uv run basic-fns-mcp --stdio # or: --transport stdioAdd it to Claude Code:
claude mcp add basic-fns -- uv run --directory /path/to/basic-fns-mcp basic-fns-mcp --stdioOr in an MCP client config file:
{
"mcpServers": {
"basic-fns": {
"command": "uv",
"args": ["run", "--directory", "/path/to/basic-fns-mcp", "basic-fns-mcp", "--stdio"],
"env": { "BASIC_FNS_ROOT": "/path/to/your/project" }
}
}
}On stdio, stdout is the protocol channel — the startup banner is suppressed and all
logging goes to stderr. The --host/--port flags are ignored.
The module can also be served directly, since tools are registered at import time:
uv run fastmcp run src/basic_fns_mcp/server.pyCLI flags / environment variables
Flag | Environment variable | Default | Meaning |
|
| current working directory | Sandbox root; all paths resolve under it |
|
|
| HTTP bind address |
|
|
| HTTP bind port |
|
|
| Refuse |
|
|
| Cap any tool result to this length |
|
|
| Default shell timeout in seconds |
|
|
| Disable |
|
|
| Do not register the |
|
|
|
|
Command-line arguments win over environment variables.
Security
Path sandbox:
read,write,mkdir,edit,grep,find, andlsresolve every path inside--root. Symlinks are followed and checked; any path that resolves outside the root is rejected.bashis not sandboxed:bashruns with the full privileges of the server process. A shell command cancdanywhere, read any file the server user can read, and execute arbitrary code. Only bind to loopback (127.0.0.1) and expose this server to trusted clients.No command blocklist: Blocklists are easily bypassed and create a false sense of security, so none is implemented.
Read-only mode: Use
--read-onlyto prevent file modification via this server.
Development
Run the test suite:
uv run pytest -qLicense
MIT
Available Tools
7 toolsbashADestructive
Execute a shell command and return exit code, stdout, and stderr.
Inputs: command (required), cwd, timeout. Returns: result
editADestructive
Replace old_string with new_string in a text file.
Inputs: path (required), new_string (required), old_string (required), replace_all. Returns: result
findARead-only
Find files or directories by glob-style name match.
Inputs: path, type, pattern, max_results. Returns: result
grepBRead-only
Search file contents by regex.
Inputs: pattern (required), glob, path, max_results, +1 more. Returns: result
lsARead-only
List the contents of a directory.
Inputs: all, path. Returns: result
readARead-only
Read a text file and return its contents with cat-style line numbers.
Inputs: path (required), limit, offset. Returns: result
writeADestructive
Create or overwrite a file atomically (temp file + os.replace).
Inputs: path (required), content (required). Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
read, grep, find, and ls each target a distinct operation (reading content, searching content, finding files by name, listing directories), but the generic bash tool can perform all of these actions, creating overlap and ambiguity about when to use the specialized tools versus bash.
All tool names are single lowercase verbs (read, grep, find, ls, write, edit, bash) following a consistent Unix-command style. The naming pattern is uniform and predictable.
With 7 tools, the server is well-scoped for a basic file operations server. Each tool addresses a core operation (read, write, edit, search, list), and the count is within the ideal range.
The server covers create (write), read (read), and update (edit) but lacks an explicit delete, move, or copy operation. The bash tool can work around these gaps, but the dedicated surface is incomplete for full file lifecycle management.
Maintenance
Related MCP Connectors
A private persistent computer: files that survive between runs, a bash shell and JavaScript.
Remote MCP server exposing your Node Command fleet (files, shell, processes, browser) to AI hosts.
Artifact store for AI agents — read, write, and search files by path; share by rendered URL.
A real-time, multiplayer filesystem for agents and humans: shared files, live edits, history.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides secure filesystem operations, HTTP fetching with SSRF protection, JSON validation, artifact logging, and optional Redis key-value storage through both stdio and HTTP transports. Features production-ready security controls including sandbox enforcement, allowlist validation, and comprehensive input validation.Apache 2.0
- AlicenseNot gradedqualityDmaintenanceProvides secure, sandboxed filesystem operations including reading, writing, listing, searching, and managing files and directories within a configurable working directory with strict security controls.3MIT
- FlicenseNot gradedqualityDmaintenanceProvides sandboxed access to local filesystem operations including directory and file management, content search with glob and regex patterns, and binary file support with configurable safety limits.-
- FlicenseNot gradedqualityDmaintenanceProvides read-only access to a single directory tree over stdio, enabling list, read, search, and metadata operations with strict path containment to prevent access outside the allowed root.-