Lnkbase Newsletter Docs

#MCP server: use OpenHive from Claude, ChatGPT and other AI tools

OpenHive includes a Model Context Protocol server, so an AI assistant can draft posts, pull stats, build segments, edit automations and more — inside your publication.

#Connect Claude Desktop

Edit claude_desktop_config.json (Settings → Developer → Edit Config):

{
  "mcpServers": {
    "openhive": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://YOUR_APP/mcp", "--header", "Authorization: Bearer oh_live_XXXXXXXX"]
    }
  }
}

Restart Claude Desktop. You'll see the OpenHive tools in the tools menu.

#Connect Claude Code

claude mcp add --transport http openhive https://YOUR_APP/mcp --header "Authorization: Bearer oh_live_XXXXXXXX"

#Connect ChatGPT and other clients

Any client that supports remote MCP servers over HTTP with a custom header works: add the URL https://YOUR_APP/mcp and the Authorization: Bearer … header. For clients that only support local (stdio) servers, use mcp-remote as shown above.

#Tools

ToolWhat it does
list_posts, get_postBrowse posts with headline stats; read content as text
draft_post, update_postDraft from Markdown (or a template), rewrite, append/prepend
set_ab_testSubject line A/B test on a draft
get_statsOpen rate, CTR, revenue in plain English (or one post)
compare_postsCompare dozens of posts in one request
deliverability_by_providerDelivery, bounce, complaint, open rates per Gmail/Outlook/Yahoo/Apple
reportsSubscriber growth and earnings reports
get_subscriber, add_subscriber, tag_subscriberFull history and engagement for any reader
list_segments, create_segment_from_descriptionBuild segments by describing them (with a dry run)
list_automations, create_automation, update_automation, enroll_subscriberCreate and edit automations. Edits go to a draft version while the live one keeps running; publish: true makes them live, status: "active"/"paused" turns it on or off
generate_imageAI image straight into your media library
manage_websitePages, redirects, SEO and crawler settings
communityRead and reply to community posts and DMs
adsAd offers and ad revenue reports
podcastsShows and episodes (see below)
productsDigital products and promo codes (see below)
send_transactionalSend one transactional email (template or subject + markdown/html/text, merge vars, idempotency key)
search_docsSearch these docs

#podcasts actions

ActionArguments
list_shows—
create_show / update_showtitle, description, author, owner_email, cover_url, language, category ("Technology" or `"Business\Marketing"), explicit, kind (episodic/serial), access (public/premium/both), copyright; update needs podcast_id`. Renaming never changes the feed URL.
list_episodespodcast_id, optional status
create_episode / update_episodetitle, description (show notes, HTML sanitized), audio_url, season, number, episode_type (full/trailer/bonus), premium, explicit, image_url, transcript, status (draft/published/scheduled), publish_at (ISO; future = scheduled). Create needs podcast_id, update needs episode_id. Publishing requires audio.
archive_episode / unarchive_episodeepisode_id — archived episodes leave feeds and the site; unarchiving restores a draft
delete_episodeepisode_id — permanent (audio file and download stats are removed)

#products actions

Promo codes, coupons and offers are one concept in OpenHive (the "Offers & codes" page): a code with a percent or fixed discount that applies to paid subscriptions, products and/or event tickets.

ActionArguments
list, get_productproduct_id (id or slug) for get — includes the codes that apply to it
create_product / update_productname, price (USD; 0 = free lead magnet), kind (download/link/guide/template/ebook/membership/coaching), description, link_url, content, status (active/draft/archived)
archive_productproduct_id — hidden from the shop, buyers keep access
list_promo_codesoptional active_only
create_promo_code (alias create_coupon)code, percent_off or amount_off (USD), applies_to (all/subscription/product/event), target_id, duration (once/repeating/forever) + duration_months, max_redemptions, expires_at (ISO; a bare date means end of that day), name
update_promo_codecode or promo_code_id; active, name, max_redemptions (null = unlimited), expires_at (null = never). The discount itself can't change — create a new code.
delete_promo_codecode or promo_code_id

#Example prompts

Drafts created over MCP are never sent automatically — you review and send from the dashboard (or explicitly via the REST send API).

#Protocol details