Skip to main content
Glama

Strapi MCP Server

ストラピMCP

Strapi CMS 用の MCP サーバー。モデル コンテキスト プロトコルを通じてコンテンツ タイプとエントリへのアクセスを提供します。

概要

この MCP サーバーは、任意の Strapi CMS インスタンスと統合して、次の機能を提供します。

  • Strapiコンテンツタイプへのリソースとしてのアクセス
  • Strapiでコンテンツタイプを作成および更新するためのツール
  • コンテンツエントリを管理するためのツール(作成、読み取り、更新、削除)
  • 開発モードでのStrapiのサポート

設定

環境変数

資格情報を保存するには、プロジェクト ルート内の.envファイルを使用することをお勧めします。

  • STRAPI_URL : StrapiインスタンスのURL(デフォルト: http://localhost:1337
  • STRAPI_ADMIN_EMAIL : Strapi 管理者ユーザーのメール アドレス (完全な機能、特にスキーマ アクセスに推奨)。
  • STRAPI_ADMIN_PASSWORD : Strapi 管理者ユーザーのパスワード (推奨)。
  • STRAPI_API_TOKEN : (オプションのフォールバック) APIトークン。管理者の資格情報が提供されていない場合に使用できますが、権限が制限される場合があります。
  • STRAPI_DEV_MODE : 開発モード機能を有効にするには"true"に設定します (デフォルトはfalse )。

.envファイルの例:

STRAPI_URL=http://localhost:1337 STRAPI_ADMIN_EMAIL=your_admin_email@example.com STRAPI_ADMIN_PASSWORD=your_admin_password # STRAPI_API_TOKEN=your_api_token_here # Optional

**重要:**資格情報のコミットを回避するには、 .gitignoreファイルに.envを追加します。

インストール

npm install strapi-mcp

ランニング

推奨方法 ( .envファイルを使用):

プロジェクトがビルドされていることを確認してください( npm run build )。次に、Node.js v20.6.0+ で--env-fileフラグを指定してサーバーを実行します。

node --env-file=.env build/index.js

代替案(環境変数を直接使用):

export STRAPI_URL=http://localhost:1337 export STRAPI_ADMIN_EMAIL=your_admin_email@example.com export STRAPI_ADMIN_PASSWORD=your_admin_password # export STRAPI_API_TOKEN=your-api-token # Optional fallback export STRAPI_DEV_MODE=true # optional # Run the globally installed package (if installed via npm install -g) strapi-mcp # Or run the local build directly node build/index.js

特徴

  • コンテンツの種類を一覧表示して読む
  • エントリを取得、作成、更新、削除する
  • メディアファイルをアップロードする
  • 関係の接続と切断
  • コンテンツタイプスキーマを取得する

変更履歴

0.1.6

  • create_content_typeツールを追加しました: Content-Type Builder API 経由で新しいコンテンツ タイプを作成できるようになりました (管理者の資格情報が必要です)。
  • **管理者の資格情報の優先順位:**コンテンツ タイプとスキーマを取得するために管理者のメール アドレスとパスワードを優先するようにロジックを更新し、信頼性を向上しました。
  • **更新されたドキュメント:**認証方法と推奨される実行手順を明確にしました。

0.1.5

  • 複数のフォールバック方法によるコンテンツタイプの検出の改善
  • より堅牢なエラー処理とログ記録を追加しました
  • コンテンツタイプのスキーマ推論の強化

0.1.4

  • より具体的なエラーコードによるエラー処理の改善
  • ResourceNotFoundおよびAccessDeniedエラー コードを追加しました
  • 一般的な API エラーに対するエラー メッセージの改善

0.1.3

  • 初回公開リリース

ライセンス

マサチューセッツ工科大学

Strapi-mcp MCP サーバー

Strapi CMS用のMCPサーバー

これは、Strapi CMSと統合されたTypeScriptベースのMCPサーバーです。MCPプロトコルを介してStrapiのコンテンツタイプとエントリにアクセスできるため、以下のことが可能になります。

  • Strapiコンテンツタイプをリソースとしてアクセスする
  • コンテンツエントリの作成、読み取り、更新、削除
  • MCPツールを通じてStrapiコンテンツを管理する

特徴

リソース

  • URI 経由でコンテンツ タイプを一覧表示してアクセスするstrapi://content-type/ )
  • 各コンテンツタイプはエントリをJSONとして公開します
  • 構造化コンテンツへのアクセスのためのアプリケーション/JSON MIME タイプ

ツール

  • list_content_types - Strapiで利用可能なすべてのコンテンツタイプを一覧表示します
  • get_entries - フィルタリング、ページ区切り、並べ替え、リレーションの設定など、特定のコンテンツタイプのエントリを取得します。
  • get_entry - IDで特定のエントリを取得する
  • create_entry - コンテンツタイプの新しいエントリを作成する
  • update_entry - 既存のエントリを更新する
  • delete_entry - エントリを削除する
  • upload_media - Strapiにメディアファイルをアップロードする
  • get_content_type_schema - 特定のコンテンツ タイプのスキーマ (フィールド、タイプ、リレーション) を取得します。
  • connect_relation - 関連エントリをエントリの関係フィールドに接続します。
  • disconnect_relation - エントリの関係フィールドから関連エントリを切断します。
  • create_content_type - コンテンツ タイプ ビルダー API を使用して新しいコンテンツ タイプを作成します (管理者権限が必要です)。

高度な機能

フィルタリング、ページネーション、ソート

get_entriesツールは、高度なクエリ オプションをサポートしています。

{ "contentType": "api::article.article", "filters": { "title": { "$contains": "hello" } }, "pagination": { "page": 1, "pageSize": 10 }, "sort": ["title:asc", "createdAt:desc"], "populate": ["author", "categories"] }
リソースURI

リソースにはさまざまな URI 形式でアクセスできます。

  • strapi://content-type/api::article.article - すべての記事を取得する
  • strapi://content-type/api::article.article/1 - ID 1の記事を取得します
  • strapi://content-type/api::article.article?filters={"title":{"$contains":"hello"}} - フィルタリングされた記事を取得する

発達

依存関係をインストールします:

npm install

サーバーを構築します。

npm run build

自動リビルドを使用した開発の場合:

npm run watch

インストール

この MCP サーバーを展開およびテストする方法の詳細な手順については、 DEPLOYMENT.mdファイルを参照してください。

クイックセットアップ:

  1. サーバーをビルドする: npm run build
  2. Strapiインスタンスを設定し、APIトークンを取得する
  3. Claude Desktop にサーバー設定を追加します。

MacOS の場合: ~/Library/Application Support/Claude/claude_desktop_config.json Windows の場合: %APPDATA%/Claude/claude_desktop_config.json

{ "mcpServers": { "strapi-mcp": { "command": "/path/to/strapi-mcp/build/index.js", "env": { "STRAPI_URL": "http://localhost:1337", "STRAPI_API_TOKEN": "your-api-token-here", "STRAPI_DEV_MODE": "false" } } } }

環境変数

  • STRAPI_URL (オプション): StrapiインスタンスのURL (デフォルトはhttp://localhost:1337 )
  • STRAPI_ADMIN_EMAIL & STRAPI_ADMIN_PASSWORD (推奨): Strapi管理者ユーザーの認証情報。コンテンツタイプスキーマの取得など、すべての機能を利用するために必要です。
  • STRAPI_API_TOKEN (オプションのフォールバック):Strapi APIトークン。管理者の資格情報が提供されていない場合でも使用できますが、トークンの権限に基づいて機能が制限される場合があります。
  • STRAPI_DEV_MODE (オプション): 開発モード機能を有効にするには「true」に設定します (デフォルトは false)

認証の優先順位

サーバーは、次の順序で認証方法を優先順位付けします。

  1. 管理者のメールアドレスとパスワード ( STRAPI_ADMIN_EMAILSTRAPI_ADMIN_PASSWORD )
  2. APIトークン( STRAPI_API_TOKEN )

最良の結果を得るには、管理者資格情報を使用することを強くお勧めします。

Strapi 資格の取得

  • **管理者の資格情報:**既存のスーパー管理者のメール アドレスとパスワードを使用するか、Strapi 管理パネル (設定 > 管理パネル > ユーザー) で専用の管理者ユーザーを作成します。
  • APIトークン: (オプションのフォールバック)
  1. Strapi管理パネルにログイン
  2. 設定 > APIトークンに移動します
  3. 「新しいAPIトークンを作成」をクリックします
  4. 名前、説明、トークンの種類(「フルアクセス」が望ましい)を設定します
  5. 生成されたトークンをコピーして、MCP サーバー構成で使用します。

デバッグ

MCPサーバーはstdio経由で通信するため、デバッグが困難になる場合があります。パッケージスクリプトとして提供されているMCP Inspectorの使用をお勧めします。

npm run inspector

インスペクターは、ブラウザでデバッグ ツールにアクセスするための URL を提供します。

使用例

MCPサーバーの設定と実行が完了したら、Claudeと組み合わせてStrapi CMSと連携できるようになります。以下に例をいくつか示します。

コンテンツタイプのリスト

use_mcp_tool( server_name: "strapi-mcp", tool_name: "list_content_types", arguments: {} )

エントリの取得

use_mcp_tool( server_name: "strapi-mcp", tool_name: "get_entries", arguments: { "contentType": "api::article.article", "filters": { "title": { "$contains": "hello" } }, "pagination": { "page": 1, "pageSize": 10 }, "sort": ["title:asc"] } )

エントリの作成

use_mcp_tool( server_name: "strapi-mcp", tool_name: "create_entry", arguments: { "contentType": "api::article.article", "data": { "title": "My New Article", "content": "This is the content of my article.", "publishedAt": "2023-01-01T00:00:00.000Z" } } )

メディアのアップロード

use_mcp_tool( server_name: "strapi-mcp", tool_name: "upload_media", arguments: { "fileData": "base64-encoded-data-here", "fileName": "image.jpg", "fileType": "image/jpeg" } )

関係をつなぐ

use_mcp_tool( server_name: "strapi-mcp", tool_name: "connect_relation", arguments: { "contentType": "api::article.article", "id": "1", "relationField": "authors", "relatedIds": [2, 3] } )

関係の断絶

use_mcp_tool( server_name: "strapi-mcp", tool_name: "disconnect_relation", arguments: { "contentType": "api::article.article", "id": "1", "relationField": "authors", "relatedIds": [3] } )

コンテンツタイプの作成

use_mcp_tool( server_name: "strapi-mcp-local", tool_name: "create_content_type", arguments: { "displayName": "My New Product", "singularName": "product", "pluralName": "products", "kind": "collectionType", "description": "Represents products in the store", "draftAndPublish": true, "attributes": { "name": { "type": "string", "required": true }, "description": { "type": "text" }, "price": { "type": "decimal", "required": true }, "stock": { "type": "integer" } } } )

コンテンツタイプの更新

use_mcp_tool( server_name: "strapi-mcp-local", tool_name: "update_content_type", arguments: { "contentType": "api::speaker.speaker", "attributes": { "isHighlightSpeaker": { "type": "boolean", "default": false }, "newTextField": { "type": "string" } } } )

リソースへのアクセス

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

MCP プロトコルを通じて Strapi CMS コンテンツへのアクセスを提供し、ユーザーが Claude 経由でコンテンツ エントリを作成、読み取り、更新、削除できるようにします。

  1. 概要
    1. 設定
      1. 環境変数
      2. インストール
      3. ランニング
    2. 特徴
      1. 変更履歴
        1. 0.1.6
        2. 0.1.5
        3. 0.1.4
        4. 0.1.3
      2. ライセンス
        1. Strapi-mcp MCP サーバー
          1. 特徴
          2. 発達
          3. インストール
          4. 使用例

        Related MCP Servers

        • A
          security
          A
          license
          A
          quality
          A Model Context Protocol server that enables AI assistants to interact with Strapi CMS instances through a standardized interface, supporting content types and REST API operations.
          Last updated -
          5
          65
          20
          JavaScript
          MIT License
          • Apple
        • -
          security
          A
          license
          -
          quality
          An MCP server that allows accessing and managing ledger files through Claude by providing account listing, balance checking, and transaction register viewing capabilities.
          Last updated -
          1
          Python
          GPL 3.0
          • Apple
        • A
          security
          A
          license
          A
          quality
          An MCP server that enables Claude to interact with Twitter, allowing for posting tweets and searching Twitter content.
          Last updated -
          2
          108
          195
          TypeScript
          MIT License
          • Apple
        • A
          security
          F
          license
          A
          quality
          An MCP server that integrates Claude with Anki flashcards, allowing users to review due cards and create new flashcards directly through conversation.
          Last updated -
          6
          8
          Python
          • Apple

        View all related MCP servers

        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/l33tdawg/strapi-mcp'

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