MCP Integration

Connect AI assistants like Claude, Cursor, and other MCP-compatible tools to Waldium. Generate, schedule, and publish AI blog posts directly from your AI workflow.

The Waldium MCP server requires authentication. You'll need an API key from your dashboard under Settings » API Keys.


What is MCP?

Model Context Protocol (MCP) is an open standard for connecting AI applications to external systems. Think of it like a USB-C port for AI applications. With MCP, AI assistants can interact with Waldium directly, enabling you to create and manage blog content without leaving your AI workflow.


Quick Start

Step 1: Get your MCP server URL

Your Waldium MCP server URL is:

https://mcp.waldium.com/mcp/waldium-mcp

Step 2: Configure your MCP client

Add the Waldium server to your MCP client configuration:

MCP Configuration

{
  "mcpServers": {
    "waldium": {
      "url": "https://mcp.waldium.com/mcp/waldium-mcp"
    }
  }
}

Step 3: Authenticate

When you first connect, you'll be prompted to authenticate with your Waldium account using OAuth. This securely links your AI assistant to your Waldium site.


Available Tools

The Waldium MCP server provides the following tools for AI assistants:

  • Name
    waldium_generate_post
    Description

    Generate an AI-powered blog post with customizable topic, style, tone, length, and target audience.

  • Name
    waldium_create_post
    Description

    Create a new blog post with title, content, category, tags, and status.

  • Name
    waldium_batch_create_posts
    Description

    Schedule multiple posts for generation over a date range with automatic time distribution.

  • Name
    waldium_get_post
    Description

    Retrieve a single blog post by ID.

  • Name
    waldium_update_post_status
    Description

    Change a post's status to DRAFT, UNLISTED, or PUBLISHED.

  • Name
    waldium_delete_post
    Description

    Delete a blog post by ID.

  • Name
    waldium_create_knowledge
    Description

    Upload a file to your knowledge base (PDF, text, markdown, CSV, Word docs).

  • Name
    waldium_delete_knowledge
    Description

    Remove a file from your knowledge base.


Use Cases

Here are common ways to use the Waldium MCP integration:

Generate Technical Documentation

"Write a technical guide explaining how to integrate our REST API 
with authentication examples and error handling"

The AI will call waldium_generate_post with your topic and parameters to create a complete blog post.

Create Engineering Blog Posts

"Write a blog post about how we migrated from PostgreSQL to 
CockroachDB, targeting senior engineers"

Schedule Batch Content

"Create 4 blog posts for our v2.0 launch: changelog, migration guide, 
new features overview, and deprecation notices, publishing daily 
starting Monday"

The AI will use waldium_batch_create_posts to schedule all posts with automatic time distribution.

Knowledge-Enhanced Technical Writing

"Generate API documentation for our webhook endpoints using 
the OpenAPI spec I uploaded"

With useKnowledge: true, the AI incorporates your uploaded reference materials for more accurate, brand-aligned content.


Tool Reference

Generate Post

Generate an AI-powered blog post with full customization options.

  • Name
    topic
    Type
    string
    Description

    The topic or subject for the blog post.

  • Name
    style
    Type
    string
    Description

    Writing style: professional, casual, technical, creative, academic, or mixed. Default: professional.

  • Name
    tone
    Type
    string
    Description

    Content tone: informative, persuasive, conversational, or authoritative. Default: informative.

  • Name
    length
    Type
    string
    Description

    Post length: short, medium, or long. Default: medium.

  • Name
    targetAudience
    Type
    string
    Description

    Target audience description (e.g., "web developers and tech enthusiasts").

  • Name
    model
    Type
    string
    Description

    AI model to use: gpt-5, gpt-5-mini, gpt-5-nano, gpt-4.1, gpt-4.1-mini, or gpt-4.1-nano. Default: gpt-5-nano.

  • Name
    useKnowledge
    Type
    boolean
    Description

    Whether to use knowledge base for content enhancement. Default: false.

  • Name
    selectedFileIds
    Type
    array
    Description

    Array of knowledge file IDs to use for context.

  • Name
    isDraft
    Type
    boolean
    Description

    Whether to create the post as a draft. Default: false.

