npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

mcp-filesystem-pro

v1.2.0

Published

Production-grade MCP server for filesystem and git operations

Downloads

35

Readme

mcp-filesystem-pro

Production-grade MCP server for filesystem, git, project analysis, and HTTP operations — 40 tools for AI agents.

CI npm version

Overview

mcp-filesystem-pro is a Model Context Protocol server that provides secure filesystem, git, project analysis, and HTTP operations for AI agents. All operations are scoped to a configured root directory via AllowlistGuard security.

What's New in v1.1.0

HTTP Client Module — 22 tools for making authenticated, secure HTTP requests from AI agents.

Key capabilities:

  • Full REST API coverage: GET, POST, PUT, DELETE, PATCH, HEAD
  • Authentication: API key, Bearer token, Basic auth
  • Custom headers and query parameters
  • URL allowlisting for security
  • Response parsing (JSON, text, status codes, headers)

All HTTP operations support the same security model as filesystem operations, including URL allowlisting to prevent SSRF attacks.

Quick Start

Install

npm install -g mcp-filesystem-pro

Run as MCP Server

# Run with default /tmp root
mcp-filesystem-pro /tmp

# Run with custom root directory
mcp-filesystem-pro /path/to/project

Docker

docker run -v /path/to/project:/project ghcr.io/dabydat/mcp-filesystem-pro /project

Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpFilesystemPro": {
    "command": "mcp-filesystem-pro",
    "args": ["/path/to/allowed/directory"]
  }
}

Tools

Filesystem (8 tools)

| Tool | Description | |------|-------------| | read_file | Read single file with UTF-8 decode | | read_files | Read multiple files in one call | | write_file | Create/update file with content | | apply_diff | Apply unified diff to file | | delete_file | Delete file or directory | | find_files | Glob pattern file search | | search_text | Grep-like content search | | list_dir | Directory listing with metadata |

Git (6 tools)

| Tool | Description | |------|-------------| | git_status | Working tree status | | git_diff | File/directory diff | | git_log | Commit history | | git_add | Stage files | | git_commit | Create commit | | git_branch | List/create/delete branches |

Project (4 tools)

| Tool | Description | |------|-------------| | detect_stack | Identify tech stack (npm/Bun/Cargo/etc) | | find_config_files | Locate project configuration files | | project_summary | Project overview and statistics | | read_agents_md | Parse .claude/AGENTS.md |

HTTP (22 tools)

| Tool | Description | |------|-------------| | http_get | Make GET request | | http_post | Make POST request | | http_put | Make PUT request | | http_delete | Make DELETE request | | http_patch | Make PATCH request | | http_head | Make HEAD request | | http_set_auth_api_key | Set API key authentication | | http_set_auth_bearer | Set bearer token authentication | | http_set_auth_basic | Set basic authentication | | http_clear_auth | Clear all authentication | | http_set_headers | Set custom headers | | http_clear_headers | Clear custom headers | | http_set_timeout | Set request timeout | | http_parse_json | Parse JSON string | | http_parse_text | Return text as-is | | http_get_response_headers | Get last response headers | | http_get_status_code | Get last status code | | http_add_query_param | Store query parameter | | http_validate_url | Validate URL security | | http_add_url_allowlist | Add URL to allowlist | | http_remove_url_allowlist | Remove URL from allowlist | | http_list_allowlist | List all allowlist patterns |

Architecture

mcp-filesystem-pro/
├── src/
│   ├── index.ts              # CLI entry point
│   ├── server.ts             # MCP server factory
│   ├── modules/
│   │   ├── filesystem/       # 8 tools: read, write, diff, search, list
│   │   ├── git/              # 6 tools: status, diff, log, add, commit, branch
│   │   └── project/          # 4 tools: detect_stack, summary, find_config
│   ├── security/
│   │   └── allowlist.ts      # Path validation + path traversal blocking
│   └── types/                # Result types
├── tests/                    # Bun test suite (75 tests)
└── docs/
    ├── TOOLS.md              # Detailed tool documentation
    └── SECURITY.md            # Security model

Security

Path Allowlisting: All file operations are scoped to an allowed root directory. Path traversal attacks (../.., symlinks) are blocked.

Blocked Paths:

  • /etc/, /root/, ~/.ssh/
  • .env files
  • /proc/, /sys/

Input Sanitization: All tool inputs are validated against the allowlist before any filesystem operation.

See docs/SECURITY.md for details.

Development

# Install dependencies
bun install

# Build
bun run build

# Type check
bun run build:check

# Test
bun test

# Dev mode (watch)
bun run dev

# Inspector
bun run inspector

Requirements

  • Node.js >= 20.0.0
  • Bun >= 1.0.0 (recommended) or npm

License

MIT