gogcli-mcp-gmail 2.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +113 -0
- package/SKILL.md +87 -0
- package/dist/index.js +31508 -0
- package/manifest.json +108 -0
- package/package.json +41 -0
- package/src/index.ts +12 -0
- package/src/tools/gmail-extra.ts +450 -0
- package/tests/tools/gmail-extra.test.ts +606 -0
- package/tsconfig.json +9 -0
- package/vitest.config.ts +17 -0
package/README.md
ADDED
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# gogcli-mcp-gmail
|
|
2
|
+
|
|
3
|
+
> [!WARNING]
|
|
4
|
+
> **AI-developed project.** This codebase was built and is actively maintained by [Claude Code](https://www.anthropic.com/claude). Review all code and tool permissions before use.
|
|
5
|
+
|
|
6
|
+
Extended Gmail [MCP](https://modelcontextprotocol.io) server via [gogcli](https://github.com/steipete/gogcli). Includes auth tools plus 23 additional dedicated Gmail tools for threads, labels, drafts, attachments, forwarding, autoreply, and bulk operations.
|
|
7
|
+
|
|
8
|
+
## Requirements
|
|
9
|
+
|
|
10
|
+
- [gogcli](https://github.com/steipete/gogcli) installed and authenticated
|
|
11
|
+
- Node.js 18+
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
brew install gogcli
|
|
15
|
+
gog auth add your@gmail.com --services gmail
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Installation
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm install -g gogcli-mcp-gmail
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Claude Desktop
|
|
25
|
+
|
|
26
|
+
Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
|
|
27
|
+
|
|
28
|
+
```json
|
|
29
|
+
{
|
|
30
|
+
"mcpServers": {
|
|
31
|
+
"gogcli-gmail": {
|
|
32
|
+
"command": "gogcli-mcp-gmail",
|
|
33
|
+
"env": {
|
|
34
|
+
"GOG_ACCOUNT": "you@gmail.com"
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Claude Code
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
claude mcp add gogcli-gmail -- gogcli-mcp-gmail
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Extra Gmail Tools (23)
|
|
48
|
+
|
|
49
|
+
Plus 5 auth tools and 4 base Gmail tools (search, get, send, run).
|
|
50
|
+
|
|
51
|
+
### Read
|
|
52
|
+
|
|
53
|
+
| Tool | Description |
|
|
54
|
+
|------|-------------|
|
|
55
|
+
| `gog_gmail_raw` | Dump the raw Gmail API JSON for a message (lossless, for scripting) |
|
|
56
|
+
| `gog_gmail_attachment` | Download a single attachment from a message |
|
|
57
|
+
| `gog_gmail_url` | Print Gmail web URLs for one or more threads |
|
|
58
|
+
| `gog_gmail_history` | List Gmail history events since a given historyId |
|
|
59
|
+
|
|
60
|
+
### Threads
|
|
61
|
+
|
|
62
|
+
| Tool | Description |
|
|
63
|
+
|------|-------------|
|
|
64
|
+
| `gog_gmail_thread_get` | Get a thread with all messages, optionally with sanitized content and attachments |
|
|
65
|
+
| `gog_gmail_thread_modify` | Modify labels on all messages in a thread |
|
|
66
|
+
| `gog_gmail_thread_attachments` | List or download all attachments in a thread |
|
|
67
|
+
|
|
68
|
+
### Labels
|
|
69
|
+
|
|
70
|
+
| Tool | Description |
|
|
71
|
+
|------|-------------|
|
|
72
|
+
| `gog_gmail_labels_list` | List all labels |
|
|
73
|
+
| `gog_gmail_labels_get` | Get label details and counts |
|
|
74
|
+
| `gog_gmail_labels_create` | Create a new label |
|
|
75
|
+
| `gog_gmail_labels_rename` | Rename a label |
|
|
76
|
+
| `gog_gmail_labels_delete` | Delete a label |
|
|
77
|
+
| `gog_gmail_labels_modify` | Modify labels on one or more threads |
|
|
78
|
+
|
|
79
|
+
### Bulk Operations
|
|
80
|
+
|
|
81
|
+
| Tool | Description |
|
|
82
|
+
|------|-------------|
|
|
83
|
+
| `gog_gmail_archive` | Archive messages by ID or by query |
|
|
84
|
+
| `gog_gmail_mark_read` | Mark messages as read by ID or by query |
|
|
85
|
+
| `gog_gmail_mark_unread` | Mark messages as unread by ID or by query |
|
|
86
|
+
| `gog_gmail_trash` | Move messages to trash by ID or by query |
|
|
87
|
+
| `gog_gmail_message_modify` | Modify labels on a single message |
|
|
88
|
+
| `gog_gmail_batch_delete` | Permanently delete multiple messages (irreversible) |
|
|
89
|
+
| `gog_gmail_batch_modify` | Modify labels on multiple messages at once |
|
|
90
|
+
|
|
91
|
+
### Drafts
|
|
92
|
+
|
|
93
|
+
| Tool | Description |
|
|
94
|
+
|------|-------------|
|
|
95
|
+
| `gog_gmail_drafts_list` | List drafts |
|
|
96
|
+
| `gog_gmail_drafts_get` | Get a draft by ID |
|
|
97
|
+
| `gog_gmail_drafts_create` | Create a new draft |
|
|
98
|
+
| `gog_gmail_drafts_update` | Update an existing draft |
|
|
99
|
+
| `gog_gmail_drafts_delete` | Delete a draft |
|
|
100
|
+
| `gog_gmail_drafts_send` | Send an existing draft |
|
|
101
|
+
|
|
102
|
+
### Write
|
|
103
|
+
|
|
104
|
+
| Tool | Description |
|
|
105
|
+
|------|-------------|
|
|
106
|
+
| `gog_gmail_forward` | Forward a message to new recipients (with optional note) |
|
|
107
|
+
| `gog_gmail_autoreply` | Reply once to all messages matching a query (with dedupe label) |
|
|
108
|
+
|
|
109
|
+
Track and admin settings (`track`, `settings filters`, `delegates`, `forwarding`, `sendas`, `vacation`, `watch`) are available via the base `gog_gmail_run` escape hatch.
|
|
110
|
+
|
|
111
|
+
## License
|
|
112
|
+
|
|
113
|
+
MIT
|
package/SKILL.md
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: gogcli-mcp-gmail
|
|
3
|
+
description: Use when the user asks to read, organize, draft, forward, autoreply, or otherwise work with Gmail in depth. Triggers for requests involving threads, labels, drafts, attachments, bulk archive/trash/mark-read operations, forwarding messages, or any Gmail operation beyond simple search/get/send. Includes auth and Gmail tools only.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# gogcli-mcp-gmail
|
|
7
|
+
|
|
8
|
+
Extended Gmail MCP server via [gogcli](https://github.com/steipete/gogcli) — 32 tools: auth + 4 base Gmail + 23 extra dedicated Gmail tools.
|
|
9
|
+
|
|
10
|
+
- **Source:** [github.com/chrischall/gogcli-mcp](https://github.com/chrischall/gogcli-mcp)
|
|
11
|
+
|
|
12
|
+
## Requirements
|
|
13
|
+
|
|
14
|
+
- [gogcli](https://github.com/steipete/gogcli) installed and authenticated
|
|
15
|
+
- Node.js 18 or later
|
|
16
|
+
|
|
17
|
+
## Setup
|
|
18
|
+
|
|
19
|
+
```json
|
|
20
|
+
{
|
|
21
|
+
"mcpServers": {
|
|
22
|
+
"gogcli-gmail": {
|
|
23
|
+
"command": "npx",
|
|
24
|
+
"args": ["-y", "gogcli-mcp-gmail"],
|
|
25
|
+
"env": {
|
|
26
|
+
"GOG_ACCOUNT": "you@gmail.com"
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Extra Gmail Tools
|
|
34
|
+
|
|
35
|
+
### Read
|
|
36
|
+
| Tool | What it does |
|
|
37
|
+
|------|-------------|
|
|
38
|
+
| `gog_gmail_raw` | Raw Gmail API JSON for a message |
|
|
39
|
+
| `gog_gmail_attachment` | Download a single attachment |
|
|
40
|
+
| `gog_gmail_url` | Print web URLs for threads |
|
|
41
|
+
| `gog_gmail_history` | List history events since a historyId |
|
|
42
|
+
|
|
43
|
+
### Threads
|
|
44
|
+
| Tool | What it does |
|
|
45
|
+
|------|-------------|
|
|
46
|
+
| `gog_gmail_thread_get` | Get a thread with all messages |
|
|
47
|
+
| `gog_gmail_thread_modify` | Modify labels on a thread |
|
|
48
|
+
| `gog_gmail_thread_attachments` | List/download all attachments in a thread |
|
|
49
|
+
|
|
50
|
+
### Labels
|
|
51
|
+
| Tool | What it does |
|
|
52
|
+
|------|-------------|
|
|
53
|
+
| `gog_gmail_labels_list` | List all labels |
|
|
54
|
+
| `gog_gmail_labels_get` | Get a label's details and counts |
|
|
55
|
+
| `gog_gmail_labels_create` | Create a new label |
|
|
56
|
+
| `gog_gmail_labels_rename` | Rename a label |
|
|
57
|
+
| `gog_gmail_labels_delete` | Delete a label |
|
|
58
|
+
| `gog_gmail_labels_modify` | Modify labels on one or more threads |
|
|
59
|
+
|
|
60
|
+
### Bulk operations
|
|
61
|
+
| Tool | What it does |
|
|
62
|
+
|------|-------------|
|
|
63
|
+
| `gog_gmail_archive` | Archive by IDs or query |
|
|
64
|
+
| `gog_gmail_mark_read` | Mark read by IDs or query |
|
|
65
|
+
| `gog_gmail_mark_unread` | Mark unread by IDs or query |
|
|
66
|
+
| `gog_gmail_trash` | Trash by IDs or query |
|
|
67
|
+
| `gog_gmail_message_modify` | Modify labels on a single message |
|
|
68
|
+
| `gog_gmail_batch_delete` | Permanently delete multiple messages |
|
|
69
|
+
| `gog_gmail_batch_modify` | Modify labels on multiple messages |
|
|
70
|
+
|
|
71
|
+
### Drafts
|
|
72
|
+
| Tool | What it does |
|
|
73
|
+
|------|-------------|
|
|
74
|
+
| `gog_gmail_drafts_list` | List drafts |
|
|
75
|
+
| `gog_gmail_drafts_get` | Get a draft |
|
|
76
|
+
| `gog_gmail_drafts_create` | Create a draft |
|
|
77
|
+
| `gog_gmail_drafts_update` | Update a draft |
|
|
78
|
+
| `gog_gmail_drafts_delete` | Delete a draft |
|
|
79
|
+
| `gog_gmail_drafts_send` | Send a draft |
|
|
80
|
+
|
|
81
|
+
### Write
|
|
82
|
+
| Tool | What it does |
|
|
83
|
+
|------|-------------|
|
|
84
|
+
| `gog_gmail_forward` | Forward a message |
|
|
85
|
+
| `gog_gmail_autoreply` | Reply once to all messages matching a query |
|
|
86
|
+
|
|
87
|
+
Plus 5 auth tools and 4 base Gmail tools (search, get, send, run). Use `gog_gmail_run` for advanced settings (`filters`, `delegates`, `forwarding`, `sendas`, `vacation`, `watch`) and email tracking (`track`).
|