#!/usr/bin/env python3
import asyncio
import logging
import mcp.server.stdio
from mcp.server.lowlevel import NotificationOptions
from mcp.server.models import InitializationOptions
from src.gmail_mcp_server import configs, mcp_server
SERVER_NAME = configs.get("server_name")
SERVER_VERSION = configs.get("server_version")
# Configure logging
logging.basicConfig(level=logging.INFO, format="%(asctime)s %(levelname)s %(message)s")
logging.getLogger(SERVER_NAME)
async def main():
async with mcp.server.stdio.stdio_server() as (read_stream, write_stream):
await mcp_server.run(
read_stream,
write_stream,
InitializationOptions(
server_name=SERVER_NAME,
server_version=SERVER_VERSION,
capabilities=mcp_server.get_capabilities(
notification_options=NotificationOptions(),
experimental_capabilities={},
),
),
)
if __name__ == "__main__":
asyncio.run(main())