Monday.com MCP Server

by sakce
Verified
  • src
  • mcp_server_monday
import asyncio import importlib.metadata import logging import mcp.server.stdio import mcp.server.websocket from mcp.server import NotificationOptions, Server from mcp.server.models import InitializationOptions from monday import MondayClient from mcp_server_monday.constants import MONDAY_API_KEY from .tools import ( register_tools, ) logging.basicConfig(level=logging.INFO) logger = logging.getLogger("mcp-server-monday") monday_client = None server = Server("monday") async def main(): logger.info("Starting Monday.com MCP server") global monday_client monday_client = MondayClient(MONDAY_API_KEY) register_tools(server, monday_client) async with mcp.server.stdio.stdio_server() as (read_stream, write_stream): await server.run( read_stream, write_stream, InitializationOptions( server_name="monday", server_version=importlib.metadata.version("mcp-server-monday"), capabilities=server.get_capabilities( notification_options=NotificationOptions(), experimental_capabilities={}, ), ), ) if __name__ == "__main__": asyncio.run(main())