Skip to main content
Glama

Qiita MCP Server

Qiita および Qiita Team の記事検索・閲覧機能を提供する MCP (Model Context Protocol) サーバー。

特徴

  • 📖 記事の検索・閲覧

  • 🏷️ タグによる絞り込み

  • 👤 ユーザー別記事取得

  • 💬 コメント取得

  • ⭐ ストック(ブックマーク)記事の取得

  • 🔒 Qiita Team 対応

  • ⚡ Hono による高速なルーティング

  • ✅ Zod による型安全なバリデーション

技術スタック

  • Hono: 軽量で高速な Web フレームワーク

  • Zod: TypeScript ファーストなスキーマバリデーション

  • MCP SDK: Model Context Protocol の公式 SDK

  • TypeScript: 型安全な開発

仕様書

詳細な仕様は docs/specification.md を参照してください。

インストール

npm install
npm run build

起動

サーバーの起動

npm start

デフォルトでは http://localhost:3000 で起動します。

環境変数

ポート設定(オプション)

export PORT=3000

Qiita アクセストークン(オプション)

認証なしでも公開記事は閲覧できますが、レート制限が厳しくなります。 アクセストークンを設定することを推奨します。

export QIITA_ACCESS_TOKEN=your_access_token_here

アクセストークンは Qiita の設定ページ で取得できます。

Qiita Team(オプション)

Qiita Team を使用する場合は、チーム名を設定します。

export QIITA_TEAM=your_team_name

環境変数を設定して起動

QIITA_ACCESS_TOKEN=your_token PORT=3000 npm start

Claude Desktop での設定

本サーバーは SSE (Server-Sent Events) 方式で動作します。

Claude Desktop の設定ファイルに以下を追加します。

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "qiita": {
      "url": "http://localhost:3000/sse"
    }
  }
}

重要: Claude Desktop から接続する前に、サーバーを起動しておく必要があります。

サーバーを起動してから Claude Desktop を起動、またはリロードしてください。

環境変数付きで起動する場合

別のターミナルウィンドウで以下のコマンドを実行してサーバーを起動します:

QIITA_ACCESS_TOKEN=your_token npm start

Qiita Team を使用する場合:

QIITA_ACCESS_TOKEN=your_token QIITA_TEAM=your_team_name npm start

提供されるツール

search_items

記事を検索します。

パラメータ:

  • query (string, optional): 検索クエリ

  • page (number, optional): ページ番号(1-100、デフォルト: 1)

  • per_page (number, optional): 1ページあたりの件数(1-100、デフォルト: 20)

使用例:

Qiita で「MCP Server」を検索してください

get_item

特定の記事を取得します。

パラメータ:

  • item_id (string, required): 記事ID

使用例:

記事 ID が "abc123" の記事を表示してください

get_items_by_tag

特定のタグが付いた記事を取得します。

パラメータ:

  • tag_id (string, required): タグID

  • page (number, optional): ページ番号

  • per_page (number, optional): 1ページあたりの件数

使用例:

Python タグの記事を表示してください

get_items_by_user

特定のユーザーの記事を取得します。

パラメータ:

  • user_id (string, required): ユーザーID

  • page (number, optional): ページ番号

  • per_page (number, optional): 1ページあたりの件数

使用例:

ユーザー "example_user" の記事を表示してください

get_tags

タグ一覧を取得します。

パラメータ:

  • page (number, optional): ページ番号

  • per_page (number, optional): 1ページあたりの件数

  • sort (string, optional): ソート順("count" または "name")

使用例:

人気のタグ一覧を表示してください

get_item_comments

記事のコメントを取得します。

パラメータ:

  • item_id (string, required): 記事ID

使用例:

記事 "abc123" のコメントを表示してください

get_user_stocks

ユーザーがストックした記事を取得します。

パラメータ:

  • user_id (string, required): ユーザーID

  • page (number, optional): ページ番号

  • per_page (number, optional): 1ページあたりの件数

使用例:

ユーザー "example_user" がストックした記事を表示してください

開発

# ビルド
npm run build

# 開発モード(ウォッチモード)
npm run dev

# 起動
npm start

ライセンス

MIT

参考

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

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/ningen/qiita-mcp-server'

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