見出し画像

猫よりAI 第4回:400人の“仮想専門家”を呼び出そう──Claude×MCP×SQLiteで拡がるアイデア創出の新境地

こんにちは、イー・エージェンシー コミュニケーションデザイン部 広報・PR課の甲斐大樹です。

「自分では思いつかない着眼点を、仮想のスペシャリストから得る」

これは、より多面的なマーケティング戦略やアイデア出しに大いに役立ちます。今回、私たちはAIアシスタント「Claude」と「MCP(Model Context Protocol)」、そしてSQLiteを活用し、なんと400名分の日本人ペルソナデータベースを構築してみました。これにより、好きな条件でペルソナを呼び出し、あたかも実在する専門家やユーザーと対話できるのです。この記事は約2分で読めます。

仮想ペルソナとの対話シーン

なぜペルソナを呼び出して対話するのか?

私たちが新製品を企画する際、実ユーザーへのヒアリングや専門家への相談は理想的ですが、なかなか簡単ではありません。時間やコストもかかります。そこで、仮想的な「合成ペルソナ」に質問すれば、あたかもその道のプロや、平均的なユーザー像から意見をもらうことができるのです。ここでのポイントは「リアリティ」。ランダムな設定ではなく、MBTIによる性格設定、平均的な年齢・収入分布などを反映した、より自然な人物像を作り込んでいます。

MCPとClaudeとSQLiteの関係

MCPとは何か

Model Context Protocol(MCP)は、AIアシスタントであるClaudeと、外部のデータソースやツールをつなぐオープンプロトコルです。
• 例えるなら、Claude(賢い司書)がMCP(特別な図書検索装置)を使って図書館(データベースや外部サービス)から本(情報)を探し出してくれるイメージです。

SQLiteとの連携

SQLiteは軽量なデータベースで、ローカル環境でも手軽に扱えます。MCPサーバーを通じて、Claudeは自然言語によるリクエストからSQLクエリを自動生成し、このSQLiteデータベースにアクセスできます。

「SQLite MCPサーバ」を使えるようにするには、npakaさんのこちらのnote記事を参照してください。

Claudeによる自然言語でのクエリ

専門的なSQLコマンドを知らなくても、「UXデザイナーを探してください」と伝えるだけで、Claudeは裏で必要なSQLを発行します。
これにより、非エンジニアでも高度なデータ操作が可能になります。

実際の手順

手順1:Claudeでペルソナデータ作成

まず、Claudeに依頼して、400名分の「日本人の平均的なデータ分布」を考慮した合成ペルソナ情報を作成してもらいました。

以下、SQLiteのDBデータになるのでよろしければお使いください。claude_desktop_config.jsonの「SQLite MCPサーバ」の設定でこのDBデータを参照できるようにすれば良いはずです。(npakaさんの記事をみて動くようになっていることが必須です)

手順2:MCP SQLiteでデータベース化

生成されたテキストデータをMCPサーバー経由でSQLiteに登録します。これで「検索可能なペルソナ図書館」が完成します。ちなみに、SQLiteで利用するpersona.dbには次のようなスキーマのテーブルを持っています。

persona.db内の `persona_adjusted` テーブルのスキーマは以下の通りです:

基本情報:
1. id (INTEGER, PRIMARY KEY)
2. name (TEXT, NOT NULL)
3. age (INTEGER, NOT NULL)
4. gender (TEXT, NOT NULL)
5. height (INTEGER)
6. weight (INTEGER)

居住地情報:
7. prefecture (TEXT, NOT NULL)
8. city (TEXT)
9. detailed_address (TEXT)

職業・経済情報:
10. occupation (TEXT, NOT NULL)
11. income (INTEGER)
12. organization_name (TEXT)
13. division (TEXT)
14. position (TEXT)
15. professional_skills (TEXT)

生活・社会関係:
16. living_conditions (TEXT)
17. social_relationships (TEXT)
18. lifestyle (TEXT)

個人特性:
19. mbti_type (TEXT)
20. blood_type (TEXT)
21. values_and_consciousness (TEXT)
22. hobbies_and_interests (TEXT)

