Jamwidgets
← Back to docs

MCP setup

Give an agent access to the editorial workflow without giving it your dashboard session.

1. Choose how to connect

Interactive clients should use Jamwidgets sign-in so access follows your workspace role and can be disconnected later. For an unattended script, open Settings → Connections and create a scoped management key.

WorkflowScopes
Reviewsites:read, inbox:read, posts:read, queue:read
DraftReview scopes + posts:write
PublishDraft scopes + posts:publish
Moderateinbox:read, inbox:write

Publishing is separate from writing because it makes content public and can trigger a site deploy. OAuth never grants full_access; management keys should avoid it unless the script genuinely needs every current and future scope.

2. Connect your client

For Codex CLI:

codex mcp add jamwidgets \
  --url https://jamwidgets.com/api/manage/mcp
codex mcp login jamwidgets

The login command opens Jamwidgets, where you choose a workspace and approve the requested permissions. Revoke the connection any time from Settings → Connections.

Scripts can keep using the same endpoint with Authorization: Bearer <management-key>. Store keys in a password manager or secret store; never commit them to MCP configuration.

Editorial workflow

  1. Call list_sites. Post and queue tools require a site ID.
  2. Use list_inbox for work needing attention, or list_posts with needs_review.
  3. Create or update drafts with create_post and update_post.
  4. Review the title, body, excerpt, tags, and provenance before granting a publish action.
  5. Use publish_post for a new draft, republish_post for pending edits to a live post, or schedule_post with a future RFC 3339 timestamp.
  6. Inspect list_queue_tasks to see the deploy and notification work triggered by publication.

Static-site publishing

Publishing updates Jamwidgets immediately. A statically generated site also needs a deploy connection in its site settings so the new post is included in a fresh build. Queue success means Jamwidgets handed off the deploy; use your hosting or repository checks to confirm the build reached production.