Skip to main content
Glama
pressroomhq

Pressroom MCP Server

by pressroomhq

Pressroom MCP Server

Run the full Pressroom pipeline headless — no browser, no UI.

Any Claude Code session or MCP-compatible client can scout, generate, audit, publish, and more from a prompt.

Setup

cd /home/captain/data/projects/pressroom-mcp
./install.sh

Or manually:

python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
cp .env.example .env
# Edit .env if your Pressroom backend is not on localhost:8000

Related MCP server: Agentimus MCP Server

Usage

Run standalone (stdio transport)

source venv/bin/activate
python server.py

Add to Claude Code

Add to your ~/.claude/settings.json or project .claude/settings.json:

{
  "mcpServers": {
    "pressroom": {
      "command": "/home/captain/data/projects/pressroom-mcp/venv/bin/python",
      "args": ["/home/captain/data/projects/pressroom-mcp/server.py"],
      "env": {
        "PRESSROOM_URL": "http://localhost:8000"
      }
    }
  }
}

Available Tools (101)

Org Management

  • pressroom_list_orgs() — List all organizations

  • pressroom_get_org(org_id) — Get org details

Pipeline

  • pressroom_scout(org_id, since_hours=24) — Pull signals from sources

  • pressroom_generate(org_id, channels=None) — Generate content from signals

  • pressroom_approve(org_id, content_ids) — Approve content items

  • pressroom_publish(org_id) — Publish approved content

  • pressroom_full_pipeline(org_id, channels=None) — Scout + Generate in one shot

Content

  • pressroom_list_content(org_id, status="queued", limit=50) — List content items

  • pressroom_get_content(content_id) — Get full content item

  • pressroom_spike_content(org_id, content_ids) — Spike (reject) content items

  • pressroom_edit_content(org_id, content_id, body="", headline="") — Edit content body or headline

  • pressroom_humanize_content(org_id, content_id) — Run humanizer on content

  • pressroom_schedule_content(org_id, content_id, publish_at) — Schedule content for future publish

Content Performance

  • pressroom_content_performance(org_id) — Get performance metrics for published content

  • pressroom_fetch_performance(org_id, content_id) — Fetch latest performance for a content item

Signals

  • pressroom_list_signals(org_id, limit=50) — List wire signals

Story Workbench

  • pressroom_list_stories(org_id, limit=20) — List editorial stories

  • pressroom_create_story(org_id, title, angle="", editorial_notes="", signal_ids=None) — Create a story

  • pressroom_get_story(org_id, story_id) — Get story with signals and notes

  • pressroom_add_signal_to_story(org_id, story_id, signal_id, editor_notes="") — Attach signal to story

  • pressroom_generate_from_story(org_id, story_id, channels=None, team_member_id=None) — Generate content from story

  • pressroom_discover_signals(org_id, story_id, mode="web") — Discover signals for a story

Wire (Company-Owned Sources)

  • pressroom_list_wire_sources(org_id) — List Wire sources

  • pressroom_create_wire_source(org_id, type, name, config=None) — Create a Wire source

  • pressroom_fetch_wire(org_id, wire_source_id=None) — Fetch signals from Wire sources

  • pressroom_list_wire_signals(org_id, limit=40, type="") — List Wire signals

SIGINT Sources (Global Library)

  • pressroom_list_sources(type="", active_only=True) — List global source library

  • pressroom_create_source(type, name, config=None, category_tags=None, fetch_interval_hours=6) — Create a global source

  • pressroom_sweep_sources(org_id, source_ids=None) — Sweep sources for signals

  • pressroom_get_feed(org_id, limit=40, min_score=None) — Get relevance-scored SIGINT feed

Audit

  • pressroom_audit(org_id, domain="", deep=True) — Run SEO audit

  • pressroom_scoreboard() — All orgs ranked by SEO score

  • pressroom_audit_history(org_id, audit_type="", limit=20) — Past audit results

Company Audit

  • pressroom_company_audit(org_id) — Run full company audit

SEO PR Pipeline

  • pressroom_seo_pr_run(org_id, repo_url, domain="", base_branch="main") — Start SEO PR pipeline

  • pressroom_seo_pr_list(org_id) — List SEO PR runs

  • pressroom_seo_pr_status(org_id, run_id) — Get SEO PR run status

Competitive Intelligence

  • pressroom_competitive_scan(org_id, competitor_urls) — Run competitive scan

  • pressroom_competitive_results(org_id) — Get stored competitive results

AI Visibility

  • pressroom_ai_visibility_scan(org_id) — Scan AI models for citations

  • pressroom_ai_visibility_results(org_id) — Get AI visibility results

  • pressroom_ai_visibility_questions(org_id, questions) — Set visibility tracking questions

Analytics

  • pressroom_analytics(org_id) — Get analytics dashboard

Scoreboard

  • pressroom_team_activity(org_id) — Get team activity metrics from scoreboard

