microCMS MCP Server
by burnworks
This project implements a server to access the microCMS API using the Model Context Protocol (MCP). It provides functionalities to retrieve content lists, specific content, and perform content searches and filtering.
View on GitHub
Last updated: N/A
microCMS MCP サーバ
このプロジェクトは、Model Context Protocol (MCP) を使用して microCMS の API にアクセスするサーバを実装したものです。
概要
microCMS MCP サーバは以下の機能を提供します:
- コンテンツ一覧取得:指定したエンドポイントからコンテンツ一覧を取得
- 特定コンテンツ取得:ID を指定して特定のコンテンツを取得
- コンテンツ検索:キーワード検索によるコンテンツの取得
- フィルター検索:複雑な条件でのコンテンツのフィルタリング
インストール
# リポジトリのクローン
git clone https://github.com/burnworks/microcms-api-mcp-server
cd microcms-api-mcp-server
# 依存関係のインストール
npm install
使用方法
必要なファイルのビルド
# TypeScriptをコンパイル
npm run build
dist/
ディレクトリ内に必要なファイルが生成されます。
MCP クライアントからの使用
このサーバは MCP プロトコルに準拠しており、任意の MCP クライアントから接続して使用できます。
Claude デスクトップアプリでの利用
claude_desktop_config.json
に下記のように設定してください。
{
"mcpServers": {
"microcms": {
"command": "node",
"args": [
"/[__path__]/microcms-api-mcp-server/dist/index.js"
],
"env": {
"MICROCMS_API_KEY": "__your_api_key_here__",
"MICROCMS_BASE_URL": "https://your-service.microcms.io"
}
}
}
}
Windows 環境であれば下記のような設定になるかもしれません。
{
"mcpServers": {
"microcms": {
"command": "C:/Program Files/nodejs/node.exe",
"args": [
"C:/[__path__]/microcms-api-mcp-server/dist/index.js"
],
"env": {
"MICROCMS_API_KEY": "__your_api_key_here__",
"MICROCMS_BASE_URL": "https://your-service.microcms.io"
}
}
}
}
利用可能なツール
例えば下記のようなプロンプトで microCMS API にアクセスできます。
blog エンドポイントから、最新の記事10件分のタイトルを取得して
get_contents
コンテンツ一覧を取得します。
パラメータ:
endpoint
: 取得したい microCMS の API エンドポイント(例: 'blog')limit
: 取得する件数(オプション、デフォルト: 10、最大: 100)offset
: 取得開始位置のオフセット(オプション)orders
: 並び替え(オプション、例: 'publishedAt' または '-publishedAt')q
: 全文検索クエリ(オプション)filters
: フィルタ条件(オプション、例: 'title[contains]テスト')fields
: 取得フィールド(オプション、例: 'id,title,publishedAt')depth
: 参照の深さ(オプション、1-3)
get_content
特定のコンテンツを取得します。
パラメータ:
endpoint
: 取得したい microCMS の API エンドポイント(例: 'blog')contentId
: 取得したいコンテンツの IDfields
: 取得フィールド(オプション、例: 'id,title,publishedAt')depth
: 参照の深さ(オプション、1-3)draftKey
: 下書きコンテンツを取得するためのキー(オプション)
search_contents
キーワード検索でコンテンツを取得します。
パラメータ:
endpoint
: 検索対象の microCMS の API エンドポイント(例: 'blog')q
: 検索キーワードlimit
: 取得する件数(オプション、デフォルト: 10、最大: 100)offset
: 取得開始位置のオフセット(オプション)fields
: 取得フィールド(オプション、例: 'id,title,publishedAt')depth
: 参照の深さ(オプション、1-3)
filter_contents
複雑な条件でコンテンツをフィルタリングします。
パラメータ:
endpoint
: 検索対象の microCMS の API エンドポイント(例: 'blog')filters
: フィルター条件(例: 'category[equals]news[and]createdAt[greater_than]2023-01-01')limit
: 取得する件数(オプション、デフォルト: 10、最大: 100)offset
: 取得開始位置のオフセット(オプション)fields
: 取得フィールド(オプション、例: 'id,title,publishedAt')depth
: 参照の深さ(オプション、1-3)
利用可能なリソース
microcms://{endpoint}/{contentId}
特定の ID のコンテンツを取得するためのリソース URI テンプレート。
microcms://{endpoint}
コンテンツ一覧を取得するためのリソース URI テンプレート。
ライセンス
MIT