mcpField
M
MCP Filesystem

MCP Filesystem

ローカル
github.com/isaacphiファイル・ストレージ380 週間前に更新

MCP Filesystem について

MCP Filesystem は、ワークスペース内のファイルを MCP クライアントに公開する Go 製 MCP サーバーです。無視対象でない各ファイルをリソースとして登録し、変更を通知します。

主な機能

  1. 01ワークスペース内の各ファイルをリソース化
  2. 02.gitignore ルールへの対応
  3. 03ファイル変更の通知
  4. 04MIME タイプとテキストエンコーディングの識別

活用シーン

  1. 01MCP クライアントからリポジトリ内のファイルを参照
  2. 02ワークスペースでの追加・編集・削除の追跡

MCP 対応

無視対象でないワークスペース内の各ファイルを MCP リソースとして公開します。ファイルの追加、変更、削除時に通知を送ります。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MCP Filesystem

作業ディレクトリ内の各ファイルをリソースとして公開し、変更通知を送信する Model Context Protocol(MCP)サーバーです。

ステータス

⚠️ ベータ前の品質です ⚠️

「自分のマシンでは動いています」。問題の報告を歓迎します ❤️

機能

  • リソース:ワークスペース内の各ファイルに対して MCP リソースを作成します
  • Gitignore のサポート:.gitignore のルールに従います
  • 変更通知:ファイルの変更、追加、削除を検出します
  • MIME タイプの検出とエンコーディングの処理:ファイルの種類を特定し、さまざまなテキストエンコーディングを処理します

セットアップ

Go をインストールします:https://golang.org/doc/install の手順に従ってください

このサーバーを取得または更新します:

go install github.com/isaacphi/mcp-filesystem@latest

クライアントの設定(Claude Desktop の場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に以下を追加します:

{
  "mcpServers": {
    "filesystem": {
      "command": "mcp-filesystem",
      "args": ["--workspace", "/path/to/your/repository"]
    }
  }
}

/path/to/your/repository をプロジェクトディレクトリの絶対パスに置き換えてください。

使い方

クライアントから、リポジトリ内の無視対象ではないすべてのファイルに MCP リソースとしてアクセスし、参照できるようになります。各ファイルは、適切な MIME タイプ検出とともに個別のリソースとして登録されます。

クライアントの要件

クライアントは、次の MCP 機能をサポートする必要があります:

  • リソース一覧表示:サーバーが公開するリソースを一覧表示してアクセスする機能
  • 変更通知:notifications/resources/list_changed イベントを受信するサポート
  • リソースコンテンツへのアクセス:適切な MIME タイプでリソースのコンテンツを要求し、表示する機能

概要

このプロジェクトでは、以下を使用しています:

開発

リポジトリをクローンします:

git clone https://github.com/isaacphi/mcp-filesystem.git
cd mcp-filesystem

依存関係をインストールします:

go mod download

ビルドします:

go build

クライアントがローカルビルドを使用するように設定します:

{
  "mcpServers": {
    "filesystem": {
      "command": "/full/path/to/your/mcp-filesystem/mcp-filesystem",
      "args": ["--workspace", "/path/to/repository"],
      "env": {
        "DEBUG": "1"
      }
    }
  }
}

フィードバック

できるだけ詳しい情報を添えて、問題を報告してください。

詳細なログを有効にするには、DEBUG 環境変数を設定します:

"env": {
  "DEBUG": "1"
}

今後対応する予定の機能

  • ワークスペース内の各ファイルに対するリソース
  • .gitignore のサポート
  • 変更通知
  • より多くのクライアント(Claude Desktop)で動作するよう、MCP プロトコルの使用を標準化
  • 行番号のサポートを設定可能にする
  • リソース更新のサブスクリプション
  • 追加の無視パターン(.gitignore 以外)
  • 大量のファイル変更に対する通知のデバウンス
  • info、create、edit、delete ツール

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。