mcpField
F
FrancoLabs

FrancoLabs

リモート
francolabs.vercel.appデータ・分析01 週間前に更新
リポジトリ公式サイト

FrancoLabs について

FrancoLabs は、調査を管理し、参加者の回答をインサイトや製品機会につなげる UX リサーチプラットフォームです。MCP サーバーは、調査運用、分析、AI に基づく分析、連絡先管理をスコープ制御付きで支援します。

主な機能

  1. 01調査の作成と管理
  2. 02テンプレートとプロジェクトの閲覧
  3. 03回答と分析データの確認
  4. 04AI に基づく分析の生成
  5. 05インサイトと製品機会の管理
  6. 06調査参加者の連絡先の分類

活用シーン

  1. 01調査目的から調査案を作成
  2. 02アンケート品質と回答分析を確認
  3. 03インサイトを製品機会に変換
  4. 04調査参加者を検索して分類

MCP 対応

Streamable HTTP を介して MCP クライアントを FrancoLabs に接続し、OAuth 2.1 またはパーソナルアクセストークンを使用します。調査、回答、分析、プロジェクト、連絡先、製品機会のツールと、テンプレートおよび質問タイプのリソースを提供し、アクセスは許可されたスコープで制御されます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://francolabs.vercel.app/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

詳細

FrancoLabs MCP Server

FrancoLabs — UX リサーチプラットフォーム — をModel Context Protocol経由で AI アシスタントに接続します。Claude、ChatGPT、その他の MCP クライアントを使って、調査の作成・管理、テンプレートの閲覧、参加者の回答や分析結果の確認、AI に基づく分析の実行、インサイトからプロダクトの機会への展開を行えます。

  • エンドポイント: https://francolabs.vercel.app/mcp
  • トランスポート: Streamable HTTP(MCP プロトコル 2025-06-18)
  • 認証: OAuth 2.1(Dynamic Client Registration + PKCE)または Personal Access Token
  • レジストリ: io.github.glauberfrancodesign/francolabs

接続

Claude(claude.ai / Desktop)

設定 → コネクター → カスタムコネクターを追加 → URL:

https://francolabs.vercel.app/mcp

OAuth の同意画面を完了します。付与するスコープを選択でき、読み取り専用アクセスの切り替えもできます。

ChatGPT

Developer Modeを有効にしてから、設定 → コネクター → 追加 → 同じ URL を指定します。OAuth フローで認証します。

Claude Code / Cursor(トークンを手動で設定)

設定 → インテグレーションで Personal Access Token を生成し、次の手順を実行します。

claude mcp add --transport http francolabs \
  "https://francolabs.vercel.app/mcp" \
  --header "Authorization: Bearer <your-token>"

ツール

2 つのスコープが記載されたツールには、両方のスコープが必要です。AIは、言語モデルを呼び出して AI クレジットを使用するツールを示します。モデルに渡されるのは、決定論的なダイジェストと厳選されたインサイトのみで、メールアドレスと電話番号は事前にマスキングされます。

