mcpField
M
muscle-memory

muscle-memory

ローカル
github.com/johannesloor開発ツール22 日前に更新

muscle-memory について

muscle-memory は、テスト済みの補助スクリプトを保存して再利用する MCP サーバー兼 CLI です。個人用と任意のプロジェクト用ライブラリを用意し、テストに合格したスクリプトだけを保存します。

主な機能

  1. 01エリア別のスクリプト一覧
  2. 02引数付きで保存済みスクリプトを実行
  3. 03テスト合格後のスクリプト保存
  4. 04個人用・プロジェクト用ライブラリ
  5. 05CLI と MCP サーバーモード

活用シーン

  1. 01テスト済み補助スクリプトのプロジェクト間再利用
  2. 02コードベース固有スクリプトの保存
  3. 03エージェントのワークフローからライブラリ内スクリプトを実行

MCP 対応

`mm_list`、`mm_run`、`mm_save`、`mm_setup` を MCP クライアントに提供し、スクリプトライブラリの管理と利用を可能にします。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"johannesloor-muscle-memory": {
"command": "uvx",
"args": [
"muscle-memory-mcp"
]
}
}
}
起動コマンドuvx muscle-memory-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypimuscle-memory-mcp0.1.1

ツール

4

掲載時のツール一覧 · 1 日前に更新

パラメーター型必須説明
areastringいいえ初回呼び出しで指定する領域。省略すると領域が一覧表示されます。

詳細

「Muscle Memory MCP Server」の文字の横にある、結んだ靴ひものリボン

Muscle Memory MCP サーバー

PyPI Tests License: MIT

エージェントはスクリプトを書いて問題を解決しますが、それを何でもないもののように捨ててしまいます。翌日、同じスクリプトをまた書きます。毎朝、靴ひもの結び方を考え直さなければならないようなものです。いわば、筋肉の記憶がないのです。

Muscle Memory MCP サーバーは、エージェントがテスト済みのスクリプトを自分で追加していく空のライブラリを提供します。

インストール

Install in VS Code Install in VS Code Insiders Install in Cursor Install in LM Studio

Hermes

hermes mcp add muscle-memory --command uvx --args muscle-memory-mcp

Claude Code

claude mcp add muscle-memory -s user -- uvx muscle-memory-mcp

ライブラリをデフォルト以外の場所に保存するには、サーバーの環境で MUSCLE_MEMORY_DIR を設定します。

Codex

~/.codex/config.toml に追加します。

[mcp_servers.muscle-memory]
command = "uvx"
args = ["muscle-memory-mcp"]
# env = { MUSCLE_MEMORY_DIR = "/absolute/path/to/library" }
Cursor

~/.cursor/mcp.json に追加します。

{
  "mcpServers": {
    "muscle-memory": {
      "command": "uvx",
      "args": ["muscle-memory-mcp"]
    }
  }
}

AGENTS.md に追加する

AGENTS.md、CLAUDE.md、SOUL.md、または同等のエージェント向け指示ファイルに、次のルールを常設ルールとして追加します。

Before writing helper code, check muscle-memory with mm_list and run a match with mm_run.
After giving the user the result, save reusable new helpers with mm_save.
Skip this for code that is itself the deliverable.

各操作の安全性とテストに関する詳細は、ツールの説明に記載されています。

初回実行とストレージ

サーバーは mm_list、mm_run、mm_save、mm_setup を公開します。個人ライブラリがまだセットアップされていない場合、ツールはエージェントに、保存場所を一度だけユーザーに尋ねてから mm_setup を呼び出すよう案内します。

個人ライブラリのデフォルトの保存先は ~/.muscle-memory(Windows では %USERPROFILE%\.muscle-memory)です。MUSCLE_MEMORY_DIR を設定すると、別の場所を指定できます。個人ライブラリ内のスクリプトは、すべてのプロジェクトで利用できます。

