こんにちは、reiです。
AI活用 / AI駆動開発 Advent Calendar 2025 の22日目
の記事です。
Qiitaで記事を書いていると、ふとこんな疑問が湧きませんか?
「結局、Qiitaで "伸びる記事" ってどんな記事なんだろう?」
技術力が高ければ評価される?
それともトレンドに乗ればいい?
そこで今回は、
自作したQiita MCPサーバを使って、AIにQiitaを直接分析させてみました。
この記事では、直近30日間のQiita人気記事(いいね数・ストック数)をデータとして分析し、
今、Qiitaで評価されやすい記事の"共通点"を整理します。
1. 分析方法概要
分析するために使用したツール
- Claude Code (MCPサーバを開発)
- Claude Desktop (ローカルMCPサーバを設定し、分析)
プロセス
① Qiita公式APIを利用し、MCPサーバをClaude CodeでAI駆動開発
② 作成したQiita MCPサーバ経由で記事データを取得
③ いいね数とストック数が多い記事を中心に分析
④ Claude で分析させ、人間が解釈
MCPサーバのAI駆動開発
今回は開発手順について詳しくは記載しませんが、まず概要を記載した SPEC.md ファイルを作成し、
それを Claude Code に渡して開発しました。
プロンプト入力:
SPEC.md を理解してから開発をはじめてください。不明点があれば教えてください。
SPEC.md ファイルは「▶詳細」に記載しますので、ご興味ある方はご覧ください。
あなたは熟練した TypeScript / Node.js エンジニアです。
私は「Qiita の記事データを取得・分析するための MCP サーバ」を
AI駆動開発で作りたいと考えています。
# 目的
- Qiita公式API(v2)を利用し、Claude が Qiita の記事データを取得・分析できるMCPサーバを構築する
# ゴール
- MCP SDK を使った Qiita MCP Server がローカルで起動できる
- 少なくとも以下の Tool を1つ提供する
- qiita_search_items: キーワードやタグでQiita記事を検索できる
- LLM がこの MCP Server を通じて Qiita 記事を取得できる状態にする
# 制約・方針
- Qiita公式API(v2)のみを使用する
- 認証は Personal Access Token(read-only)を想定
- 書き込み系API(投稿・編集・削除)は使わない
- MCP SDK(@modelcontextprotocol/sdk)を使用する
- 実装は「最小構成 → 段階的拡張」を前提とする
- 可読性を優先し、過度な抽象化はしない
# 技術スタック
- Node.js
- TypeScript
- fetch API(または node-fetch)
- 環境変数で QIITA_TOKEN を受け取る
# 作業ステップ
1. Qiita MCP Server の最小構成(プロジェクト構成)を提案する
2. MCPサーバのエントリーポイントとなる TypeScript ファイルを書く
3. qiita_search_items Tool を1つ実装する
4. Qiita API 呼び出し部分をシンプルに実装する
5. サーバの起動方法を README レベルで説明する
# qiita_search_items Tool の仕様
- 入力:
- query: string(Qiita API の検索クエリ)
- 処理:
- https://qiita.com/api/v2/items?query={query}
を GET で呼び出す
- 出力:
- 記事タイトル
- URL
- いいね数
- ストック数
- タグ
- 投稿日時
を含む JSON(必要最低限でOK)
# 注意点
- まずは「動くこと」を最優先する
- エラーハンドリングは最低限でよい
- 後で Tool を追加・拡張しやすい構造にする
この前提に従って、まずは
「最小構成の Qiita MCP Server の設計と初期実装」から始めてください。
2. Claude に分析させる
Claudeで実際に入力したプロンプトはこちらです。
① qiita_search_items を使って、直近30日以内(2025/11/21-2025/12/20)に投稿され、
いいね数とストックの数が多い記事を上位50記事程度取得してください。
② 取得した記事をもとに、以下の観点で分析してください。
- テーマ分類(技術領域)
- 使用されているタグの傾向
- タイトルの語り口・構文パターン
- 記事内容の粒度(入門 / 実践 / 設計・思想)
③ 最後に、"今Qiitaで伸びやすい記事の特徴" を5点にまとめてください。
3. 分析結果
3.1. テーマ分類
分析結果は図のようになりました。
割合の高い上位3テーマに投稿される記事の特徴は下記のとおりです。
| テーマ | 特徴 |
|---|---|
| AI/機械学習/生成AI | 最新AIツールの実践的な活用記事が多数 |
| 失敗談・体験記・ポエム | 技術的失敗を赤裸々に語る体験記 |
| セキュリティ | 初心者向け解説と実践的な攻撃デモの両方 |
3.2. 使用されているタグの傾向
特に多く使われていたタグは、以下の3つでした。
- AI関連 (AI, AIエージェント, AI駆動開発, 生成AI)
- 初心者 (初心者、新人プログラマ応援、初学者向け)
- Python
そして、タグの特徴は、下記のとおりです。
- 「初心者」タグの万能性:技術的に高度な内容(セキュリティ、AI)でも「初心者向け」とすることで心理的ハードルを下げている
- 感情・体験タグの効果:「ポエム」「失敗談」「やらかし」など、技術以外の人間味を出すタグが高評価
- トレンド即応性:Claude Code、Antigravity、Geminiなど、最新技術に素早く対応
- 複合タグ戦略: 「AI×セキュリティ」「AI×教育」など、複数領域を掛け合わせる
3.3. タイトルの語り口・構文パターン
人気記事のタイトルを分析すると、以下のパターンに分類できます。
A. 共感・自己開示型(30%): 15記事
「〜して気づいた」「才能ゼロの私でも〜」など、読者の「自分もそうだ」という共感を引き出すようなタイトル。
B. 問題提起・警告型(24%): 12記事
「余裕だったはずが〜」「〜となってしまった」のような危機感や好奇心を刺激するタイトル。
C. 解説・入門・網羅型(22%): 11記事
「世界一わかりやすい〜【完全図解】」「〜完全ガイド」「〜一覧」など、保存版として価値や安心感を感じさせるようなタイトル。
D. 技術比較・対立型(10%): 5記事
「〜 vs 〜」など、 論争的なテーマで技術選定や学びを深めたい時参考にできるようなタイトル。
E. 成果報告・実践型(14%): 7記事
「〜を作った話」「〜してみた」など、経験段で具体的な内容と成果が信頼性を高めるタイトル。
言語的特徴としては、「感情」「定量的表現」「カジュアルな表記」がポイントのようです。
3.4. 記事内容の粒度
入門レベルと実践レベルがほぼ同数で全体の78%を占めるようです。
入門レベルでは
- 図解・ビジュアル重視
- 網羅的な情報整理
- 初心者の心理的ハードルを下げる工夫
がされており、実践レベルでは、
- ハンズオン要素
- 具体的なコード例
- Tips集
- ツール紹介
- 実装手順
が多く見受けられました。
4. Qiitaで評価されやすい記事の特徴5つ
4.1. 失敗と自己開示のストーリーテリング × 技術的価値
失敗談が圧倒的に高評価を獲得しています。
成功の鍵
- 等身大の失敗を赤裸々に語ることで共感を呼ぶ
- ただし単なる愚痴ではなく、失敗から得た技術的な学びや教訓を必ず含める
- タイトルで具体的な失敗を明示
- 「やらかし」「失敗談」「ポエム」タグで心理的ハードルを下げる
4.2. 最新AI技術への即応 × 実用的な切り口
AI関連記事が全体の32%を占め、特にClaude Code、Gemini、GitHub Copilot、Difyなど2025年に普及したツールの記事が多数ランクインしています。
成功の鍵
- 新技術リリース後、1週間以内に記事を投稿(速報性)
- 「使い方」だけでなく「小技集」「落とし穴」など独自の切り口
- AI礼賛ではなく批判的・実践的な視点
- 具体的な活用事例(工数50%削減、セキュリティ監査など)を示す
4.3. 「世界一わかりやすい」× 図解 × 初心者訴求の三位一体
専門性の高いテーマ(セキュリティ、Docker)でも、「世界一わかりやすい」や「完全図解」をタイトルに入れることで初心者層を取り込む戦略が有効です。
成功の鍵
- タイトルに「世界一」「完全」「徹底」など最上級表現を使用
- 【完全図解】【コピペOK】など括弧書きで付加価値を明示
- 「初心者」タグは上級者も「復習」として読める安心感を与える
- 実際に図解・ビジュアルを豊富に使い、タイトル倒れにしない
4.4. 技術比較・二項対立の明示 × 実務判断軸の提供
対立構造を打ち出すことで読者の興味を引き、議論を喚起します。
成功の鍵
- 「vs」形式で二項対立を明確化
- 単なる比較ではなく「どちらを選ぶべきか」という実務的な判断基準を提示
- 両者の長所・短所をフェアに分析し、一方的な主張を避ける
- コメント欄での議論を促進するオープンな姿勢
4.5. 口語調・感情表現 × SNS拡散を意識したキャッチーさ
技術記事でありながら感情的・口語的な表現を使用する記事が高評価です。
成功の鍵
- 堅苦しい技術用語だけでなく、感情を揺さぶる言葉を選ぶ
- 「地獄」「祝🎉」など極端な表現でインパクトを出す
- 関西弁や口語体でフレンドリーさを演出
- ただし内容は技術的に正確であることが大前提
- Twitter/Xでの拡散を意識した140文字以内で完結するタイトル構造
5. まとめ
今回、AIにQiitaを分析させて一番面白かったのは、Qiitaは「技術力の高さ」を競う場所ではなく、
「学びのプロセス」を共有する場所 として評価されているという点が、データとしてはっきり出たことでした。
失敗、遠回り、勘違い、やらかし...そういった要素を含んだ記事ほど、結果的に多くの人に読まれています。
私自身も、Qiitaでは、「完璧な実装」よりも「なぜそうなったのか」「どこでつまずいたのか」が書かれている記事から学ぶことが多いと感じています。
技術記事を書くというと、つい「正しいことを書かなければ」「レベルの高い内容でなければ」と思ってしまいがちですが、
Qiitaでは 試行錯誤の過程そのものが価値になる のだと思います。
この記事が、「まだ整理できていないけど、書いてみようかな」と思っている誰かの背中を、少しでも押せたら嬉しいです。
今後もAIに関する学びや実践を記事にしていきますので、引き続きよろしくお願いします。