YouTube Studio

  • pressroom_youtube_script(org_id, content_id=None, brief="") — Generate YouTube script

  • pressroom_youtube_list(org_id) — List scripts

  • pressroom_youtube_export(script_id) — Export Remotion JSON package

  • pressroom_youtube_update(org_id, script_id, title="", hook="") — Update script title or hook

  • pressroom_youtube_delete(org_id, script_id) — Delete a YouTube script

  • pressroom_youtube_render(org_id, script_id) — Render script to video via Remotion

  • pressroom_youtube_publish_video(org_id, script_id) — Publish rendered video

Blog Management

  • pressroom_blog_scrape(org_id, url) — Scrape and import a blog post

  • pressroom_blog_list(org_id) — List blog posts

  • pressroom_blog_delete(org_id, post_id) — Delete a blog post

Google Search Console

  • pressroom_gsc_status(org_id) — Check GSC connection status

  • pressroom_gsc_properties(org_id) — List available GSC properties

  • pressroom_gsc_set_property(org_id, property_url) — Set active GSC property

  • pressroom_gsc_analytics(org_id, days=28) — Get GSC analytics data

  • pressroom_gsc_summary(org_id) — Get GSC performance summary

  • pressroom_gsc_blog_performance(org_id) — Get GSC blog post performance

  • pressroom_gsc_inspect_url(org_id, url) — Inspect URL indexing status

Site Properties

  • pressroom_list_properties(org_id) — List site properties

  • pressroom_create_property(org_id, name, value, prop_type="domain") — Create a property

  • pressroom_update_property(org_id, property_id, value) — Update a property

  • pressroom_delete_property(org_id, property_id) — Delete a property

Brand

  • pressroom_brand_scrape(org_id, domain) — Scrape brand info from domain

  • pressroom_brand_get(org_id) — Get brand profile

Assets

  • pressroom_list_assets(org_id, asset_type="") — List assets

  • pressroom_create_asset(org_id, name, url, asset_type) — Create an asset

  • pressroom_delete_asset(org_id, asset_id) — Delete an asset

Skills

  • pressroom_list_skills() — List available skills

  • pressroom_get_skill(skill_name) — Get skill content

  • pressroom_invoke_skill(skill_name, input_text) — Run text through a skill

Team

  • pressroom_list_team(org_id) — List team members

  • pressroom_add_team_member(org_id, name, title="", bio="", email="", linkedin_url="", expertise_tags=None) — Add team member

  • pressroom_discover_team(org_id) — Auto-discover team members

  • pressroom_update_team_member(org_id, member_id, name="", title="", bio="") — Update team member details

  • pressroom_analyze_voice(org_id, member_id) — Analyze member's writing voice

  • pressroom_team_gist_check(org_id) — Check gist status for all members

  • pressroom_generate_gist(org_id, member_id) — Generate author bio page

  • pressroom_publish_gist(org_id, member_id) — Publish author bio page

Settings

  • pressroom_get_settings(org_id) — Get all org settings

  • pressroom_update_settings(org_id, settings) — Update org settings

  • pressroom_connection_status(org_id) — Check service connection status

Onboarding

  • pressroom_onboard(org_id, domain, extra_context="") — Onboard a company

  • pressroom_onboard_apply(org_id, profile) — Apply onboarding profile

  • pressroom_onboard_status(org_id) — Check onboarding status

Email

  • pressroom_compose_email(org_id, content_id) — Compose email draft from content

  • pressroom_list_email_drafts(org_id, status="", limit=20) — List email drafts

Medium

  • pressroom_medium_publish(org_id, content_id) — Publish content to Medium

Slack

  • pressroom_slack_test(org_id) — Send test Slack message

  • pressroom_slack_notify(org_id, content_id) — Send Slack notification for content

  • pressroom_slack_notify_queue(org_id) — Notify Slack about queued content

Token Usage

  • pressroom_usage(org_id) — Get current token usage

  • pressroom_usage_history(org_id) — Get token usage history

Imports

  • pressroom_import_paste(org_id, text, channel="linkedin") — Import content from pasted text

Activity Log

  • pressroom_log(org_id, limit=20) — Get activity log

Data Sources

  • pressroom_list_datasources(org_id) — List data sources

  • pressroom_create_datasource(org_id, name, type, config) — Create a data source

  • pressroom_test_datasource(org_id, ds_id) — Test data source connection

  • pressroom_delete_datasource(org_id, ds_id) — Delete a data source

Requirements

  • Pressroom backend running at PRESSROOM_URL (default: http://localhost:8000)

  • Python 3.10+

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to interact with WordPress sites over MCP, providing read-only tools for AEO/GEO readiness, AI visibility, traffic, request logs, bot identification, page checks, and schema/markdown previews, plus opt-in write tools to draft, edit, and publish posts with permission checks and auditing.
    2
    GPL 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to draft, review, preview, and publish content across multiple websites through typed MCP tools. Ensures safe, policy-gated, and auditable publication without requiring a conventional CMS admin interface.
    Apache 2.0
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI clients to manage GEO/SEO content pipelines for multiple sites, including content ingestion, quality checks, WordPress publishing, image handling, monitoring, and search submission via 22 MCP tools over stdio or authenticated HTTP.
    405 npm
    MIT