The diff preview on edits and the recursive tree are the parts worth having — an agent can inspect a change before committing to it. Take the README's own warning seriously: there is no path restriction, so the server reaches anything the account running it can reach. Scope it with a dedicated user and OS permissions.
A Java implementation of the filesystem MCP server, built as one shared tool library behind three transports: a standalone stdio application, an HTTP servlet and an SSE servlet.
- read_file and read_multiple_files pull the contents of one file or a batch in a single call
- write_file creates or overwrites; edit_file makes line-based edits and can show the diff before applying
- list_directory and directory_tree give a flat listing with type indicators or a recursive JSON tree
- search_files walks a directory recursively for glob matches, with exclude patterns
- get_file_info returns size, timestamps and permissions; create_directory and move_file cover the rest
A current Java runtime and the built artifact — the project builds with Gradle, and can also compile to a native executable with GraalVM. The stdio build runs as a standalone application; the HTTP and SSE builds are WAR files you deploy into a servlet container. No account or key.
