Skip to main content
Glama
VeloCMS

velocms-mcp

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_postsA

Lists blog posts for the authenticated tenant, paginated (default 20/page, max 100). Optionally filter by status (draft or published). Requires the posts:read API key scope.

get_postA

Fetches a single post by its PocketBase record ID, including content_html/content_json and SEO fields. Requires the posts:read scope.

create_postA

Creates a new blog post. Defaults to status=draft — pass status=published to publish immediately (stamps published_at automatically), or create as a draft and call publish_post once you're ready. Requires the posts:write scope.

update_postA

Partially updates an existing post — only the fields you pass are changed. Requires at least one field besides id. Requires the posts:write scope.

delete_postA

Permanently deletes a post by ID. Requires the posts:write scope.

publish_postA

Sets a post's status to published (stamps published_at). Shorthand for update_post({ status: 'published' }). Requires the posts:write scope.

unpublish_postA

Sets a post's status back to draft, taking it off the public site. Shorthand for update_post({ status: 'draft' }). Requires the posts:write scope.

list_mediaA

Lists items in the media library, paginated. Optionally filter by MIME type prefix (e.g. 'image'). Requires the media:read scope.

list_commentsA

Lists comments, paginated. Optionally filter to a specific post (postId) and/or by moderation status (approved, pending, spam). Requires the comments:read scope.

moderate_commentA

Sets a comment's moderation status (approved, pending, or spam). Requires the comments:moderate scope.

list_membersA

Lists reader/subscriber records, paginated. Email local parts are masked by the API (e.g. u***@example.com). Optionally filter by tier (free or paid). Requires the members:read scope.

get_site_settingsA

Fetches the tenant's site configuration (name, description, logo, favicon, members/comments enabled flags). Encrypted fields (Stripe keys, AI API key) are always excluded by the API. Requires the site-settings:read scope.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.1/5.0

Scored across 12 tools

Disambiguation5/5

Each tool targets a distinct resource and action: post CRUD, publish state transitions, media listing, comment moderation, member listing, and site settings retrieval. No two tools overlap in purpose.

Naming Consistency5/5

All tools follow a consistent snake_case verb_noun pattern (get_, create_, list_, update_, delete_, publish_, unpublish_, moderate_). The consistent use of singular/plural nouns is conventional and readable.

Tool Count5/5

12 tools is well-scoped for a CMS. Post lifecycle is fully represented, and the addition of media, comments, members, and settings covers the main auxiliary resources without unnecessary bloat.

Completeness3/5

Post CRUD and publishing workflow are complete, but media only supports listing, site settings only get, and comments lack deletion. These read-only surfaces create dead ends for agents trying to manage those resources.

Maintenance

ActivitySlowing
ResponsivenessNo issues