Introduction
This project provides a Google Chat integration for MCP (Model Control Protocol) servers written by Python with FastMCP. It allows you to access and interact with Google Chat spaces and messages through MCP tools.
Structure
The project consists of two main components:
MCP Server with Google Chat Tools: Provides tools for interacting with Google Chat through the Model Control Protocol.
- Written by FastMCP
server.py
: Main MCP server implementation with Google Chat toolsgoogle_chat.py
: Google Chat API integration and authentication handling
Authentication Server: Standalone component for Google account authentication
- Written by FastAPI
- Handles OAuth2 flow with Google
- Stores and manages access tokens
- Can be run independently or as part of the MCP server
server_auth.py
: Authentication server implementation
The authentication flow allows you to obtain and refresh Google API tokens, which are then used by the MCP tools to access Google Chat data. (Your spaces and messages)
Features
- OAuth2 authentication with Google Chat API
- List available Google Chat spaces
- Retrieve messages from specific spaces with date filtering
- Local authentication server for easy setup
Requirements
- Python 3.8+
- Google Cloud project with Chat API enabled
- OAuth2 credentials from Google Cloud Console
How to use?
Prepare Google Oauth Login
- Clone this project
git clone https://github.com/chy168/google-chat-mcp-server.git cd google-chat-mcp-server
- Prepare a Google Cloud Project (GCP)
- Google Cloud Conolse (https://console.cloud.google.com/auth/overview?project=<YOUR_PROJECT_NAME>)
- Google Auth Platform > Clients > (+) Create client > Web application
reference: https://developers.google.com/identity/protocols/oauth2/?hl=en
Authorized JavaScript origins add:
http://localhost:8000
Authorized redirect URIs:http://localhost:8000/auth/callback
- After you create a OAuth 2.0 Client, download the client secrets as
.json
file. Save ascredentials.json
at top level of project.
Run Auth server and get your Google access token (login google only, not MCP server yet)
python server.py -local-auth --port 8000
- Open browser at http://localhost:8000/auth
- login it!
- after loggined, you access token will be saved as
token.json
MCP Configuration (mcp.json)
{
"mcpServers": {
"google_chat": {
"command": "uv",
"args": [
"--directory",
"<YOUR_REPO_PATH>/google-chat-mcp-server",
"run",
"server.py",
"--token-path",
"<YOUR_REPO_PATH>/google-chat-mcp-server/token.json"
]
}
}
Tools
The MCP server provides the following tools:
Google Chat Tools
get_chat_spaces()
- List all Google Chat spaces the bot has access toget_space_messages(space_name: str, start_date: str, end_date: str = None)
- List messages from a specific Google Chat space with optional time filtering
Development and Debug
fastmcp dev server.py --with-editable .
Google Chat MCP Server
Project Details
- chy168/google-chat-mcp-server
- Last Updated: 3/31/2025
Categories
Recomended MCP Servers
A Model Context Protocol server allows Clients to interact with Xero
MCP server for interfacing with Godot game engine. Provides tools for launching the editor, running projects, and capturing...
An MCP Server for WolframAlpha's LLM API, able to return structured knowledge & solve math
MCP server for Medusa JS SDK
Add Obsidian integrations like semantic search and custom Templater prompts to Claude or any MCP client.
A Model Control Protocol (MCP) server that allows cross-checking responses from multiple LLM providers simultaneously
MCP Server for YouTube API, enabling video management, Shorts creation, and advanced analytics
This is an MCP kubernetes Server.
A specialized server implementation for the Model Context Protocol (MCP) designed to integrate with CircleCI's development workflow. This...
Playwright MCP fork that works with Cloudflare Browser Rendering
一款轻量级、跨平台的 Mini Kubernetes AI Dashboard,支持大模型+智能体+MCP(支持设置操作权限),集成多集群管理、智能分析、实时异常检测等功能,支持多架构并可单文件部署,助力高效集群管理与运维优化。