Skip to main content
Glama

Strapi MCP サーバー

Strapi CMSと連携するためのモデルコンテキストプロトコルサーバー。このサーバーにより、AIアシスタントは標準化されたインターフェースを介してStrapiインスタンスと連携し、コンテンツタイプとREST API操作をサポートできるようになります。

⚠️重要な免責事項:本ソフトウェアはAI技術の支援を受けて開発されています。現状のまま提供されるため、十分なテストと検証を行わない限り、本番環境で使用しないでください。コードにはエラー、セキュリティ上の脆弱性、または予期しない動作が含まれている可能性があります。研究、学習、または開発目的に限り、自己責任でご使用ください。

変更履歴

バージョン 2.3.0 - ドキュメントと設定の強化

  • 📚 CLAUDE.md に包括的なプロジェクトドキュメントを追加しました

  • ⚙️ より優れたバージョン検出による構成オプションの拡張

  • 🛠️ よくある問題に対する強化されたトラブルシューティングガイド

  • 🔄 実用的な例を交えた詳細な REST API ドキュメント

  • 📝 コンテンツ管理のベストプラクティスガイド

  • 🐛 異なるフォーマットパターンからのバージョン解析を修正しました

  • 🔍 バージョン固有のガイダンスによるエラーメッセージの改善

バージョン 2.2.0 - セキュリティとバージョン処理の更新

  • 🔒 厳格な書き込み保護ポリシーを追加しました

  • 🔄 強化されたバージョン形式のサポート (5.*、4.1.5、v4 など)

  • 📚 サーバー機能にドキュメントを統合

  • 🚫 接続プロンプトを削除しました(現在は機能内にあります)

  • ⚡ エラー処理と検証の改善

  • 🔍 バージョン固有の差異ガイドを追加しました

  • 📋 サーバー機能のドキュメントの強化

バージョン2.1.0

  • Strapi v4とv5の両方との互換性が向上

  • バージョン間で異なるデータ構造をサポートするために自動検証を削除しました

  • バージョン固有のヒントを含むエラーメッセージの強化

  • リクエスト処理を簡素化し、クライアントにさらなる制御権を与える

  • 両バージョンのわかりやすい例を記載したドキュメントを更新しました

Related MCP server: Omi MCP Server

特徴

  • 🔍 スキーマイントロスペクション

  • 🔄 検証機能付き REST API サポート

  • 📸 メディアアップロードの処理

  • 🔐 JWT認証

  • 📝 コンテンツタイプの管理

  • 🖼️ フォーマット変換による画像処理

  • 🌐 複数サーバーのサポート

  • ✅ 自動スキーマ検証

  • 🔒 書き込み保護ポリシー

  • 📚 統合されたドキュメント

  • 🔄 バージョン互換性管理

インストール

Claude Desktop 構成で npx を使用してこのサーバーを直接使用できます。

{
  "mcpServers": {
    "strapi": {
      "command": "npx",
      "args": ["-y", "@bschauer/strapi-mcp-server@2.5.0"]
    }
  }
}

構成

~/.mcp/strapi-mcp-server.config.jsonに設定ファイルを作成します。

{
  "myserver": {
    "api_url": "http://localhost:1337",
    "api_key": "your-jwt-token-from-strapi-admin",
    "version": "5.*" // Optional: Specify Strapi version (e.g., "5.*", "4.1.5", "v4")
  }
}

このファイルに複数の Strapi インスタンスを追加して構成できます。

バージョン構成

サーバーは現在、さまざまなバージョン形式をサポートしています。

  • ワイルドカード: 「5. 」、「4.

  • 具体的: 「4.1.5」、「5.0.0」

  • シンプル:「v4」、「v5」

これにより、サーバーはバージョン固有のガイダンスを提供し、API の違いを適切に処理できるようになります。

JWTトークンの取得

  1. Strapi管理パネルにログイン

  2. 適切な権限を持つAPIトークンを作成する

  3. 適切なサーバー名の下の設定ファイルにトークンを追加します

使用法

利用可能なサーバーの一覧

strapi_list_servers();
// Now includes version information and differences between v4 and v5

コンテンツタイプ

// Get all content types from a specific server
strapi_get_content_types({
  server: "myserver",
});

// Get components with pagination
strapi_get_components({
  server: "myserver",
  page: 1,
  pageSize: 25,
});