任意の .muscle-memory/ プロジェクトライブラリには、特定のコードベース専用のスクリプトを保存できます。プロジェクトルートの検出は、MCP クライアントの作業ディレクトリに依存します。検出を明示的に上書きするには、サーバー環境で MUSCLE_MEMORY_PROJECT_DIR にプロジェクトの絶対パスを設定します。両方のライブラリに同じスクリプト名がある場合は、プロジェクト側のコピーが優先され、一覧では個人側のコピーに「シャドウ」と表示されます。

個人ライブラリでは、フォルダーが git に含まれていない場合、保存するとファイルがローカルに書き込まれます。ライブラリが git リポジトリの場合は、保存したスクリプトがそれぞれコミットされます。セットアップでは、スクリプトを git のリモートにも自動的にプッシュするかどうかを尋ねます。回答を変更するには、セットアップを再度実行してください。プロジェクトライブラリは自動でコミットもプッシュもされません。自分の作業と一緒にコミットしてください。プロジェクトライブラリの初回セットアップ時に、エージェントはライブラリを git で共有するか、非公開のままにするかを尋ねます。

ツール

  • mm_list(area?) — 利用可能な領域とスクリプト数を一覧表示するか、指定した領域のスクリプトを一覧表示します。
  • mm_run(script, args) — 保存済みのスクリプトを実行し、引数を渡します。
  • mm_save(name, code, test, area, usage, ...) — テストに合格した後、スクリプトを保存または更新します。ランナー、テストの選択、個人/プロジェクトのスコープ設定に対応しています。スキーマと安全性に関する動作の詳細は、ツールの説明を参照してください。
  • mm_setup(target, ...) — 個人用ライブラリまたは任意のプロジェクトライブラリをセットアップします。セットアップの前にユーザーに確認してください。モードとオプションについては、ツールの説明を参照してください。

詳細:言語とテスト

ランナーはファイル拡張子によって選択されます。対応言語は Python、bash/zsh、Node、Ruby、Perl、PHP、Swift、Go、Lua、R、PowerShell、Windows の .cmd/.bat です。それ以外の言語を保存する場合は、ランナーの argv を明示する必要があります。ランタイムがインストールされることはありません。ランタイムが見つからない場合は、コマンド名を示すエラーが表示されます。

デフォルトでは、スクリプトのテストには同じ拡張子とランナーが使われます。test_name と test_runner を指定すると、テストを個別に選択できます。テストは tests/test_<stem>.<ext> に格納され、選択メタデータはスクリプトと同じ場所に保存されます。テストには MM_SCRIPT(スクリプトの絶対パス)と MM_LIBRARY(ライブラリのルート)が渡されます。終了ステータスが 0 なら合格です。テストに失敗すると保存は行われません。テストの拡張子を変更した場合、置き換え後のテストが合格した後にのみ、以前のテストが削除されます。

詳細:CLI

同じコマンドを CLI としても使用できます。

uvx muscle-memory-mcp list [AREA]
uvx muscle-memory-mcp run SCRIPT [ARGS...]
uvx muscle-memory-mcp save NAME --code FILE --test FILE --area AREA --usage TEXT
uvx muscle-memory-mcp setup [--target personal|project] [OPTIONS]
uvx muscle-memory-mcp test [NAME]
uvx muscle-memory-mcp trust --project

引数を指定せずに実行すると、stdio 経由で MCP サーバーが起動します。オプションを一覧表示するには --help を使用してください。

セキュリティと制限

  • スクリプトとテストは、ユーザーの権限と環境で、サンドボックスなしで実行されます。テストに合格しても、セキュリティレビューを受けたことにはなりません。
  • プロジェクトライブラリは、uvx muscle-memory-mcp trust --project を使ってプロジェクトを一度承認した後にのみ実行されます。
  • プロジェクトライブラリの検出は、クライアントの作業ディレクトリに依存します。必要に応じて MUSCLE_MEMORY_PROJECT_DIR を設定してください。

ライセンス

MIT — LICENSE を参照してください。

コメント

MCP は初めてですか?

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

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