Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
strapi_list_serversC

List all available Strapi servers from the configuration.

Security Policy

STRICT_USER_AUTHORIZATION_REQUIRED: No write operations without explicit user authorization. Protected operations: POST (Create), PUT (Update), DELETE (Delete), Media Upload. All write operations require userAuthorized: true parameter.

Strapi Version Support

Supports both Strapi v4 and v5 with automatic version detection.

Version Differences

  • v4: Numeric IDs, nested attributes under 'attributes', data wrapper in responses

  • v5: Document-based IDs (documentId), flat structure, direct attribute access

Common Errors

  • 404: Using numeric ID instead of documentId, wrong plural/singular form

  • 405: Incorrect endpoint (/article instead of /articles)

  • 400: Missing data wrapper in request body

Best Practices

  1. Always check schema first with strapi_get_content_types

  2. Use documentId (not numeric id) for Strapi v5

  3. Always use data wrapper for updates: { data: { field: value } }

  4. Use pluralName for collection endpoints (api/articles)

  5. Validate URLs with webtools before using them

strapi_get_content_typesB

Get all content types from Strapi. Returns the complete schema of all content types.

Initialization Steps (ALWAYS DO FIRST)

  1. Get schema and analyze with this tool

  2. Capture Content Types and structures

  3. Remember endpoint names (pluralName/singularName)

  4. Document fields and types

  5. Identify relations

  6. Consider required fields and validations

Schema Conventions

  • singularName: Used for single item queries (e.g., "article")

  • pluralName: Used for collection endpoints (e.g., "articles")

  • collectionName: Database collection name

Endpoint Patterns

  • Collection: GET /api/{pluralName}

  • Single: GET /api/{pluralName}/{id}

  • Create: POST /api/{pluralName}

  • Update: PUT /api/{pluralName}/{id}

  • Delete: DELETE /api/{pluralName}/{id}

strapi_get_componentsA

Get all components from Strapi with pagination support. Returns both component data and pagination metadata (page, pageSize, total, pageCount).

strapi_restA

Execute REST API requests against Strapi endpoints. IMPORTANT: All write operations (POST, PUT, DELETE) require explicit user authorization via the userAuthorized parameter.

Reading Data

params: { populate: ['SEO'] } // Populate a component params: { populate: { SEO: { fields: ['Title', 'seoDescription'] } } } // With field selection params: { filters: { title: { $contains: 'search' } } } // Filter results params: { sort: ['createdAt:desc'] } // Sort results params: { pagination: { page: 1, pageSize: 10 } } // Pagination

Writing Data (REQUIRES userAuthorized: true)

body: { data: { componentName: { Title: 'value' }, // Single component componentName: [{ field: 'value' }] // Repeatable component } }

Debugging Guide

  • 404 Error: Check plural/singular form, use documentId not numeric id

  • 400 Error: Check if data wrapper is present in body

  • 405 Error: Check endpoint format (/articles not /article)

  • URL Errors: Validate URLs with webtools first

  • ID Problems: Use documentId for Strapi v5

Strapi v5 Specifics

  • Use documentId instead of numeric id

  • Direct attribute access (no nested attributes)

  • No data wrapper in GET responses

strapi_upload_mediaA

Upload media to Strapi's media library from a URL with format conversion, quality control, and metadata options. IMPORTANT: This is a write operation that REQUIRES explicit user authorization via the userAuthorized parameter.

Upload Steps

  1. Upload via strapi_upload_media with URL and metadata

  2. Get image ID from response

  3. Link to content using strapi_rest PUT request

Linking Images to Content (Strapi v5)

After upload, use PUT request to link: { "method": "PUT", "endpoint": "api/articles/{documentId}", "body": { "data": { "images": ["imageId"] } }, "userAuthorized": true }

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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