Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"permissions": {
"allow": [
"WebFetch(domain:github.com)",
"Bash(cargo make:*)"
],
"deny": [],
"ask": []
}
}
10 changes: 10 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
# Changelog

## [Unreleased]

### 🚀 Features

* Add optional line numbering to read_text_file tool ([#60](https://github.com/rust-mcp-stack/rust-mcp-filesystem/issues/60))
- Added `with_line_numbers` optional parameter to `read_text_file` tool
- When enabled, prefixes each line with right-aligned line numbers and pipe separator
- Useful for AI agents that need to target specific lines for code patches
- Maintains backward compatibility with existing usage

## [0.3.6](https://github.com/rust-mcp-stack/rust-mcp-filesystem/compare/v0.3.5...v0.3.6) (2025-10-15)


Expand Down
7 changes: 7 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ infer = "0.19.0"
rayon = "1.11.0"
sha2 = "0.10.9"
glob-match = "0.2"
hex = "0.4"

[dev-dependencies]
tempfile = "3.2"
Expand Down
63 changes: 39 additions & 24 deletions docs/capabilities.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@

<!-- mcp-discovery-render -->
## rust-mcp-filesystem 0.3.6
| 🟢 Tools (24) | <span style="opacity:0.6">🔴 Prompts</span> | <span style="opacity:0.6">🔴 Resources</span> | <span style="opacity:0.6">🔴 Logging</span> | <span style="opacity:0.6">🔴 Completions</span> | <span style="opacity:0.6">🔴 Experimental</span> |
| 🟢 Tools (25) | <span style="opacity:0.6">🔴 Prompts</span> | <span style="opacity:0.6">🔴 Resources</span> | <span style="opacity:0.6">🔴 Logging</span> | <span style="opacity:0.6">🔴 Completions</span> | <span style="opacity:0.6">🔴 Experimental</span> |
| --- | --- | --- | --- | --- | --- |

## 🛠️ Tools (24)
## 🛠️ Tools (25)

<table style="text-align: left;">
<thead>
Expand Down Expand Up @@ -44,6 +44,20 @@
</tr>
<tr>
<td>3.</td>
<td>
<code><b>diff_files</b></code>
</td>
<td>Generate a unified diff between two files. For text files, produces a standard unified diff format showing additions and deletions. For binary files, compares SHA-256 hashes and reports whether files are identical or different. Respects file size limits to prevent memory issues. Only works within allowed directories.</td>
<td>
<ul>
<li> <code>maxFileSizeBytes</code> : integer<br /></li>
<li> <code>path1</code> : string<br /></li>
<li> <code>path2</code> : string<br /></li>
</ul>
</td>
</tr>
<tr>
<td>4.</td>
<td>
<code><b>directory_tree</b></code>
</td>
Expand All @@ -56,7 +70,7 @@
</td>
</tr>
<tr>
<td>4.</td>
<td>5.</td>
<td>
<code><b>edit_file</b></code>
</td>
Expand All @@ -70,7 +84,7 @@
</td>
</tr>
<tr>
<td>5.</td>
<td>6.</td>
<td>
<code><b>find_duplicate_files</b></code>
</td>
Expand All @@ -87,7 +101,7 @@
</td>
</tr>
<tr>
<td>6.</td>
<td>7.</td>
<td>
<code><b>find_empty_directories</b></code>
</td>
Expand All @@ -101,7 +115,7 @@
</td>
</tr>
<tr>
<td>7.</td>
<td>8.</td>
<td>
<code><b>get_file_info</b></code>
</td>
Expand All @@ -113,7 +127,7 @@
</td>
</tr>
<tr>
<td>8.</td>
<td>9.</td>
<td>
<code><b>head_file</b></code>
</td>
Expand All @@ -126,7 +140,7 @@
</td>
</tr>
<tr>
<td>9.</td>
<td>10.</td>
<td>
<code><b>list_allowed_directories</b></code>
</td>
Expand All @@ -137,7 +151,7 @@
</td>
</tr>
<tr>
<td>10.</td>
<td>11.</td>
<td>
<code><b>list_directory</b></code>
</td>
Expand All @@ -149,7 +163,7 @@
</td>
</tr>
<tr>
<td>11.</td>
<td>12.</td>
<td>
<code><b>list_directory_with_sizes</b></code>
</td>
Expand All @@ -161,7 +175,7 @@
</td>
</tr>
<tr>
<td>12.</td>
<td>13.</td>
<td>
<code><b>move_file</b></code>
</td>
Expand All @@ -174,7 +188,7 @@
</td>
</tr>
<tr>
<td>13.</td>
<td>14.</td>
<td>
<code><b>read_file_lines</b></code>
</td>
Expand All @@ -188,7 +202,7 @@
</td>
</tr>
<tr>
<td>14.</td>
<td>15.</td>
<td>
<code><b>read_media_file</b></code>
</td>
Expand All @@ -201,7 +215,7 @@
</td>
</tr>
<tr>
<td>15.</td>
<td>16.</td>
<td>
<code><b>read_multiple_media_files</b></code>
</td>
Expand All @@ -214,7 +228,7 @@
</td>
</tr>
<tr>
<td>16.</td>
<td>17.</td>
<td>
<code><b>read_multiple_text_files</b></code>
</td>
Expand All @@ -226,19 +240,20 @@
</td>
</tr>
<tr>
<td>17.</td>
<td>18.</td>
<td>
<code><b>read_text_file</b></code>
</td>
<td>Read the complete contents of a text file from the file system as text. Handles various text encodings and provides detailed error messages if the file cannot be read. Use this tool when you need to examine the contents of a single file. Only works within allowed directories.</td>
<td>Read the complete contents of a text file from the file system as text. Handles various text encodings and provides detailed error messages if the file cannot be read. Use this tool when you need to examine the contents of a single file. Optionally include line numbers for precise code targeting. Only works within allowed directories.</td>
<td>
<ul>
<li> <code>path</code> : string<br /></li>
<li> <code>with_line_numbers</code> : boolean<br /></li>
</ul>
</td>
</tr>
<tr>
<td>18.</td>
<td>19.</td>
<td>
<code><b>search_files</b></code>
</td>
Expand All @@ -254,7 +269,7 @@
</td>
</tr>
<tr>
<td>19.</td>
<td>20.</td>
<td>
<code><b>search_files_content</b></code>
</td>
Expand All @@ -272,7 +287,7 @@
</td>
</tr>
<tr>
<td>20.</td>
<td>21.</td>
<td>
<code><b>tail_file</b></code>
</td>
Expand All @@ -285,7 +300,7 @@
</td>
</tr>
<tr>
<td>21.</td>
<td>22.</td>
<td>
<code><b>unzip_file</b></code>
</td>
Expand All @@ -298,7 +313,7 @@
</td>
</tr>
<tr>
<td>22.</td>
<td>23.</td>
<td>
<code><b>write_file</b></code>
</td>
Expand All @@ -311,7 +326,7 @@
</td>
</tr>
<tr>
<td>23.</td>
<td>24.</td>
<td>
<code><b>zip_directory</b></code>
</td>
Expand All @@ -325,7 +340,7 @@
</td>
</tr>
<tr>
<td>24.</td>
<td>25.</td>
<td>
<code><b>zip_files</b></code>
</td>
Expand Down
Loading