Skip to main content
Glama
hawkxdev

google-workspace-mcp

by hawkxdev

google-workspace-mcp

Набор из пяти независимых удалённых MCP-серверов над Google Workspace: Gmail, Google Calendar, Google Drive, Google Sheets и Google Docs.

Статус: pre-alpha. Проект находится в активной разработке; публичные интерфейсы и конфигурация могут меняться до первого стабильного релиза.

Серверы намеренно разделены. Клиент или проект включает только тот сервис, который ему нужен, и получает токен, действующий ровно для него: токен Gmail не открывает Drive. Общими остаются репозиторий, инфраструктурные библиотеки, каркас авторизации и процедура развёртывания.

Сервисы

Сервис

Что делает

gmail

поиск и чтение писем и цепочек, метки, вложения, черновики, отправка и ответ

calendar

календари, поиск и чтение событий, занятость, создание и правка событий

drive

поиск файлов, метаданные, содержимое папок, выгрузка и экспорт

sheets

метаданные таблицы, чтение и запись диапазонов, батчевые операции

docs

создание документа, чтение структуры и текста, вставка и замена

Каждый сервис — отдельный процесс, отдельный MCP-эндпоинт, отдельный реестр инструментов, отдельный набор разрешений Google и отдельное хранилище учётных данных.

Два слоя авторизации

Они независимы и не смешиваются.

Клиент → сервис. MCP-клиент проходит OAuth 2.1 с PKCE и динамической регистрацией. Выданный токен привязан к одному ресурсу и обновляется по ротируемому refresh-токену с обнаружением повторного использования.

Сервис → Google. Сервис обращается к продуктовым API Google от имени владельца по долговременному refresh-токену и обновляет access-токен сам. Google-токен клиенту не возвращается ни при каком исходе.

Официальные MCP-эндпоинты Google находятся в Developer Preview и здесь не используются: вызовы идут в стабильные продуктовые API.

Требования

  • Python 3.14, устанавливается uv; системный интерпретатор не затрагивается

  • uv

  • проект Google Cloud с включёнными API пяти сервисов и OAuth-клиентом

Установка

uv sync --dev

Проверки

uv run --no-sync pytest -q
uv run --no-sync ruff check .
uv run --no-sync ruff format --check .
uv run --no-sync mypy src

Флаг --no-sync обязателен при проверке версий зависимостей: без него uv run пересинхронизирует окружение из лок-файла и возвращает пиннутую версию вместо фактической, из-за чего заведомо ломающая версия пакета даёт зелёный прогон.

Происхождение

Проект адаптирует OAuth 2.1-ядро из jimprosser/obsidian-web-mcp под MIT; полная информация приведена в NOTICE.

Основой downstream OAuth 2.1 служит ревизия 7e6a52d791a50e3bd533df1060217973ab5be1c8. После неё в ядро внесены собственные исправления жизненного цикла клиентов и токенов, ротации refresh-токенов, обнаружения повторного использования и канонизации resource.

Доменная часть исходного проекта — работа с хранилищем Obsidian и синхронизация через Git — не переносилась.

Здесь используется mcp>=2,<3: удалённый в MCP 2.0 пакет mcp.server.fastmcp не требуется, а собственная композиция строится на mcp.server.mcpserver.

Лицензия

MIT, см. LICENSE.

-
license - not tested
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Streamable HTTP MCP server for Google Calendar and Sheets with OAuth login.

  • Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.

  • AI-powered medical document management for cancer patients. Google Drive, Gmail, Calendar via MCP.

View all MCP Connectors

Latest Blog Posts

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/hawkxdev/google-workspace-mcp'

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