MC

MCP Server for Monday.com Boards and Items

Manage Monday.com boards and items with an MCP server to automate workflows, sync data, and streamline board interactions.

Quick Install
npx -y @sakce/mcp-server-monday

Overview

This MCP (Model Context Protocol) server exposes Monday.com boards and items as a collection of tools that LLM agents and automation platforms can call directly. It translates tool-style requests into Monday.com API calls, so language models (or other orchestrators) can list boards, query items, create or update items, and subscribe to webhooks without each agent needing to implement the Monday.com REST API.

For developers this is useful when you want a predictable, tool-driven interface to Monday.com inside an LLM-enabled workflow: enable agents to triage tasks, summarize board state, create follow-up items, or keep external systems in sync. The server is lightweight, configurable via environment variables, and designed to run locally, in containers, or as part of a larger orchestration.

Features

  • Exposes Monday.com operations as MCP-compatible tools
  • List and describe boards, columns, and items
  • Create, update, and delete items and column values
  • Query items by ID, text, or column filters
  • Register and forward Monday.com webhooks to MCP tooling
  • Configurable authentication using a Monday.com API token
  • Docker-ready and simple Node.js startup

Installation / Configuration

Requirements:

  • Node.js 16+ (recommended)
  • A valid Monday.com API token

Clone and install:

git clone https://github.com/sakce/mcp-server-monday.git
cd mcp-server-monday
npm install

Environment variables (example .env):

MONDAY_API_TOKEN=your_monday_api_token_here
MCP_PORT=3000
MCP_HOST=0.0.0.0
WEBHOOK_BASE_URL=https://example.com/webhooks
LOG_LEVEL=info
ALLOWED_ORIGINS=*

Start locally:

# development
npm run dev

# production
NODE_ENV=production node dist/server.js

Docker:

# docker-compose.yml (example)
version: "3.8"
services:
  mcp-monday:
    image: node:18
    working_dir: /app
    volumes:
      - ./:/app
    command: node dist/server.js
    ports:
      - "3000:3000"
    environment:
      - MONDAY_API_TOKEN=${MONDAY_API_TOKEN}
      - MCP_PORT=3000

Build & run:

docker build -t mcp-server-monday .
docker run -e MONDAY_API_TOKEN=$MONDAY_API_TOKEN -p 3000:3000 mcp-server-monday

Authentication

The server expects a Monday.com API token provided via MONDAY_API_TOKEN. This token is used on behalf of the server to make GraphQL requests to the Monday.com API. Keep it secret and restrict its permissions as appropriate for your automation needs.

Available Tools / Resources

The MCP server exposes a set of tools (descriptive names shown) that an LLM or orchestration layer can call. Typical tools include:

Tool namePurpose
boards_listReturn metadata for all accessible boards (id, name, columns)
board_describeReturn full schema for a single board
items_querySearch items by text, column values, or filters
item_getFetch an item by ID (including column values, updates)
item_createCreate a new item on a board with initial column values
item_updateUpdate column values for an item
item_deleteRemove an item from a board
webhook_registerRegister a Monday.com webhook to forward events to MCP
webhook_receiveEndpoint to receive incoming Monday.com webhook callbacks

Each tool maps to one or more Monday.com GraphQL queries or mutations and returns a normalized JSON result suitable for LLM consumption.

Use Cases

  • Automated triage: An LLM agent monitors a Slack channel, extracts action items, then calls item_create to add tasks to a Monday board with appropriate assignees and due dates.
  • Summarization: Periodically call boards_list and items_query to produce daily summaries of in-progress items, then post a digest to a team channel.
  • Syncing systems: Use webhook_register to receive Monday.com change events, then forward relevant updates to an external CRM or data warehouse via the MCP pipeline.
  • Workflow extensions: Build an assistant that can move items between groups, update status columns, or add comments using item_update after reasoning over priorities.
  • Audit and reporting: Query item history and updates to generate change logs and compliance reports.

Example: Create an Item (pseudo-request)

Tool call payload (MCP-style):

{
  "tool": "item_create",
  "args": {
    "boardId": "123456789",
    "itemName": "Follow up on support ticket #432",
    "columnValues": {
      "status": "Working on it",
      "person": "[email protected]",
      "date": "2026-04-10"
    }
  }
}

Expected response:

{
  "ok": true,
  "item": {
    "id": "987654321",
    "name": "Follow up on support ticket #432",
    "boardId": "123456789",
    "columnValues": { ... }
  }
}

Resources

  • Source & issues: https://github.com/sakce/mcp-server-monday
  • Monday.com API docs: https://api.developer.monday.com
  • MCP specification / protocol: (refer to your MCP implementation docs for the exact tool call shapes)

If you plan to extend or integrate this server, start by implementing or adapting a new tool that wraps the Monday.com GraphQL call you need, add its description to the tool registry, and ensure the response is normalized for downstream LLM tooling.