Skip to main content
Glama
lofcz

MCP Smart Filesystem Server

by lofcz

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
MCP_LINES_PER_PAGENoLines per page when reading files500
MCP_MAX_SEARCH_RESULTSNoSearch results per page100

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Server capabilities have not been inspected yet.

Tools

Functions exposed to the LLM to take actions

NameDescription
list_directoryB

List contents of a directory with metadata including file sizes and line counts

read_fileA

Read file contents. For large files (>500 lines), use start_line to read in chunks (e.g., 0, 500, 1000). Each call returns up to 500 lines. Binary files return metadata only.

search_codeA

Search for code patterns using ripgrep (very fast). Supports regex patterns and advanced filtering.

PATTERN EXAMPLES:

  • Exact text: "functionName"

  • Multiple options: "\b(class|struct|record|interface|enum)\s+TypeName\b" (finds: class TypeName, record TypeName, interface TypeName, etc.)

  • Regex: "async.*Promise<.*>" (finds async functions returning Promise)

  • Any declaration: "\b(public|private|protected)\s+\w+\s+methodName"

COMMON USE CASES:

  • Find type declaration: "\b(class|struct|interface|record|enum)\s+TypeName\b"

  • Find method: "\b(public|private|protected|internal).\s+methodName\s\("

  • Find property: "\bpublic\s+\w+\s+propertyName\s*\{"

  • Find async methods: "async.*Task<"

  • Find implementations: ":\s*IInterfaceName\b"

TIPS:

  • Use \b for word boundaries

  • Use \s+ for whitespace

  • Combine alternatives with (opt1|opt2|opt3)

  • Escape special chars: \( \) \{ \}

search_in_fileB

Search for patterns within a specific file using ripgrep. Like Ctrl+F but with regex support. Useful for finding specific sections in a known file.

find_filesC

Find files by name using fast pattern matching.

PATTERN EXAMPLES:

  • Exact name: "config.json"

  • Wildcard: "*.config" or "Handler"

  • Multiple extensions: "*.{ts,tsx,js}"

TIPS:

  • Use * for any characters

  • Use ? for single character

  • Use {a,b,c} for alternatives

get_file_infoA

Get file metadata without reading contents. Useful to check size/line count before reading. For large files, provides reading strategy recommendations.

list_allowed_directoriesB

Show which directories this server can access (security boundaries). No parameters required.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.7/5.0

Scored across 7 tools

Disambiguation4/5

Most tools have distinct purposes: find_files locates files by name, get_file_info provides metadata, list_allowed_directories shows accessible directories, list_directory enumerates directory contents, read_file reads file contents, search_code searches across files with regex, and search_in_file searches within a single file. However, search_code and search_in_file could be slightly confused as both involve regex-based searching, though their scopes differ (global vs. file-specific).

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with clear verb_noun structures: find_files, get_file_info, list_allowed_directories, list_directory, read_file, search_code, and search_in_file. The naming is predictable and readable throughout the set.

Tool Count5/5

With 7 tools, the server is well-scoped for a filesystem domain, covering key operations like finding, listing, reading, and searching files. Each tool serves a specific function without redundancy, making the count appropriate for the intended purpose.

Completeness4/5

The toolset covers essential filesystem operations such as discovery, metadata retrieval, directory listing, reading, and searching, with good support for large files and regex patterns. A minor gap is the lack of write or modify operations (e.g., create, update, delete files), which might limit full lifecycle management, but the provided tools handle read-only workflows effectively.

Maintenance

ActivityInactive
ResponsivenessNo issues