MCP Server — Connect AI Agents

Connect AI agents to Internal Newsletter using Model Context Protocol (MCP). 21 tools for newsletter creation, content management, and AI drafting. Works with Claude Desktop and Cursor.

The Internal Newsletter MCP server lets AI agents create and manage newsletters through natural conversation. It works with Claude Desktop, Cursor, and any MCP-compatible client.

What is MCP?

Model Context Protocol is an open standard that lets AI assistants use external tools. Instead of copy-pasting between your AI and the newsletter app, the agent calls tools directly — creating blocks, assembling newsletters, and sending previews without leaving the conversation.

Setup

1. Install

cd mcp-server
npm install

2. Get an API key

Go to Team Settings → API Keys and create a key with read, write, and send_preview scopes.

3. Configure Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "internal-newsletter": {
      "command": "node",
      "args": ["/path/to/mcp-server/src/index.js"],
      "env": {
        "INTERNAL_NEWSLETTER_URL": "https://your-app.com",
        "INTERNAL_NEWSLETTER_API_KEY": "inl_your_key_here"
      }
    }
  }
}

Restart Claude Desktop. You'll see Internal Newsletter in the tools list.

Available tools (21)

Team

Tool Description
get_team_info Team details, brand colour, plan, usage

Newsletters

Tool Description
list_newsletters List with status filter
get_newsletter Get newsletter with blocks
create_newsletter Create a new newsletter
update_newsletter Update metadata or status
delete_newsletter Delete a newsletter
preview_newsletter Get rendered HTML
send_newsletter_preview Email preview to a team member

Content Blocks

Tool Description
list_content_blocks List with type/status/source filters
get_content_block Get full block details
create_content_block Create a new block
update_content_block Update block content
delete_content_block Delete a block
ai_draft_content_block AI-generate from a prompt

Newsletter Composition

Tool Description
add_block_to_newsletter Add a block at a position
remove_block_from_newsletter Remove a block
reorder_newsletter_blocks Set block order

Discovery

Tool Description
list_templates Available email templates
list_events Upcoming events and dates
get_event Event details with suggested content
ingest_content Push external content in

Resources (read-only context)

Resources give the agent background context without needing a tool call:

Resource URI What it provides
Team Info team://info Brand colours, cadence, plan
Recent Newsletters team://recent-newsletters Last 5 issues for style reference
Available Blocks team://available-blocks Ready-to-use content blocks
Upcoming Events team://upcoming-events Events in the next 30 days
Templates team://templates Available email templates

Example conversation

You: Check what content blocks we have ready, pull upcoming events for the next week, and draft a CEO update about our Q1 results — revenue up 23%, three new hires, and the mobile app launch. Assemble it all into a newsletter using the Bold template and send me a preview.

The agent will: 1. Call list_content_blocks (status: ready) 2. Call list_events (days_ahead: 7) 3. Call ai_draft_content_block with Q1 context 4. Call create_newsletter with Bold template 5. Call add_block_to_newsletter for each block 6. Call send_newsletter_preview to your email

One conversation. One minute. Complete newsletter.