mcpField
F
Frappe Dev MCP Server

Frappe Dev MCP Server

ローカル
github.com/SajmustafaKe開発ツール434 週間前に更新

Frappe Dev MCP Server について

Frappe Dev MCP Serverは、Frappe/ERPNext開発者向けにDocType、アプリ、benchコマンド、API、データベース移行のAI支援ツールを提供します。MCPクライアント向けにSSEとstdioのトランスポートに対応しています。

主な機能

  1. 01DocType定義とコントローラーの生成
  2. 02benchコマンドの実行
  3. 03Frappeアプリの作成と管理
  4. 04カスタムAPIエンドポイントの生成
  5. 05データベース移行の実行
  6. 06アプリのディレクトリ構成の確認

活用シーン

  1. 01Frappeアプリ用DocTypeの作成
  2. 02サイトに対するbenchコマンドの実行
  3. 03カスタムAPIエンドポイントの追加
  4. 04アプリのインストールやサイトの移行

MCP 対応

DocType作成、bench実行、アプリ管理、エンドポイント生成、移行などのFrappeおよびERPNext開発ツールをMCPクライアントに公開します。SSEとstdioのトランスポートに対応しています。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"sajmustafake-frappe-dev": {
"command": "npx",
"args": [
"-y",
"frappe-dev-mcp-server"
],
"env": {
"FRAPPE_PATH": "<FRAPPE_PATH>"
}
}
}
}
起動コマンドnpx -y frappe-dev-mcp-server
設定が必要な環境変数
FRAPPE_PATHPath to your Frappe/ERPNext bench directory (defaults to current directory if not specified)

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

パッケージ
npmfrappe-dev-mcp-server1.0.1

ツール

29

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
fieldsarrayはいフィールド定義の配列
modulestringはいDocType が属するモジュール
app_namestringはいFrappe アプリの名前
is_childbooleanいいえ
doctype_namestringはいDocType の名前
is_submittablebooleanいいえ

詳細

Frappe/ERPNext MCP サーバー

Frappe/ERPNext の開発を AI アシスタントで支援する Model Context Protocol(MCP)サーバーです。DocType の作成、bench コマンドの実行、アプリの管理など、Frappe の開発タスクに役立つツールを提供します。

機能

  • DocType の作成:DocType の JSON 定義と Python コントローラーを自動生成します
  • Bench コマンド:開発ワークフロー向けに bench コマンドを実行します
  • アプリ管理:Frappe アプリの作成、インストール、管理を行います
  • API エンドポイント:カスタム API エンドポイントを生成します
  • データベース操作:マイグレーションとデータベース管理を実行します
  • アプリ構造の分析:アプリのディレクトリ構造を詳しく確認できます

インストール

  1. このリポジトリをクローンまたはダウンロードします

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

    npm install
    
  3. サーバーをビルドします:

    npm run build
    

設定

FRAPPE_PATH 環境変数に、Frappe bench ディレクトリのパスを設定します:

export FRAPPE_PATH="/path/to/your/frappe/bench"

設定されていない場合、デフォルトで /Users/mac/ERPNext/mkahawa が使用されます。

使用方法

GitHub Copilot Chat を使用する場合(SSE トランスポート)

このサーバーは、GitHub Copilot Chat で使用する SSE トランスポートに対応しています:

  1. SSE サーバーをビルドして実行します:

    npm run build
    npm run sse
    
  2. サーバーは http://localhost:3000/sse で GitHub Copilot Chat に自動的に検出されます

Claude Desktop を使用する場合(Stdio トランスポート)

以下の設定を Claude Desktop の設定ファイル(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json)に追加します:

{
  "mcpServers": {
    "frappe-dev": {
      "command": "node",
      "args": ["/Users/mac/ERPNext/mkahawa/frappe-mcp-server/dist/index.js"],
      "env": {
        "FRAPPE_PATH": "/Users/mac/ERPNext/mkahawa"
      }
    }
  }
}
その他の MCP クライアントを使用する場合

サーバーを直接実行します:

node dist/index.js

利用可能なツール

frappe_create_doctype

JSON 定義と Python コントローラーを含む、新しい Frappe DocType を作成します。

パラメーター:

  • app_name:Frappe アプリの名前
  • doctype_name:DocType の名前
  • module:DocType が属するモジュール
  • fields:フィールド定義の配列
  • is_submittable:DocType を送信可能にするかどうか(デフォルト:false)
  • is_child:子 DocType かどうか(デフォルト:false)
frappe_run_bench_command

Frappe の開発向けに bench コマンドを実行します。

パラメーター:

  • command:実行する bench コマンド
  • site:サイト名(任意)
  • cwd:作業ディレクトリ(任意)
frappe_get_app_structure

Frappe アプリのディレクトリ構造を取得します。

パラメーター:

  • app_name:Frappe アプリの名前
frappe_create_api_endpoint

Frappe アプリ用のカスタム API エンドポイントを作成します。

パラメーター:

  • app_name:Frappe アプリの名前
  • endpoint_name:API エンドポイントの名前
  • method:HTTP メソッド(get、post、put、delete)(デフォルト:get)
  • code:API エンドポイント用の Python コード
frappe_migrate_database

Frappe サイトのデータベースマイグレーションを実行します。

パラメーター:

  • site:マイグレーションするサイト名
frappe_install_app

サイトに Frappe アプリをインストールします。

パラメーター:

  • app_name:インストールするアプリの名前
  • site:サイト名
frappe_create_app

新しい Frappe アプリを作成します。

パラメーター:

  • app_name:新しいアプリの名前
  • title:アプリのタイトル
  • publisher:発行者名
  • description:アプリの説明(任意)

使用例

DocType の作成
{
  "app_name": "my_app",
  "doctype_name": "Customer Order",
  "module": "Orders",
  "fields": [
    {
      "fieldname": "customer",
      "label": "Customer",
      "fieldtype": "Link",
      "options": "Customer",
      "reqd": true
    },
    {
      "fieldname": "order_date",
      "label": "Order Date",
      "fieldtype": "Date",
      "reqd": true
    },
    {
      "fieldname": "total_amount",
      "label": "Total Amount",
      "fieldtype": "Currency",
      "reqd": true
    }
  ]
}
Bench コマンドの実行
{
  "command": "migrate",
  "site": "my_site.local"
}

開発

サーバーを変更するには:

  1. src/ ディレクトリ内のファイルを編集します
  2. npm run build を実行して TypeScript をコンパイルします
  3. 開発モードで npm run dev を実行してテストします

要件

  • Node.js 18+
  • Frappe/ERPNext bench 環境
  • Frappe bench コマンドへのアクセス

ライセンス

MIT ライセンス — 詳細は LICENSE ファイルを参照してください

コメント

MCP は初めてですか?

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

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