Skip to main content
Glama

MCP Google Workspace Server

mcp_client.py1.68 kB
import asyncio import logging import sys from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client # Configure logging logging.basicConfig( level=logging.DEBUG, format="%(asctime)s [%(levelname)s] %(name)s: %(message)s", datefmt="%Y-%m-%d %H:%M:%S,%03d", ) logger = logging.getLogger(__name__) # Get the workspace directory WORKSPACE_DIR = "/Users/ashok/projects/adex/mcp-servers/mcp-google-suite" async def main() -> None: """Main entry point for the client.""" logger.info("Starting client...") # Setup server parameters params = StdioServerParameters( command="uv", args=["--directory", WORKSPACE_DIR, "run", "mcp-google"] ) # Create client session async with stdio_client(params) as streams: async with ClientSession(streams[0], streams[1]) as session: # Initialize session await session.initialize() logger.info("Session initialized successfully") # List available tools tools = await session.list_tools() logger.info(f"Available tools: {tools}") # Create a test document logger.info("Creating test document...") result = await session.call_tool( "docs_create", {"title": "Test Document", "content": "Hello from MCP client!"} ) logger.info(f"Document creation result: {result}") if __name__ == "__main__": try: asyncio.run(main()) except KeyboardInterrupt: logger.info("Client stopped by user") except Exception as e: logger.error(f"Client error: {e}", exc_info=True) sys.exit(1)

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/josedu90/mcp-suiteg'

If you have feedback or need assistance with the MCP directory API, please join our Discord server