Skip to main content
Glama
danielma-tic

Fillout.io MCP Server

by danielma-tic

Fillout.io MCP サーバー

Fillout.io API 用の MCP サーバー。フォーム管理、応答処理、分析を可能にします。

トークンの設定

  1. Fillout.io API キーを取得します:

    • Fillout.ioアカウントにログインしてください

    • アカウント設定→APIとWebhooksへ移動

    • 「新しいAPIキーを作成」をクリックします

    • 新しいAPIキーをコピーします

  2. APIキー情報:

    • プロダクションキーはfo_live_で始まります

    • テストキーはfo_test_で始まります

    • テストキーはテストフォームでのみ機能します

    • APIキーを使用すると、アカウント内のすべてのリソースにアクセスできます。

  3. 設定内のyour-fillout-api-key API キーに置き換えます。

⚠️ セキュリティに関する注意事項:

  • APIキーを安全かつ非公開に保つ

  • 開発にはテストキーを使用する

  • 環境変数にキーを保存する

  • 定期的にキーをローテーションする

  • バージョン管理にキーをコミットしない

Related MCP server: Loxo MCP Server

トークンのトラブルシューティング

よくあるエラーメッセージ

  1. 「無効なAPIキーが提供されました」または「認証に失敗しました」

    • 原因: API キーが見つからない、形式が正しくない、または無効です

    • 解決

      • キーがfo_live_またはfo_test_で始まることを確認します

      • 余分なスペースや文字がないか確認する

      • 環境変数が正しく設定されていることを確認する

      • 必要に応じて新しいキーを作成します

  2. 「ライブフォームで使用されるテストモードキー」

    • 原因: テストキー ( fo_test_ ) を本番フォームで使用しています

    • 解決

      • 実稼働フォームにライブキーを使用する

      • 開発用のテストフォームを作成する

      • 適切なキータイプに切り替える

  3. 「レート制限を超えました」

    • 原因: APIリクエストが多すぎる

    • 解決

      • リクエストスロットリングを実装する

      • ダッシュボードで使用状況を確認する

      • リクエストパターンを最適化する

検証手順

  1. APIキーの形式を確認してください:

    # Key should: - Start with 'fo_live_' or 'fo_test_' - Be approximately 50 characters - Contain only letters, numbers, and underscores
  2. テスト API キー:

    curl -H "Authorization: Bearer your-api-key" \ https://api.fillout.com/v1/api/forms

特徴

フォーム管理

  • すべてのフォームを一覧表示する

  • フォームの詳細を取得する

  • 新しいフォームを作成する

  • フォームを削除する

  • フォーム設定を更新する

レスポンス処理

  • フォームの回答を送信する

  • フォームの送信を取得する

  • フィルター応答

  • 回答をエクスポートする

分析

  • 回答率

  • 完了時間

  • 提出傾向

ツール

  1. list_forms

    • アクセス可能なすべてのフォームを取得する

    • パラメータ:

      • limit (オプション): 返されるフォームの数

      • offset (オプション): ページネーションオフセット

    • 戻り値: フォームオブジェクトの配列

  2. get_form

    • 詳細なフォーム情報を取得する

    • パラメータ:

      • formId (文字列): フォーム識別子

    • 戻り値: 質問と設定を含むフォームの詳細

  3. create_form

    • 新しいフォームを作成する

    • パラメータ:

      • name (文字列): フォーム名

      • description (オプションの文字列): フォームの説明

      • questions (配列):質問オブジェクトの配列

        • type : 質問の種類(例:'ShortAnswer'、'MultipleChoice')

        • name : 質問テキスト

        • required : 質問が必須かどうか

        • choices : 複数選択の質問の選択肢の配列

    • 戻り値: 作成されたフォームオブジェクト

  4. get_form_responses

    • フォームの送信を取得する

    • パラメータ:

      • formId (文字列): フォーム識別子

      • filters (オプション): レスポンスフィルター

      • pageSize (オプション): ページあたりの結果数

      • afterDate (オプション): 提出日でフィルタリング

      • beforeDate (オプション): 提出日でフィルタリング

      • status (オプション): 完了ステータスでフィルタリング

    • 戻り値: フォームの回答の配列

  5. submit_form_response

    • 新しい回答を送信する

    • パラメータ:

      • formId (文字列): フォーム識別子

      • responses (配列):回答の配列

        • questionId : 質問識別子

        • value : 応答値

      • calculations (オプション): カスタム計算

    • 返品: 提出確認

設定

Claude Desktopでの使用

Dockerの設定

{ "mcpServers": { "fillout": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "FILLOUT_API_KEY", "mcp/fillout" ], "env": { "FILLOUT_API_KEY": "your-fillout-api-key" } } } }

NPX構成

{ "mcpServers": { "fillout": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-fillout" ], "env": { "FILLOUT_API_KEY": "your-fillout-api-key" } } } }

建物

前提条件

  • Node.js 18以降

  • npmまたはyarn

  • Docker(オプション)

地域開発

# Install dependencies npm install # Run in development mode npm run dev # Build for production npm run build

Dockerビルド

# Build image docker build -t mcp/fillout . # Run container docker run -e FILLOUT_API_KEY=your-key mcp/fillout

フォームの作成

const form = await client.createForm({ name: "Customer Feedback", description: "Please share your experience", questions: [ { type: "ShortAnswer", name: "What did you like most?", required: true }, { type: "MultipleChoice", name: "Would you recommend us?", required: true, choices: ["Yes", "No", "Maybe"] } ] });

回答の提出

const response = await client.submitFormResponse(formId, { responses: [ { questionId: "q1", value: "Great customer service!" }, { questionId: "q2", value: "Yes" } ] });

エラー処理

サーバーは、一般的な問題に関する詳細なエラー メッセージを提供します。

try { const forms = await client.listForms(); } catch (error) { if (error instanceof AuthenticationError) { // Handle invalid API key } else if (error instanceof FilloutError) { // Handle API-specific errors } else { // Handle unexpected errors } }

ライセンス

このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。

-
security - not tested
-
license - not tested
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/danielma-tic/fillout-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server