REST API

REST API は、組み込みの検証とバージョン固有の処理を備えた包括的な CRUD 操作を提供します。

// Query content with filters
strapi_rest({
  server: "myserver",
  endpoint: "api/articles",
  method: "GET",
  params: {
    filters: {
      title: {
        $contains: "search term",
      },
    },
  },
});

// Create new content
strapi_rest({
  server: "myserver",
  endpoint: "api/articles",
  method: "POST",
  body: {
    data: {
      title: "New Article",
      content: "Article content",
      category: "news",
    },
  },
});

// Update content
strapi_rest({
  server: "myserver",
  endpoint: "api/articles/123",
  method: "PUT",
  body: {
    data: {
      title: "Updated Title",
      content: "Updated content",
    },
  },
});

// Delete content
strapi_rest({
  server: "myserver",
  endpoint: "api/articles/123",
  method: "DELETE",
});

メディアアップロード

// Upload image with automatic optimization
strapi_upload_media({
  server: "myserver",
  url: "https://example.com/image.jpg",
  format: "webp",
  quality: 80,
  metadata: {
    name: "My Image",
    caption: "Image Caption",
    alternativeText: "Alt Text",
  },
});

バージョンの違い(v4とv5)

サーバーが自動的に処理する Strapi バージョン間の主な違い:

v4

  • 数値IDを使用する

  • ネストされた属性構造

  • 応答内のデータラッパー

  • 従来のRESTパターン

  • 外部i18nプラグイン

v5

  • ドキュメントベースのID

  • フラットなデータ構造

  • 直接属性アクセス

  • 強化されたJWTセキュリティ

  • 統合されたi18nサポート

  • 新しいドキュメントサービス API

セキュリティ機能

書き込み保護ポリシー

サーバーは厳格な書き込み保護ポリシーを実装しています。

  • すべての書き込み操作には明示的な承認が必要です

  • 保護される操作には次のものが含まれます。

    • POST(作成)

    • PUT (更新)

    • 消去

    • メディアアップロード

  • 各操作はログに記録され、検証されます

ベストプラクティス

  1. 常にまずはstrapi_get_content_typesでスキーマをチェックする

  2. エンドポイントには適切な複数形/単数形を使用する

  3. クエリにエラー処理を含める

  4. アップロード前にURLを検証する

  5. 最小限のクエリから始めて、必要な場合にのみ人口を追加します

  6. 更新時には常に完全なデータオブジェクトを含める

  7. フィルターを使用してクエリのパフォーマンスを最適化する

  8. 組み込みのスキーマ検証を活用する

  9. 操作のバージョン互換性を確認する

  10. 書き込み保護ポリシーのガイドラインに従う

REST APIのヒント

フィルタリング

// Filter by field value
params: {
  filters: {
    title: "Exact Match";
  }
}

// Contains filter
params: {
  filters: {
    title: {
      $contains: "partial";
    }
  }
}

// Multiple conditions
params: {
  filters: {
    $and: [{ category: "news" }, { published: true }];
  }
}

ソート

params: {
  sort: ["createdAt:desc"];
}

ページネーション

params: {
  pagination: {
    page: 1,
    pageSize: 25
  }
}

人口

// Basic request without population
params: {
}

// Selective population when needed
params: {
  populate: ["category"];
}

// Detailed population with field selection
params: {
  populate: {
    category: {
      fields: ["name", "slug"];
    }
  }
}

トラブルシューティング

よくある問題と解決策:

  1. 404エラー

    • エンドポイントの複数形/単数形を確認する

    • コンテンツタイプが存在することを確認する

    • 正しいAPI URLを確認する

    • 正しい ID 形式 (数値ベースとドキュメントベース) を使用しているかどうかを確認します

  2. 認証の問題

    • JWTトークンが有効であることを確認する

    • トークンの権限を確認する

    • トークンの有効期限が切れていないことを確認する

  3. バージョン関連の問題

    • 構成内のバージョン指定を確認する

    • データ構造がバージョンと一致しているかどうかを確認します

    • バージョンの違いに関するドキュメントを確認する

  4. 書き込み保護エラー

    • 操作が承認されていることを確認する

    • 操作が保護されているかどうかを確認する

    • リクエストがセキュリティポリシーに従っていることを確認する

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

ライセンス

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

Appeared in Searches

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

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