File MCP Server
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., "@File MCP Serverfind all PDF files in my Documents folder from the last month"
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.
MCP Collection
A collection of Model Context Protocol (MCP) servers providing various tools and capabilities.
Current Version: v0.1.2
Available Servers
Server | Description | Documentation |
file-mcp | Comprehensive file operations with advanced safety features |
Available Tools
7 toolscopyB
Copy files with metadata preservation and safety checks
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes | Source file path (required) | |
| to | Yes | Destination file path (required) | |
| overwrite | No | Allow overwriting existing files (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It adds some context beyond basic copying by mentioning metadata preservation and safety checks, but it lacks details on error handling, performance, permissions, or what specific safety checks are involved. This is a minimal but not comprehensive disclosure for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('Copy files') and adds two key qualifiers ('with metadata preservation and safety checks'). There's no wasted language, making it highly concise and well-structured for quick comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (a mutation operation with 3 parameters) and no annotations or output schema, the description is minimally adequate. It covers the basic purpose and hints at behavior but lacks details on outcomes, errors, or integration with siblings, leaving gaps for the agent to navigate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, clearly documenting all three parameters. The description doesn't add any parameter-specific details beyond what the schema provides, such as path formats or examples. Since the schema does the heavy lifting, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Copy') and resource ('files'), and it adds meaningful context about metadata preservation and safety checks. However, it doesn't explicitly differentiate from sibling tools like 'move' or 'write', which would require more specific comparison.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'move' (which might relocate instead of copy) or 'write' (which might create new content). There's no mention of prerequisites, typical use cases, or exclusions, leaving the agent to infer usage from context alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
editB
Edit file contents with batch operations (requires prior read)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | File path to edit | |
| edits | Yes | Array of edit operations to perform in sequence |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but offers minimal behavioral insight. It mentions 'batch operations' and 'requires prior read', hinting at sequential edits and a prerequisite, but lacks details on permissions, error handling, atomicity of edits, or what happens if the file doesn't exist. For a mutation tool with zero annotation coverage, this is inadequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It front-loads the core action ('edit file contents'), adds key context ('batch operations'), and includes a prerequisite ('requires prior read')โall essential information without redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (mutation with batch operations) and lack of annotations/output schema, the description is insufficient. It doesn't explain return values, error conditions, or behavioral nuances like edit ordering or rollback. For a tool that modifies files, more context is needed to ensure safe and correct usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing full documentation for both parameters ('path' and 'edits') and their nested properties. The description adds no parameter-specific information beyond what's in the schema, such as format examples or constraints. Baseline 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('edit') and resource ('file contents') with the specific capability of 'batch operations'. It distinguishes from siblings like 'read' (view only) and 'write' (full overwrite) by focusing on targeted modifications. However, it doesn't explicitly contrast with 'copy' or 'move' which handle files rather than content.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides some guidance with 'requires prior read', implying this tool should be used after inspecting file content. However, it doesn't specify when to choose this over 'write' (for full replacements) or other editing alternatives, nor does it mention when not to use it (e.g., for simple appends). The context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
findC
Find files and directories with pattern matching and filtering
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | Directory path to search (required) | |
| pattern | No | File pattern to match (*.js,**/*.test.ts,!**/node_modules/**). Use ! to exclude, comma-separated | |
| depth | No | Maximum depth to recurse (default: 0 = unlimited) | |
| includeIgnored | No | Include files ignored by .gitignore (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions pattern matching and filtering but doesn't cover important aspects like whether this is a read-only operation (implied but not stated), performance characteristics, error handling, or output format. For a tool with 4 parameters and no annotation coverage, this is insufficient behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise - a single sentence that efficiently communicates the core functionality. Every word earns its place with no redundancy or unnecessary elaboration. The structure is front-loaded with the essential purpose statement.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 4 parameters, no annotations, and no output schema, the description is incomplete. It doesn't explain what the tool returns (list of paths? file objects?), error conditions, performance implications of depth settings, or how pattern syntax works beyond what's in the schema. The agent would need to guess about important behavioral aspects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description mentions pattern matching and filtering, which aligns with the 'pattern' and 'includeIgnored' parameters, but doesn't add significant meaning beyond what's already in the schema descriptions (which have 100% coverage). It doesn't explain the relationship between parameters or provide usage examples. With complete schema coverage, the baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose as finding files and directories with pattern matching and filtering, which is a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like 'grep' (which might search file contents) or 'read' (which reads file contents), leaving some ambiguity about when to choose this tool over alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'grep' or 'read'. It mentions pattern matching and filtering but doesn't specify use cases, prerequisites, or exclusions. This leaves the agent without clear context for tool selection among the available siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
grepB
Search file contents using regular expressions with ripgrep-style output
| Name | Required | Description | Default |
|---|---|---|---|
| pattern | Yes | The regular expression pattern to search for in file contents | |
| path | No | The directory to search in. Defaults to the current working directory. | |
| include | No | File pattern to include in the search (e.g. "*.js", "*.{ts,tsx}", "!**/node_modules/**") | |
| beforeContext | No | Show NUM lines before each match | |
| afterContext | No | Show NUM lines after each match | |
| context | No | Show NUM lines before and after each match | |
| multiline | No | Enable multiline pattern matching | |
| maxCount | No | Maximum number of matches per file (default: 5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'ripgrep-style output' but doesn't explain what that entails (e.g., format, line numbers, file paths). It doesn't disclose important behavioral traits like whether it searches recursively by default, error handling, performance characteristics, or what happens with binary files.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that's perfectly front-loaded with the core purpose. Every word earns its place - 'Search file contents' establishes the action, 'using regular expressions' specifies the method, and 'with ripgrep-style output' provides implementation context.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 8 parameters, no annotations, and no output schema, the description is insufficiently complete. It doesn't explain the output format ('ripgrep-style' is vague), doesn't mention recursion behavior, and provides no examples of typical use cases. The agent would struggle to understand what results to expect or how to interpret them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all 8 parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema - it doesn't explain parameter interactions (e.g., how 'context' relates to 'beforeContext'/'afterContext') or provide usage examples for complex parameters like 'include' patterns.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Search') and resource ('file contents'), and distinguishes it from siblings by specifying the search method ('using regular expressions with ripgrep-style output'). It goes beyond the tool name 'grep' to explain what type of search it performs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'find' (which likely searches file names) or 'read' (which might read file contents without searching). It mentions 'ripgrep-style output' but doesn't explain what that means or when this specific implementation is preferable.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
moveB
Move files with safety checks and current directory restrictions
| Name | Required | Description | Default |
|---|---|---|---|
| from | Yes | Source file path (required) | |
| to | Yes | Destination file path (required) | |
| overwrite | No | Allow overwriting existing files (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It adds some behavioral context ('safety checks', 'current directory restrictions'), which hints at constraints and validation, but doesn't detail what these checks entail, error conditions, or mutation effects. More specifics on permissions or side effects would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('Move files') and adds qualifying details. It avoids redundancy and wastes no words, though it could be slightly more structured for clarity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description is moderately complete for a mutation tool with full schema coverage. It covers the basic action and hints at constraints, but lacks details on return values, error handling, or deeper behavioral traits, leaving gaps for an AI agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description doesn't add any meaning beyond what the schema provides, such as explaining path formats or overwrite implications. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb ('Move') and resource ('files'), making the purpose evident. However, it doesn't distinguish this tool from its sibling 'copy', which also handles file operations, leaving room for ambiguity in sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions 'safety checks and current directory restrictions', which implies some usage context, but it doesn't explicitly state when to use 'move' versus alternatives like 'copy' or 'write'. No guidance on prerequisites or exclusions is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
readA
Read file contents with safety checks and optional line range
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | File path to read | |
| startLine | No | Start line number (1-based, default: 1) | |
| endLine | No | End line number (1-based, optional) | |
| maxLines | No | Maximum number of lines to read (default: 20) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and adds valuable behavioral context: 'safety checks' implies validation or restrictions (e.g., file size, permissions), and 'optional line range' clarifies it supports partial reads. However, it doesn't detail error handling, encoding, or what 'safety checks' entail, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action ('Read file contents') and adds two key qualifiers ('with safety checks and optional line range'). Every word earns its place with no redundancy or fluff.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read operation with 4 parameters, 100% schema coverage, and no output schema, the description is adequate but has gaps: it doesn't explain return values (e.g., format, error cases) or fully detail 'safety checks'. It's minimally viable given the context but could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema fully documents all 4 parameters. The description adds no specific parameter details beyond implying line-range usage, which is already covered in the schema. Baseline 3 is appropriate as the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action ('Read file contents') and resource ('file'), distinguishing it from siblings like 'write' (which creates/modifies) and 'edit' (which modifies). It adds valuable context about 'safety checks' and 'optional line range' that further clarifies its purpose beyond basic file reading.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through 'optional line range' and 'safety checks', suggesting it's for reading files with potential constraints, but doesn't explicitly state when to use this vs. alternatives like 'grep' (searching) or 'find' (locating files). No explicit exclusions or named alternatives are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
writeB
Write complete file contents (create new files or overwrite existing files)
| Name | Required | Description | Default |
|---|---|---|---|
| path | Yes | File path to write | |
| content | Yes | Complete file content to write | |
| createParentDir | No | Create parent directories if they don't exist (default: false) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It mentions 'overwrite existing files', which implies destructive behavior, but fails to disclose critical traits like error handling (e.g., if the path is invalid), side effects (e.g., data loss on overwrite), or performance considerations (e.g., file size limits). This leaves significant gaps for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that is front-loaded with the core action ('Write complete file contents') and includes essential details ('create new files or overwrite existing files'). There is zero waste, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the complexity of a file write operation with no annotations and no output schema, the description is incomplete. It lacks information on return values (e.g., success/failure indicators), error conditions, or behavioral nuances like atomicity, which are crucial for safe usage in a tool that performs destructive actions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters thoroughly. The description adds no additional meaning beyond what the schema provides, such as explaining the implications of 'createParentDir' or format details for 'content'. Baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose with a specific verb ('Write') and resource ('complete file contents'), and distinguishes it from siblings by specifying it handles both creation and overwriting. It explicitly mentions 'create new files or overwrite existing files', which differentiates it from tools like 'edit' or 'read'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'edit' for partial updates or 'copy'/'move' for file operations. It lacks context about prerequisites, such as file permissions or system constraints, leaving the agent with no usage differentiation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
7 tool updates
- First observed
copy - First observed
edit - First observed
find - First observed
grep - First observed
move - First observed
read - First observed
write
TDQS
Scored across 7 tools
Every tool has a clearly distinct purpose with no ambiguity: copy, edit, find, grep, move, read, and write each target specific file operations. The descriptions reinforce this (e.g., find for locating files, grep for content searching), making misselection unlikely.
All tool names follow a consistent verb-only pattern (copy, edit, find, grep, move, read, write) in lowercase, with no deviations in style or convention. This predictability aids agent navigation and understanding.
With 7 tools, the set is well-scoped for a file management server, covering essential operations without bloat. Each tool earns its place, providing a balanced range from basic I/O (read/write) to advanced functions (grep, edit).
The tool surface offers complete coverage for file operations: read and write handle basic I/O, copy and move manage files, find and grep support searching, and edit allows modifications. There are no obvious gaps, enabling full file lifecycle management.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yoโฆ
Personal assistant MCP server with search, execute, packages, jobs, secrets, and integrations.
Nifty's MCP server โ exposes tasks, projects, messages, and files as tools for AI agents.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that allows AI models to safely access and interact with local file systems, enabling reading file contents, listing directories, and retrieving file metadata.2 npm10MIT
- FlicenseNot gradedqualityFmaintenanceA Model Context Protocol server that extends AI capabilities by providing file system access and management functionalities to Claude or other AI assistants.164 npm5-
- AlicenseAqualityCmaintenanceA secure Model Context Protocol server that provides controlled filesystem access within predefined directories, enabling AI models to perform file and directory operations with strict path validation.162 npm7MIT
- AlicenseAqualityFmaintenanceA Model Context Protocol server that provides AI agents with secure access to local filesystem operations, enabling reading, writing, and managing files through a standardized interface.1032 npm51Apache 2.0