13
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SQL初心者がMCPサーバー連携したAIに分析業務を代行してもらった話

13
Last updated at Posted at 2025-12-03

この記事について

プロダクトのデータ分析基盤のMCPサーバーに接続したAIエージェントにプロンプトで指示することで、AIエージェントにSQLを書かせて欲しいデータを抽出することができます。

この記事では、SQL初心者&AIエージェント初心者(筆者)がこの方法でデータ分析した際に得た気づきを共有し、読者の皆さまの参考にしていただけたらと思います。

この記事の想定読者

  • SQLを習得したい/習得中だがモノにしきれずもどかしい非エンジニアのプロダクトマネジャー(PdM)
  • PdM問わず、AIを使っていろんな業務を時短できないかなと考えている方

※具体的なMCPサーバーの構築方法やAIとの接続方法については、割愛しています。

自己紹介

初めまして、朝日新聞社のおおのと申します。
編集部門から異動 → 朝日新聞デジタル版(以下、デジタル版と呼びます)のPdM3年目(32)です。
SQLを書いてBigQuery内のデータテーブルから必要なデータを抽出する基本的な操作を学習しました。ただ、サブクエリやJOIN句などをヒントなしで駆使できるかは微妙...というレベルです。

SQLの学習には以下の動画を利用しました。練習問題と解説が充実していておすすめです!

膨大なデータに心が折れたSQL初心者

弊社のプロダクトである「朝日新聞(デジタル版)」のユーザー行動データや、お客様の契約日や契約プランに関するデータなど、様々なシステムのデータを連携して分析ができるように、弊社にはBigQuery上に構築したデータ基盤があり、SQLを組んで抽出できるようになっています。
ただ、基盤上にあるテーブルの数やデータの種類は、SQLの研修で使うようなデータセットとは比べ物にならないくらい膨大です。

部署内のデータエンジニアの方に分析を依頼することもできますが、別のプロジェクトでエンジニアさんが忙しい時に何でもかんでもお願い、というわけにはいきません。
必要なデータの分析は自力でできるのがPdMの動きとしてはベスト、とわかっていつつも、SQL初心者の私にとっては正直心が折れかけていました…。

先輩がMCPサーバーを構築してくれた

そんな中、部署のシニアエンジニアの方が、分析基盤用のMCPサーバーを構築してくれました。
業務で使っているAIエージェント(私の場合はCursor)と接続することで、自然言語で指示した内容に応じてAIがSQLを生成し、必要なデータを抽出できるようになりました。
これを使えば、自分でクエリを書かなくても分析が進むかもしれない、と目論んだ私は早速試してみました。

注: MCP(Model Context Protocol)サーバーは、AIとさまざまなツールやデータソースを安全に接続するための橋渡し役のような存在です

プロンプトの例

2025年8月の、webにおけるコメントプラス機能の閲覧数と、閲覧者数を教えてください
閲覧数および閲覧者数の定義は以下です。

# コメント閲覧数の定義
AdobeAnalyticsで、以下のいずれかを含むイベントが発生した回数
- {コメント閲覧イベント発生時に送信する値を列挙}

# コメント閲覧数の定義
AdobeAnalyticsで、以下のいずれかを含むイベントが発生した回数
上記のイベントを1回以上発生させたユーザー数

プロンプト中の「コメントプラス」とは、朝日新聞の記事に外部の専門家が付け加えた解説や読み解きコメントを読むことができる有料会員機能です。

使ってみた感想

私が感じた最大のメリットは、自力でクエリを組もうとした時に直面していた、「大海原の中から一粒のダイヤを見つけなきゃいけないような絶望感」が解消されたことです。
「どのテーブルのどのカラムを参照すればいいんだっけ」といった初心者が直面する壁は、全部AIが乗り越えてくれます。

メリットを最大限に得るためにも、以下の点は気をつけるといいなと感じました。

注意点1: 鵜呑みにしない

出力された結果を鵜呑みにせず、行動データだったらGA4など解析ツールのコンソールで可視化した数字など、参照点となる指標とつきあわせるなどして最低限の検証をしたほうが良いです。

Cursorの出力結果と、計測ツールに利用しているAdobe Analytics(AA)で可視化した数値の差分について尋ねたら色々教えてくれて勉強になりました。

スクリーンショット 2025-11-27 16.11.06.png

注意点2: 手がかりがあればAIに教えてあげる

抽出したい数字についてある程度情報があれば(イベント発生時に送信される変数・値など)、プロンプトに含めてあげたほうが早く目的の答えに辿り着けるかもしれません。ノーヒントで指示すると、AIが自力でいろんなデータセットを検索するので、時間がかかります。

注意点3: BigQuery、SQLに関する最低限の知識

使っている解析ツール(GA4、AA)のログ設計や、SQLの基本的な文構造をわかっていた方が、より的確なプロンプトを書きやすいかなと思います。
あとBigQueryは従量課金制なので、使い方によっては想定外にお金がかかってしまうことがあります。WHERE句などを活用し、調べたい範囲は必要最小限に限定することをおすすめします。

(こちらはCursor経由でクエリを叩き過ぎた結果たくさん課金が発生してしまい怒られてしまった図)
スクリーンショット 2025-11-27 20.09.54.png

終わりに

プロダクトへの実装から業務改善ツールとしての利用まで、生成AIの利活用があらゆる現場で求められる時代になりました。
弊社でも今年に入って導入の動きが一気に進み、私も普段の業務で少しずつ使うようになりました。

こちらの記事(【連載】100日間でAIエージェントを組織に浸透させるプロジェクト|朝日新聞社CTO室)もご覧ください↓

少しずつ慣れていきたいAI活用

実際に使ってみると、プロンプトのブラッシュアップといった地道な作業は、想像していたSF映画みたいな世界観とは違うな〜と思うこともあります。

一方で、対話型AIとやり取りを繰り返すうちにアウトプットの質が加速度的によくなっていくのを目の当たりにすると、AIの奥深さを感じます。

高度な使い方はまだまだできそうにありませんが、少しずつうまく付き合えて行けたらいいなと思っています。

13
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?