Google Chat as MCP tools: read, search and write to your spaces, direct messages and sidebar.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.
Google Chat as MCP tools. Read, search and write to your spaces, direct messages and sidebar from Claude Code, Claude Desktop, or any other MCP client.
A single Go binary that speaks MCP over stdio. It runs as a subprocess of your client, on your own machine, against your own Google account. There is no server to host, no shared deployment and no service account: you create a Google OAuth client, log in once, and the refresh token stays in your OS keyring.
Or take a signed archive from the latest release β Linux, macOS and Windows, on amd64 and arm64 β and verify it before you run it:
Every archive also ships an SBOM, so you can see what is inside a binary you did not build.
Every release also carries a .mcpb bundle. Open it and Claude Desktop
installs the server and asks for your OAuth client JSON β no config file
to edit. It covers macOS, Windows and Linux on both architectures each:
macOS through a universal binary, Windows through amd64, and Linux
through a small launcher that picks the right binary at start, because a
bundle manifest has no key for the architecture. Its SHA-256 is in the
same signed checksums.txt. The release is listed in the MCP registry as
io.github.mmedum/google-chat-mcp.
The bundle does not log you in. Install the binary as well, run
google-chat-mcp login once, and the bundle picks up the same
credentials. Claude Code does not install .mcpb files, so it uses the
command below.
You need your own OAuth client. It takes about fifteen minutes once, and
docs/gcp-setup.md walks through it. In short:
create a project, enable the Google Chat API and the People API,
configure the consent screen with the scopes this server asks for, and
create an OAuth 2.0 Client ID of type Desktop app. Download the
JSON.
Then log in:
Login opens your browser, or prints the URL when there is no browser to
open (--no-browser forces that). The callback lands on 127.0.0.1 on a
random port, with PKCE and state throughout. The refresh token goes into
your OS keyring; if there is no keyring, it goes into a 0600 file and
the command tells you so. On Windows a Go file mode only sets the
read-only attribute, so what protects that file there is the ACL its
directory inherits, not the mode.
google-chat-mcp status says which account is signed in and where the
token lives. google-chat-mcp logout revokes the token at Google and
deletes the local copy.
The callback goes to the remote host's loopback address, and your
browser is local, so forward the port. It is chosen at random and printed
only once login is already waiting, so read it out of the printed URL β
it appears percent-encoded, as 127.0.0.1%3A<port> β and in a second
local terminal:
Then open the URL locally. If ssh reports bind: Address already in use, cancel the login with Ctrl-C and run it again to draw another port.
Claude Code:
Or, in a client config file:
Claude Desktop reads the same shape from its own config file. Use the
binary's absolute path there if it is not on the app's PATH, or install
the .mcpb bundle above and edit nothing.
Every setting is an environment variable, listed in
docs/configuration.md. The three worth
knowing now: GCM_READ_ONLY=true leaves out every tool that changes anything in Chat,
GCM_PROFILE lets one machine hold a work account and a personal one,
and GCM_LOCAL_DIR names the one directory files may be written to and
read from. Without that last one the server touches no files at all,
and the three tools that move them say so.
If something does not work, run google-chat-mcp doctor. It checks the
credentials, the granted scopes and what Google actually answers, and
names what is missing.
No reviews yet β be the first to share how this listing worked for you.
Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/google-chat-mcp-2)<a href="https://allmcps.com/mcp/google-chat-mcp-2"><img src="https://allmcps.com/api/badge/google-chat-mcp-2?style=directory" alt="Google Chat MCP on AllMCPs" /></a>