mcpField
F
formfurrow

formfurrow

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

formfurrow について

formfurrowは、FurrowFormsを介して顧客、プロジェクト、フォーム、送信内容を管理するローカルブリッジです。フォームデータを保持せず、ホストされたサービスへ呼び出しを転送し、コマンドラインからも利用できます。

主な機能

  1. 01チーム、顧客、プロジェクトの管理
  2. 02フォームの作成と更新
  3. 03フォーム送信内容の取得
  4. 04フレームワーク用埋め込みコードの取得
  5. 05プロジェクトWebhookの設定とテスト
  6. 06各ツールのコマンドライン実行

活用シーン

  1. 01顧客プロジェクトとフォームの整理
  2. 02受信したフォーム送信内容の確認
  3. 03サイトへのフォーム埋め込み
  4. 04新しい送信内容のプロジェクトWebhookへの転送

MCP 対応

捕捉したFurrowFormsのツール群をローカルMCPサーバーとして提供し、ホストされたMCPエンドポイントへツール呼び出しを転送します。同じツール群はコマンドラインからも利用できます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"cloudcorprecords-formfurrow": {
"command": "npx",
"args": [
"-y",
"@reneturcios/formfurrow"
]
}
}
}
起動コマンドnpx -y @reneturcios/formfurrow

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

パッケージ
npm@reneturcios/formfurrow0.1.0
ocighcr.io/cloudcorprecords/formfurrow:0.1.0

ツール

26

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

このツールにパラメーターはありません。

詳細

formfurrow

formfurrow は、ホスト型の FurrowForms MCP サーバーへの小さなローカルブリッジです。FurrowForms は、エンドツーエンドで実行できるフォームバックエンドです。作業をチーム、クライアント、プロジェクトに整理し、プロジェクト内にフォームを作成し、届いた送信内容を読み取り、お好みのフレームワーク用のフォーム埋め込みスニペットを取得し、新しい送信内容が届くたびに独自のエンドポイントへ送信されるようプロジェクトの Webhook を設定できます。

このブリッジはフォームデータを保持しません。ライブエンドポイントから取得した内容をそのまま使い、上流サーバーのツール一覧をローカルで提供して、各ツール呼び出しを上流へ転送し、結果を変更せずに返します。ここに含まれるのは、ラベル付きのサブセットです。上流のプランアップグレード用ファネルツール(create_upgrade_link)は意図的に除外されているため、このパッケージには決済ツールもプランアップグレードツールもありません。残りのすべての機能は、呼び出し元自身のフォームバックエンドにおけるワークスペース管理用です。

ツール

アカウントとチーム:

  • list_teams — 呼び出し元のチームを一覧表示します。必須の引数はありません。
  • update_team — チームを更新します。必須:name。
  • get_account — 呼び出し元のアカウントを読み取ります。必須の引数はありません。
  • update_account — アカウントを更新します。必須の引数はありません。

クライアント:

  • list_clients — クライアントを一覧表示します。必須の引数はありません。
  • get_client — 1 つのクライアントを読み取ります。必須:client_id。
  • create_client — クライアントを作成します。必須:name、slug。
  • update_client — クライアントを更新します。必須:client_id。
  • archive_client — クライアントをアーカイブします。必須:client_id。

プロジェクト:

  • list_projects — プロジェクトを一覧表示します。必須の引数はありません。
  • get_project — 1 つのプロジェクトを読み取ります。必須:project_id。
  • create_project — プロジェクトを作成します。必須:name、slug、client_id。
  • update_project — プロジェクトを更新します。必須:project_id。
  • rotate_project_inbox — プロジェクトの受信箱をローテーションします。必須:project_id。
  • archive_project — プロジェクトをアーカイブします。必須:project_id。

