google-workspace-mcp
google-workspace-mcp
Проект для создания пяти независимых удалённых MCP-серверов для Google Workspace: Gmail, Google Calendar, Google Drive, Google Sheets и Google Docs.
Статус: pre-alpha. MCP-серверы ещё не работают. Репозиторий в настоящее время содержит каркас пакета, пять точек входа-заглушек, базовое ядро состояния OAuth для нижестоящего сервиса и неизменяемую конфигурацию для каждого сервиса.
Текущий статус
Реализовано:
Python-пакет с пятью консольными точками входа;
состояние OAuth для нижестоящего сервиса на базе SQLite;
регистрация OAuth-клиента и PKCE;
привязка токена к каноническому
resource;ротация refresh-токенов, обнаружение повторов и отзыв семейства токенов;
неизменяемые метаданные владения состоянием для сервиса и ресурса;
неизменяемая конфигурация для каждого сервиса со строгой проверкой порта и TTL токена.
Все пять консольных точек входа являются заглушками и завершаются сообщением о том, что сервис не реализован. HTTP/MCP-транспорт, интеграция с Google API, инструменты сервисов и конфигурация развёртывания пока не реализованы.
Related MCP server: google-workspace-mcp-advanced
Планируемые сервисы
В таблице описана целевая область. Эти возможности пока недоступны.
Сервис | Целевые возможности |
| поиск и чтение сообщений и цепочек, метки, вложения, черновики, отправка и ответы |
| календари, поиск и получение событий, доступность, создание и обновление событий |
| поиск файлов, метаданные, содержимое папок, скачивание и экспорт |
| метаданные таблиц, чтение и запись диапазонов, пакетные операции |
| создание документов, получение структуры и текста, вставка и замена |
В целевой архитектуре каждый сервис работает как отдельный процесс со своей конечной точкой MCP, реестром инструментов, областями OAuth Google, учётными данными Google и состоянием OAuth нижестоящего сервиса.
Целевая архитектура авторизации
В проекте используются два независимых уровня:
Клиент — сервис. MCP-клиент использует OAuth 2.1 с PKCE. Каждый токен доступа привязан к одному resource, а refresh-токены ротируются с обнаружением повторов.
Сервис — Google. Каждый сервис использует отдельные учётные данные Google и минимально необходимые области OAuth. Refresh-токены Google никогда не возвращаются MCP-клиентам.
Сегодня существует только ядро состояния для первого уровня. HTTP-конечные точки и второй уровень авторизации не реализованы.
Технологии
Требования для разработки
Git
Python 3.14
uv
Проект Google Cloud и OAuth-клиент потребуются после реализации интеграции с Google API. Текущая версия их не использует.
Настройка среды разработки
git clone https://github.com/hawkxdev/google-workspace-mcp.git
cd google-workspace-mcp
uv sync --devВиртуальное окружение активировать не нужно. Запускайте команды через uv run.
Проверки
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 может повторно синхронизировать окружение из lock-файла.
Структура
Путь | Назначение |
| жизненный цикл состояния OAuth нижестоящего сервиса |
| неизменяемая конфигурация окружения для каждого сервиса |
| пять точек входа-заглушек |
| регрессионные тесты ядра OAuth и точек входа пакета |
| метаданные пакета, зависимости и конфигурация инструментов |
| происхождение адаптированного кода |
Участие в разработке
Проект находится на ранней стадии разработки. Перед внесением существенных изменений откройте issue с описанием предлагаемого поведения. Изменения не должны объединять пять сервисов в один процесс, разделять учётные данные между сервисами или вводить обход OAuth.
Происхождение
Проект адаптирует ядро OAuth 2.1 из jimprosser/obsidian-web-mcp под лицензией MIT. Подробности см. в NOTICE.
Ядро OAuth 2.1 для нижестоящего сервиса основано на ревизии 7e6a52d791a50e3bd533df1060217973ab5be1c8. Оно включает дополнительные исправления для жизненного цикла клиента и токенов, ротации refresh-токенов, обнаружения повторов и канонизации resource.
Функциональность Obsidian-хранилища и синхронизации с Git из исходного проекта не копировалась.
В этом проекте используется mcp>=2,<3. Пакет mcp.server.fastmcp, удалённый в MCP 2.0, не требуется; будущая композиция будет использовать mcp.server.mcpserver.
Автор
Лицензия
MIT, см. LICENSE.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
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
Hosted MCP server with managed OAuth for 15+ toolkits: Google Workspace, Fitbit, Oura, Kalshi, etc.
Permissioned access to Gmail, Drive and Calendar via the user's own Google account
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Streamable HTTP MCP server for Google Calendar and Sheets with OAuth login.
Related MCP Servers
- AlicenseAqualityDmaintenanceMCP server for Google Workspace APIs - Docs, Sheets, Drive, Gmail, and Calendar. Enables reading, creating, and editing Google Docs and Sheets, managing comments, reading emails, and viewing calendar events.343917MIT
- AlicenseBqualityDmaintenanceProduction-ready MCP server for Google Workspace providing broad coverage across Gmail, Drive, Calendar, Docs, Sheets, and more, with safe-by-default write operations and markdown-to-Google-Docs support.100MIT
- AlicenseBqualityAmaintenanceA multi-account Google Workspace MCP server that drives Gmail, Google Calendar, and Google Drive across any number of Google accounts in parallel from one server.402MIT
- FlicenseBqualityDmaintenanceMCP server providing full access to Google Workspace services (Gmail, Drive, Calendar, Docs, Sheets, Slides, Forms, Tasks, Contacts) using OAuth authentication.1001-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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