mcpField
J
JFSecure

JFSecure

ローカル
secure.jfolio.orgセキュリティ05 日前に更新

JFSecure について

JFSecure の `jfs` は、AI エージェントが値を見ずに保管庫のシークレットを使える CLI と MCP サーバーです。利用ごとに起動中のアプリで承認し、コマンド出力では値がマスクされます。

主な機能

  1. 01シークレット利用ごとの承認
  2. 02コマンド出力内の値をマスク
  3. 03環境変数を渡してコマンドを実行
  4. 04テンプレートへのシークレット反映
  5. 05シークレット名とキー名の一覧表示

活用シーン

  1. 01認証情報が必要なコマンドをエージェントに実行させる
  2. 02テンプレートから `.env` ファイルを作成
  3. 03コマンドによるシークレット利用を確認して承認

MCP 対応

MCP サーバーは、シークレット名の一覧表示、シークレットを使ったコマンド実行、テンプレートの反映を行うツールを公開します。値を取得するツールはなく、利用要求は JFSecure での承認が必要です。

設定

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

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

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

リポジトリ
パッケージ
mcpbjfs-2.7.0.mcpb

ツール

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

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

詳細

jfs — 秘密情報を見ずに使える AI エージェント向けツール

jfs は、オフラインのパスワードおよびスニペットマネージャーである JFSecure のコマンドラインツールおよび MCP サーバー です。Claude Code、Cursor などの MCP エージェントは、秘密情報を取得することなく使用でき、使用のたびにアプリで承認できます。

このリポジトリには jfs 自体のソースコードがあるため、エージェントがやり取りする内容を正確に確認できます。これは薄いクライアントです。ローカルのパイプを通じて、実行中でロック解除された JFSecure アプリに JSON リクエストを 1 つ送信し、応答を出力します。保管庫のファイルを開くことも、保管庫のパスワードを見ることもなく、暗号処理も行いません。(アプリは別途ダウンロードします。jfs はアプリに同梱されています。)

Claude Code が要求し、JFSecure が正確なコマンドを表示し、エージェントはトークンがマスクされた出力を受け取ります

MCP ツール

ツール機能エージェントが受け取るもの
list_secrets秘密情報とキーの名前、および各キーがどの環境変数になるかを一覧表示します名前のみ
run_with_secrets秘密情報のキーを環境変数として設定してコマンドを実行します(すべて、一部、または標準入力で 1 つ)終了コードと出力。すべての値は [JFSecure: NAME] としてマスクされます
render_templateテンプレート内の {{Secret:key}} を置き換えて、ファイル(例:.env)に書き込みます置き換えた名前

意図的に「取得」ツールは用意していません。使用するたびに JFSecure で承認ウィンドウが開き、プログラム、正確なコマンド、秘密情報が表示されます。1 回だけ許可するか、15 分間許可するか、拒否できます。Claude Code の場合、15 分間の承認はそのコマンドと秘密情報だけに適用されます。

# the agent called run_with_secrets(secret: "github", command: …)
exit code 0
variables set: TOKEN
--- stdout ---
token is [JFSecure: TOKEN]
{"login": "octocat", "plan": {"name": "pro"}}

セットアップ

  1. JFSecure をインストールし、保管庫を開きます:brew install theone55/jfsecure/jfsecure(macOS)、scoop bucket add jfsecure https://github.com/theone55/scoop-jfsecure; scoop install jfsecure/jfsecure(Windows)、またはインストーラー(Windows、macOS、Linux)を使用します。jfs はアプリに同梱されています。Windows では、アプリの初回起動時に PATH に追加されます(その後、新しいターミナルを開いてください)。macOS(.dmg)と Linux AppImage では、Settings → Install the jfs command を使用してください。Homebrew と .deb では自動的にインストールされます。
  2. MCP サーバーを追加します:
claude mcp add --scope user jfsecure -- jfs mcp

Cursor(~/.cursor/mcp.json)、Claude Desktop、Windsurf、VS Code など、任意の stdio MCP クライアントで使用できます:

{ "mcpServers": { "jfsecure": { "command": "jfs", "args": ["mcp"] } } }

詳細:https://secure.jfolio.org/agents

リリースページでは、MCP バンドル(.mcpb、Windows/macOS/Linux)としても提供されています。また、公式 MCP Registry では io.github.theone55/jfs として登録されています。

コマンドライン

jfs status                       is the app running and unlocked
jfs ls [secret|folder]           names only, no approval needed
jfs get github/token             print a value (approved in the app)
jfs copy github/token            to the clipboard, nothing printed
jfs run github -- gh api user    run with the secret's keys as env vars ($token → TOKEN); output masked when piped
jfs render .env.tpl -o .env      fill {{Secret:key}} into a file
git config --global credential.helper "!jfs git-credential"

詳細なガイド:https://secure.jfolio.org/cli

保護されるもの — 保護されないもの

  • モデルは値を受け取らないため、会話の記録やログに値が残ることはありません。
  • プロンプトインジェクションを受けたエージェントにできるのは要求することだけです。正確なコマンドはユーザーに表示されます。
  • パイプを使用できるのは OS のユーザーだけです。アプリは呼び出し元を、呼び出し元の申告ではなく OS を通じて識別します。
  • **マスキングはシートベルトであり、壁ではありません。**承認したコマンドが値を外部に送信する可能性はあります。コマンドを確認してください。

ビルド

cargo build --release   # Rust stable; Windows, macOS, Linux
cargo test

ここにあるコピーは JFSecure の各リリースに対応しています(Cargo.toml の version は、同梱されたアプリのバージョンです)。 問題や質問はお気軽にお寄せください。

MIT License。

コメント

MCP は初めてですか?

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

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