Monday.com MCP Server

by sakce
Verified
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())