Example request

{
  "topic": "Building REST APIs with Node.js",
  "style": "technical",
  "tone": "informative",
  "length": "medium",
  "targetAudience": "backend developers",
  "model": "gpt-5-nano",
  "isDraft": true
}

Create Post

Create a new blog post with manual content.

  • Name
    title
    Type
    string
    Description

    The post title.

  • Name
    content
    Type
    string
    Description

    HTML or Markdown content for the post body.

  • Name
    description
    Type
    string
    Description

    Short description or excerpt (max 1000 characters).

  • Name
    category
    Type
    string
    Description

    Post category (max 100 characters).

  • Name
    tags
    Type
    array
    Description

    Array of tags (max 20 tags, each max 50 characters).

  • Name
    status
    Type
    string
    Description

    Post status: DRAFT, UNLISTED, or PUBLISHED. Default: DRAFT.

  • Name
    authorId
    Type
    string
    Description

    UUID of the author to attribute the post to.

Example request

{
  "title": "How to Build a REST API",
  "content": "# Introduction\n\nThis guide covers...",
  "description": "A comprehensive guide to REST APIs",
  "category": "Engineering",
  "tags": ["api", "tutorial", "backend"],
  "status": "DRAFT"
}

Batch Create Posts

Create multiple posts scheduled for generation over a date range.

  • Name
    posts
    Type
    array
    Description

    Array of post objects with topic (required) and optional scheduledFor.

  • Name
    startDate
    Type
    string
    Description

    Start date for automatic distribution (ISO 8601 format). Requires endDate.

  • Name
    endDate
    Type
    string
    Description

    End date for automatic distribution (ISO 8601 format). Requires startDate.

  • Name
    defaults
    Type
    object
    Description

    Default values applied to all posts: authorId, category, tags, style, tone, length, model, status, useKnowledge, selectedFileIds, targetAudience.

Example request

{
  "posts": [
    { "topic": "API Authentication Best Practices" },
    { "topic": "Error Handling in REST APIs" },
    { "topic": "API Versioning Strategies" },
    { "topic": "Rate Limiting Implementation" }
  ],
  "startDate": "2026-02-01T09:00:00Z",
  "endDate": "2026-02-28T09:00:00Z",
  "defaults": {
    "style": "technical",
    "tone": "informative",
    "category": "Engineering",
    "status": "DRAFT"
  }
}

Update Post Status

Change a post's visibility status.

  • Name
    id
    Type
    string
    Description

    The unique identifier of the post (UUID).

  • Name
    status
    Type
    string
    Description

    New status: DRAFT, UNLISTED, or PUBLISHED.

Example request

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "PUBLISHED"
}

Important Notes

  • Authentication: All endpoints require Bearer token authentication via API key or OAuth
  • Post IDs: Post IDs are UUIDs. Validate format before operations
  • Status values: Use DRAFT (hidden), UNLISTED (accessible via link), or PUBLISHED (public)
  • Batch limits: Maximum 100 posts per batch request
  • Knowledge uploads: Maximum 10MB per file. Supported formats: PDF, TXT, MD, CSV, DOC, DOCX
  • Rate limiting: Respect 429 responses with exponential backoff
  • AI generation time: Typically 10-30 seconds depending on length and model

Troubleshooting

Connection Issues

If you're having trouble connecting:

  1. Verify your API key is valid in your dashboard
  2. Check that your MCP client supports OAuth 2.0 authentication
  3. Ensure you're using the correct server URL: https://mcp.waldium.com/mcp/waldium-mcp

Generation Failures

If post generation fails:

  1. Check that the topic is clear and descriptive
  2. Verify your account has available generation credits
  3. Try a different AI model (e.g., switch from gpt-5 to gpt-5-nano)

Knowledge Base Issues

If knowledge-enhanced generation isn't working:

  1. Confirm files are uploaded and processed (check Knowledge Base in dashboard)
  2. Verify useKnowledge: true is set in your request
  3. Check that selectedFileIds contains valid file UUIDs

Was this page helpful?