消費・メディア:
23. consumption_patterns (TEXT)
24. media_usage (TEXT)
25. device_usage (TEXT)
26. brand_attitudes (TEXT)

システム管理:
27. created_at (DATETIME, DEFAULT CURRENT_TIMESTAMP)
28. updated_at (DATETIME, DEFAULT CURRENT_TIMESTAMP)

手順3:ペルソナ呼び出しと成りきり

「UXデザイナーを呼び出して」とチャットに入力すると、MCPを通じてClaudeがSQLiteから該当ペルソナを検索し、そのデータを読んで受け答えします。面白いのは、ここでClaudeに「ではあなたはこのUXデザイナーとして振る舞ってください」と言えば、本当にその人物になりきって会話を続けてくれる点です。

私の場合、MCPの動作を安定させるためにClaude Projectsを利用しています。そのInstructionsも公開しておきます。

あなたはUXUIの専門家です。ユーザーからの質問が来たら、まずSQLiteでpersona.dbのpersona_adjustedテーブルの構造を確認する。
あなたはそのDB内のペルソナの人になりきって答える能力があります。そのペルソナをもとにユーザーの思考、行動、言葉使い(方言)を再現してその人が実在するかのようにリアルに振る舞います。

mcpServersの設定
- SQLiteのデータベース
-- /Users/hiroki.kai/persona.db : persona_adjusted テーブル

## ユーザー追加の時の処理
- persona_adjusted テーブルの構造をチェック
- 入力内容の参考としてランダムで3名のデータを確認
- それらを参考に追加する人に合った最適なデータを作成し登録
- 登録日時を入れる

## ユーザー確認の時の処理
- 次の項目に未入力がないかをチェック
会社名/団体名/学校名 - TEXT型
部署/所属/学科 - TEXT型
役職/レベル/学年 - TEXT型
- 未入力の場合はその人の他の情報に合った内容を検討
-- 学生や主婦など職業についてなさそうな人は当然不要
-- 都市圏へのテレワークや遠隔地勤務の場合も時々ある
- 検討した内容をユーザーに提案する
- ユーザーがOKを出せば更新する
- 更新日時を入れる

Claude ProjectsのInstructions

試してみた結果

佐藤さん(UXデザイナー型ペルソナ)にサービスのUI改善点を尋ねると、論理的な指摘と改善案を提案してくれました。また、白石さん(エンジニア風ペルソナ)

に技術選定の質問をしてみると、特定のフレームワークの利点・欠点などを専門用語も混ぜながら回答。まるで実在するエキスパートが隣にいるような感覚です。

この手法の活用シーン

マーケティングリサーチ:想定ユーザー像からフィードバック
デザインレビュー:UXデザイナー風ペルソナから改善アイデア
技術相談:エンジニア風ペルソナから開発ヒント

もちろん、あくまでも「仮想」に過ぎませんが、思考の幅を広げる上で非常に有効です。

まとめ

MCPとClaude、そしてSQLiteを組み合わせることで、簡単な自然言語指示から「あなた専用の仮想専門家」を呼び出し、対話が可能になります。非エンジニアでも、複雑な検索や分析を手軽に行えるこの手法は、アイデア創出や初期的な検証作業を格段に楽しく、豊かなものにしてくれます。

もし興味がわいたら、あなたも一度「仮想のUXデザイナー」に声をかけてみてください。もしかすると、そこから思いがけないインスピレーションが生まれるかもしれません。

その他AIに関する記事はこちら

少し前の記事ですが、以前からこんなこともやっています。最近の記事はイー・エージェンシーのnoteトップからご覧ください。

AIに関する弊社の社長の考え方もご覧ください。

一緒に働く仲間を募集しています!

イー・エージェンシーでは一緒に働く仲間を募集しています。下記の採用情報をぜひご覧ください。ご応募をお待ちしております!
採用サイトで、もっと先輩社員を知る!

▰在宅勤務・全国内フルリモートOK!エンジニア募集中!▰


いいなと思ったら応援しよう!