UNPKG

@danielma-tic/mondaydotcom-mcp-server

Version:

MCP Server for the Monday.com API, enabling board operations, item management, and more.

155 lines (113 loc) 4.61 kB
# mondaydotcom-mcp-server A Model Context Protocol server that provides read and write access to Monday.com workspaces. This server enables LLMs to inspect board schemas, then read and write items. ## Usage To use this server with the Claude Desktop app, add the following configuration to the "mcpServers" section of your `claude_desktop_config.json`: ```json { "mcpServers": { "monday": { "command": "npx", "args": [ "-y", "mondaydotcom-mcp-server", "api_token_xyz123" ] } } } ``` Replace `api_token_xyz123` with your Monday.com API token. Your token should have appropriate read and write permissions for the boards you want to access. ## Components ### Tools #### list_boards Lists boards from your Monday.com workspace - Input parameters: - workspaceId (string, optional): Filter boards by workspace - maxResults (number, optional): Maximum number of boards to return. Defaults to 100. #### search_items Search for items containing specific text - Input parameters: - boardId (string, required): The ID of the board to query - searchTerm (string, required): Text to search for in items - columnIds (array, optional): Specific column IDs to search in - maxResults (number, optional): Maximum number of items to return. Defaults to 100. #### list_workspaces Lists all accessible Monday.com workspaces - No input parameters required - Returns workspace ID, name, and kind #### list_groups Lists all groups in a specific board - Input parameters: - boardId (string, required): The ID of the board #### get_item Gets a specific item by ID - Input parameters: - boardId (string, required): The ID of the board - itemId (string, required): The ID of the item to retrieve #### create_item Creates a new item in a board - Input parameters: - boardId (string, required): The ID of the board - groupId (string, optional): The ID of the group - columnValues (object, required): The columns and values for the new item #### update_items Updates one or more items in a board - Input parameters: - boardId (string, required): The ID of the board - items (array, required): Array of objects containing item ID and column values to update #### delete_items Deletes one or more items from a board - Input parameters: - boardId (string, required): The ID of the board - itemIds (array, required): Array of item IDs to delete #### create_board Creates a new board in a workspace - Input parameters: - workspaceId (string, required): The ID of the workspace - name (string, required): Name of the new board - description (string, optional): Description of the board - columns (array, required): Array of column definitions (title, type, settings) #### update_board Updates a board's name or description - Input parameters: - boardId (string, required): The ID of the board - name (string, optional): New name for the board - description (string, optional): New description for the board #### create_column Creates a new column in a board - Input parameters: - boardId (string, required): The ID of the board - title (string, required): Title of the new column - type (string, required): Type of the column - settings (object, optional): Column-specific settings #### update_column Updates a column's title or settings - Input parameters: - boardId (string, required): The ID of the board - columnId (string, required): The ID of the column - title (string, optional): New title for the column - settings (object, optional): New settings for the column ## Resources The server provides schema information for Monday.com boards: ### Board Schemas (monday://<boardId>/schema) - JSON schema information for each board - Includes: - Board id and name - Board description - Column definitions (ID, title, type, settings) - Group definitions (ID, title, color) - Automatically discovered from Monday.com's GraphQL API ## Contributing Pull requests are welcomed on GitHub! To get started: 1. Install Git and Node.js 2. Clone the repository 3. Install dependencies with `npm install` 4. Run `npm run test` to run tests 5. Build with `npm run build` You can use `npm run build:watch` to automatically build after editing `src/index.ts`. This means you can hit save, reload Claude Desktop (with Ctrl/Cmd+R), and the changes apply. ## Releases Versions follow the semantic versioning spec. To release: 1. Use `npm version <major | minor | patch>` to bump the version 2. Run `git push --follow-tags` to push with tags 3. Wait for GitHub Actions to publish to the NPM registry.