Skip to content
K

Integrations

Monday Morning integrates with external tools through its plugin system. Each integration adds MCP tools that your agents can use during sessions, bringing external context — issues, meetings, messages, tracked time — into the same .mm/ workspace your specs and tasks live in.

IntegrationWhat it doesCredentials
GitHubSync issues, link PRs to spec tasksPersonal Access Token (or gh CLI auth)
SlackIngest channel messages into the project inbox; post updates and digestsBot token via OAuth (“Connect with Slack”) or pasted manually
TrelloOne-time import of boards and cards, plus ongoing syncAPI Key + API Token
HarvestTime tracking, budgets, profitability, utilizationPersonal Access Token + Account ID
GrainImport meeting transcripts, extract action itemsAPI Token
Google CalendarCalendar context for the desktop app (no MCP tools)OAuth
Notionmm_sync_notion sync (core tool)API token
ObsidianOne-time vault migration via mm_migrate_obsidianNone (local files)
Design Tokensmm_get_design_tokens for Figma/design workflows (core tool)None
Voice AssistantVoice input tools (voice tool group)None — Pro tier

Notion, Obsidian, and Design Tokens are currently shelved from the Plugins settings section — their tools still load and dispatch, but the plugins do not appear in the desktop UI.

Tool Listing: Core Catalog and Opt-in Groups

Section titled “Tool Listing: Core Catalog and Opt-in Groups”

The MCP server lists a lean core catalog by default: the 13 universal verbs (mm_create, mm_list, mm_get, mm_update, mm_complete, mm_link, mm_move, mm_archive, mm_verify, mm_record, mm_search, mm_order_specs, mm_index) plus the tools bundled commands reference — including mm_configure_integration and mm_sync_notion.

Most integration tools live in opt-in long-tail groups and are delisted until you opt their group in via the MM_TOOL_GROUPS environment variable (comma-separated group names, or all) on the Monday Morning server entry in .mcp.json:

"env": { "MM_TOOL_GROUPS": "harvest,slack" }

The integration groups are harvest, slack, trello, and imports (GitHub sync, Grain imports, Obsidian migration, skill import), plus voice, docs, team, handoff, and workflow.

Delisted is not disabled. Every tool still dispatches when called by name — opting in only controls whether the tool’s definition appears in the agent’s tool list. Each integration page states its group near the top of its setup section.

Settings is a stage takeover in the desktop app, and integrations span two of its sections:

  • Settings → Plugins — first-party integrations (GitHub, Slack), one-time imports (Import from Trello), and the plugin registry. Installed registry plugins get an inline Configure control that renders the plugin’s settings form — credentials, global config, and per-project config — right in the section. No modals.
  • Settings → Integrations — per-project connection surfaces: GitHub authentication and repo pick, Trello board link and list-to-lane mapping, and the Harvest project ID, each as an inline expandable row. Other enabled plugins with settings appear below with a Connected / Not connected status.

Pro-gated plugins render an upgrade prompt in place of the settings form when the effective tier is free.

Credentials entered in the desktop app are saved to the system credential store. For the MCP server’s benefit, several plugins also write a bridge file per project:

.mm/integrations/github.json
.mm/integrations/slack.json
.mm/integrations/trello.json

.mm/ is gitignored by default, so these files stay local. Resolution order varies by plugin — GitHub and Trello check the bridge file first and fall back to environment variables (GITHUB_TOKEN; TRELLO_API_KEY + TRELLO_TOKEN), Slack reads the bridge file only, and Grain reads the GRAIN_API_TOKEN environment variable. Each integration page documents its own resolution.

Project-level integration config (which repo, which board) lives in .mm/config.json under an integrations block, and can be set from the Integrations section or with the mm_configure_integration core tool.

Tier gating is live. Plugins declare free or pro; pro plugins load only when the resolved tier is pro or team, or the user is on a team. An unentitled pro plugin is still listed in the app for discovery — marked locked, with an upgrade prompt — but its tools are absent from the MCP tool surface, and calls are refused with an upgrade message if entitlement is revoked mid-session. If tier resolution fails outright, gating fails open rather than silently shrinking your toolset. Voice Assistant is currently the pro-tier plugin.

Each integration guide follows the same structure:

  1. Tool group — what MM_TOOL_GROUPS value lists the tools
  2. Prerequisites — accounts and access you need
  3. Setup — credential configuration
  4. Available Tools — the MCP tools the integration provides
  5. Common Workflows — typical usage patterns
  6. Troubleshooting — solutions to common issues

Pick an integration from the sidebar to get started.