テンプレート、ワークスペース、プロジェクト
ツールスコープ説明
list_question_typestemplates:read質問/ブロックの種類と、正確な設定形式および有効な例
list_templatestemplates:read調査テンプレート。カテゴリーで絞り込み可能
list_workspacesprojects:read所属するワークスペース(チーム)と、それぞれの自分のロール
list_projectsprojects:read自分のプロジェクト。ステータスで絞り込み可能
get_projectprojects:readID で指定した単一のプロジェクト
get_planprojects:readワークスペースのプランと現在の利用状況:上限、現在適用される制限、付与内容と拡張アクセスの終了時期、ユーザーごとの AI 作成上限
create_projectprojects:writeプロジェクトを作成(特定のワークスペースを指定可能)
調査
ツールスコープ説明
list_studiesstudies:readステータスやプロジェクトで絞り込んだ調査
get_studystudies:readブロックと設定を含む調査の全情報
create_studystudies:writeDraft 調査を作成。ブロックは list_question_types に基づいて検証されます
update_studystudies:writeタイトル、ブロック、プロジェクトを更新。settings は部分更新です
set_study_statusstudies:writeDraft の開始、Paused 調査の一時停止・再開、または調査の完了
delete_studystudies:write調査とその回答を完全に削除
generate_study_from_objectivestudies:readAI — リサーチ目標を型付きの調査スケルトンに変換
review_study_qualitystudies:readAI — ブロックごとの品質スコアを含むアンケート設計レビュー
回答、分析、インサイト
ツールスコープ説明
list_responsesresponses:read回答者の生の回答を新しい順に表示します — 回答者が記入した個人データが含まれる場合があります。メールアドレスと電話番号をマスキングするには、redact: true を渡してください
get_study_analyticsresponses:read集計された KPI:回答数、完了率、所要時間、NPS、分布
get_study_digestresponses:readすべての質問形式を対象とした、決定論的で PII を含まない統計ダイジェスト
run_universal_analysisresponses:read + studies:writeAI — 分析全体を実行/更新します(ピン留めされていない AI インサイトを置き換えます)
analysis_chatresponses:readAI — ダイジェストとキャッシュされた分析に基づいて質問します
get_insightsresponses:read厳選されたインサイトカードを、ピン留めされたものから先に表示します
upsert_insightresponses:read + studies:write厳選されたインサイトカードを作成または編集します
rate_insightresponses:read + studies:writeインサイトへのフィードバック 👍/👎 を記録します
suggest_tagsresponses:read + studies:writeAI — 一貫したプロダクト分類体系に沿ってインサイトにタグを付けます
set_insight_tagsresponses:read + studies:write1 件のインサイトのタグを置き換えます
research_memory_queryresponses:read + studies:writeAI — 過去の厳選されたインサイトに基づいて、複数の調査にまたがる質問に回答します
機会と意思決定
ツールスコープ説明
list_opportunitiesresponses:read調査から抽出されたプロダクトの機会
create_opportunity_from_insightsresponses:read + studies:writeAI — インサイトをもとに、機会のドラフトを作成します
suggest_next_research_stepsresponses:readAI — 未解決の機会に伴うリスクを軽減する、3~5 件のフォローアップ調査
generate_decision_packetresponses:read + studies:writeAI — ステークホルダー向けの意思決定資料(Markdown)
list_decision_packetsresponses:read調査用にすでに生成された意思決定資料
export_opportunityresponses:read + studies:write機会を Linear の課題としてエクスポートします — 社内ユーザーのみ
list_external_task_linksresponses:read調査の機会からすでに作成された Linear の課題
連絡先(個人データ)
ツールスコープ説明
list_contactscontacts:readワークスペースの回答者の連絡先 — 個人データ(メールアドレス、名前、ロケール/国、調査への同意、タグ、回答数)
get_contactcontacts:read回答した調査とともに、1 件の連絡先を取得します — 個人データ
tag_contactscontacts:write回答者をセグメント化するため、連絡先のタグを追加/削除します — タグに機密情報を絶対に含めないでください

create_project と create_study はワークスペースに書き込みます — workspaceId (list_workspaces を参照)を渡すか、省略するとデフォルトで最も古いワークスペースが使用されます。 書き込みツールを使用するには、調査のワークスペースでエディター権限(オーナー、管理者、メンバー)も必要です。閲覧者は読み取りのみ可能です。

リソースも 2 つ公開されています:francolabs://templates と francolabs://question-types。

スコープ

templates:read · projects:read · projects:write · studies:read · studies:write · responses:read · contacts:read · contacts:write

contacts:read と contacts:write は、回答者の個人データ(メールアドレス、名前、ロケール/国、調査への同意、タグ、回答履歴)へのアクセスを許可します。これらはオプトインです。承認画面と読み取り専用トークンプリセットではチェックが外れているため、連絡先ベースへのアクセスが必要なアシスタントにのみ許可してください。 responses:read は生の回答を返します。回答者が入力した個人データが含まれる場合もあります。

許可していないツールは tools/list に表示されません。読み取り専用の許可では、スコープに関係なく、すべての書き込みツールがサーバー側でブロックされます。

セキュリティ

  • トークンは SHA-256 ハッシュとしてのみ保存されます。平文で保存されることはありません。
  • リクエストごとに有効期間の短い(5 分)JWT が発行され、すべてのデータアクセスはユーザーごとの行レベルセキュリティのもとで実行されます。サービスロールはトークンの照合にのみ使用されます。
  • OAuth のアクセストークンとリフレッシュトークンの有効期間は 30 日間で、接続の有効期間が 90 日を超えることはありません。アクセスは「設定」→「連携」からいつでも取り消せます。また、クライアントは失効エンドポイント(RFC 7009)でトークンを失効させることができます。
  • OAuth は RFC 9728(保護されたリソースのディスカバリー)、RFC 8414(AS メタデータ)、RFC 7591(動的クライアント登録)、および PKCE S256 に準拠しています。

ソース

このリポジトリには、透明性を確保するためにサーバーのソースコードがミラーリングされています。サーバーは Supabase Edge Function(src/mcp、src/mcp-oauth、src/_shared)として実行されます。


© FrancoLabs. All rights reserved.

コメント

MCP は初めてですか?

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

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