Skip to main content

No project description provided

Project description

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:

  1. 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 tools
    • google_chat.py: Google Chat API integration and authentication handling
  2. 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

  1. Clone this project
    git clone https://github.com/chy168/google-chat-mcp-server.git
    cd google-chat-mcp-server
    
  2. Prepare a Google Cloud Project (GCP)
  3. Google Cloud Conolse (https://console.cloud.google.com/auth/overview?project=<YOUR_PROJECT_NAME>)
  4. 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
  5. After you create a OAuth 2.0 Client, download the client secrets as .json file. Save as credentials.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

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 to
  • get_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 .

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_google_chat_mcp_server-0.1.0.tar.gz (2.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_google_chat_mcp_server-0.1.0.tar.gz.

File metadata

  • Download URL: iflow_mcp_google_chat_mcp_server-0.1.0.tar.gz
  • Upload date:
  • Size: 2.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_google_chat_mcp_server-0.1.0.tar.gz
Algorithm Hash digest
SHA256 9e99018fbe3fe9489032e287fa580183b1aec6f46b2c22008f29abe2fa733cb2
MD5 fd3fed80ec3f0aa6e5d599577a92bcd8
BLAKE2b-256 2da20bbd0c8bf6b84074cca52cb1835266fb0544fcdaab36f52a8e1468b8bf79

See more details on using hashes here.

File details

Details for the file iflow_mcp_google_chat_mcp_server-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_google_chat_mcp_server-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.10 {"installer":{"name":"uv","version":"0.9.10"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_google_chat_mcp_server-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bc50a083a14395f0b6a72eee1cbb7da3d7ec10617940f16c36d8122e269b33d9
MD5 d84d82ccc762550789532e445b83cff4
BLAKE2b-256 7856aeb9165f4d805d69eedb5fe636c12191568e147e7e3f8044f7d6c4f5720a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page