フォームと送信内容:

  • list_forms — フォームを一覧表示します。必須の引数はありません。
  • get_form — 1 つのフォームを読み取ります。必須:form_id。
  • create_form — フォームを作成します。必須:name、slug、project_id。
  • update_form — フォームを更新します。必須:form_id。
  • archive_form — フォームをアーカイブします。必須:form_id。
  • list_submissions — 送信内容を一覧表示します。必須の引数はありません。
  • get_submission — 1 件の送信内容を読み取ります。必須:submission_id。
  • get_snippet — フォームの埋め込みスニペットを取得します。必須:form_id、framework。

Webhook とセットアップ:

  • upsert_project_webhook — プロジェクトの Webhook を登録または置き換えます。必須:webhook_url、project_id。
  • test_webhook — プロジェクトのテスト用 Webhook を送信します。必須:project_id。
  • bootstrap_site — サイトをブートストラップします。必須:name、slug。

各ツールの省略可能なフィールドを含む完全な入力スキーマは、MCP の tools/list レスポンスでそのまま提供されます。

設定

  • FURROWFORMS_MCP_URL(任意)— 上流エンドポイントを上書きします。デフォルトは https://api.furrowforms.com/mcp です。(この上書きフックは、この再構築で独自にラベル付けされた再現です。)
  • FURROWFORMS_API_KEY(任意)— 設定すると、すべての上流リクエストに Authorization: Bearer <key> ヘッダーが付加されます。設定されていない場合、キーのヘッダーは送信されません。(Authorization ヘッダー名はレジストリレコードで固定されています。Bearer スキームとこの転送はラベル付きの再現であり、元のインターフェースはキーなしで取得されました。)
転送の仕組み

最初のツール呼び出し時に、クライアントは上流とのストリーミング可能な HTTP セッションを開きます。JSON-RPC の initialize リクエスト(protocolVersion 2025-03-26、clientInfo name formfurrow)、続いて notifications/initialized 通知、そして呼び出し元の引数を変更せずに含めた tools/call リクエストを送信します。上流が initialize への応答で Mcp-Session-Id ヘッダーを返した場合、 その値はセッションの後続のすべてのリクエストに付与され、 プロセスが終了するまでセッションが再利用されます。応答は 通常の JSON またはサーバー送信イベントの形式で届くことがあります。 どちらも読み取られます。

上流からの成功した結果は、上流が設定した isError フラグも含め、 そのまま渡されます。失敗(JSON-RPC エラー、2xx 以外のステータス、 読み取り不能な応答、または完了できないリクエスト)は、 テキストが formfurrow error: で始まる isError 結果として返されます (この表記は、この再構築版で独自に付けたラベルです)。

CLI

各ツールは、JSON 引数文字列を受け取るサブコマンドとしても実行できます。

npx @reneturcios/formfurrow list_teams
npx @reneturcios/formfurrow create_client '{"name":"Acme","slug":"acme"}'
npx @reneturcios/formfurrow get_snippet '{"form_id":"frm_1","framework":"react"}'
npx @reneturcios/formfurrow --version

終了コード:成功時は 0、isError 結果の場合は 1、使用方法に誤りがある場合は 2 です。

MCP サーバー

npx -y @reneturcios/formfurrow mcp

MCP クライアントの設定:

{
  "mcpServers": {
    "formfurrow": {
      "command": "npx",
      "args": ["-y", "@reneturcios/formfurrow", "mcp"]
    }
  }
}

Docker

docker run -i ghcr.io/cloudcorprecords/formfurrow
docker run --rm ghcr.io/cloudcorprecords/formfurrow --version

コンテナーのデフォルトコマンドは mcp です。そのため、最初の 形式は stdio MCP サーバーとして動作し、それ以外の引数は 通常どおり CLI に渡されます。

開発

npm install
npm run build
npm test
npm run dev

テストスイートはすべて、スタブ化された JSON-RPC 上流を対象に実行されます。実際のネットワーク呼び出しは行いません。

ライセンス

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

コメント

MCP は初めてですか?

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

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