mcp-webpublication-server

alexylon/mcp-webpublication-server

3.2

If you are the rightful owner of mcp-webpublication-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

The MCP Webpublication Server is designed to facilitate access to workspace management, generation, customization, and publication features through a structured API.

Tools
5
Resources
0
Prompts
0

MCP Webpublication Server

MCP server for Webpublication API - provides access to workspace management, generation, customization, and publication features.

Features

  • get_recent_resources: Get the last 20 publications
  • get_resource: Get resource/publication information
  • get_publication_settings: Get publication settings and configuration
  • toggle_wishlist: Enable/disable Wishlist
  • get_cover_image: Get the publication's cover image as bytes and encode it to base64 so the AI can see it
  • Cookie-based authentication with WP_token
  • Support for multiple API endpoints (workspaceManagerWs, generationWs, customizationWs, etc.)

Prerequisites

Quick Start

  1. Copy .env.example to .env and add your credentials (environment variables needed for testing with the MCP Inspector):
API_URL=your_api_url
DRIVE_URL=your_drive_url
CLIENT_ID=your_client_id
WP_TOKEN=your_wp_token
  1. Build release:
cargo build --release

The resulting binary executable can be found at /path/to/mcp-webpublication-server/target/release/mcp-webpublication-server

Usage

Testing with MCP Inspector

Run at the project's root

npx @modelcontextprotocol/inspector cargo run
# or
npx @modelcontextprotocol/inspector ./target/release/mcp-webpublication-server

Open http://127.0.0.1:6274 and test tools.

Using Claude

Configure the MCP Web Publication server for either Claude Desktop or the Claude CLI.

Claude Desktop

Add the snippet below to your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
Claude CLI

At the root of your project, add the same snippet to .mcp.json.

{
  "mcpServers": {
    "webpublication": {
      "command": "/path/to/mcp-webpublication-server/target/release/mcp-webpublication-server",
      "env": {
        "API_URL": "your_api_url",
        "DRIVE_URL": "your_drive_url",
        "CLIENT_ID": "your_client_id",
        "WP_TOKEN": "your_wp_token"
      }
    }
  }
}

Tools

get_recent_resources

  • Input: None
  • Output: Returns the 20 most recent publications with their globalId and label (name)
  • Usage: Use this first to find a publication's globalId when not provided by the user

get_resource

  • Input: resource_gid (number, e.g., 2473843)
  • Output: Detailed resource/publication information with metadata
  • Note: Month values are zero-based. Add 1 to get the calendar month (e.g., 5 = June)

get_publication_settings

  • Input: resource_gid (number, e.g., 2473843)
  • Output: Publication settings and configuration details including wishlistEnabled and coverImage.relUrl

toggle_wishlist

  • Input:
    • publication_gid (number, e.g., 2473843)
    • wishlist_enabled (boolean: true/false)
  • Output: Updated publication settings with new wishlist status
  • Note: Check current status via get_publication_settings -> wishlistEnabled

get_cover_image

  • Input: rel_url (string) - obtained from get_publication_settings -> coverImage.relUrl
  • Output: Cover image as base64-encoded image data

Resources

forthebadge