Metadata-Version: 2.4
Name: barie-google-docs-mcp
Version: 0.1.3
Summary: Google Docs MCP Server for managing Google Docs via the Model Context Protocol
Author-email: Barie <support@barie.ai>
License: MIT
Keywords: google-api,google-docs,mcp,model-context-protocol
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Requires-Dist: google-api-python-client>=2.130.0
Requires-Dist: google-auth-oauthlib>=1.2.0
Requires-Dist: google-auth>=2.29.0
Requires-Dist: mcp>=0.9.0
Requires-Dist: pydantic>=2.0.0
Description-Content-Type: text/markdown

# Barie Google Docs MCP Server

A Model Context Protocol (MCP) server for managing **Google Docs** - list docs, create docs, fetch document structure, rename documents, and edit content.

## Installation

```bash
# Run directly from PyPI (recommended)
uvx barie-google-docs-mcp --help

# Optional: pin a version
uvx barie-google-docs-mcp==0.1.1 --help

# Or install locally
pip install -e .
```

## Usage

```bash
uvx barie-google-docs-mcp \
  --access-token "YOUR_ACCESS_TOKEN" \
  --refresh-token "YOUR_REFRESH_TOKEN" \
  --client-id "YOUR_CLIENT_ID" \
  --client-secret "YOUR_CLIENT_SECRET" \
  --scopes '["https://www.googleapis.com/auth/drive", "https://www.googleapis.com/auth/documents"]'
```

## Cursor MCP Config

```json
{
  "mcpServers": {
    "google-docs": {
      "command": "uvx",
      "args": [
        "barie-google-docs-mcp",
        "--access-token", "YOUR_ACCESS_TOKEN",
        "--refresh-token", "YOUR_REFRESH_TOKEN",
        "--client-id", "YOUR_CLIENT_ID",
        "--client-secret", "YOUR_CLIENT_SECRET"
      ]
    }
  }
}
```

### Required Arguments

- `--access-token` - Google OAuth2 access token
- `--refresh-token` - Google OAuth2 refresh token
- `--client-id` - Google OAuth2 client ID
- `--client-secret` - Google OAuth2 client secret

### Optional Arguments

- `--expiry` - Token expiry timestamp (ISO format)
- `--scopes` - OAuth2 scopes as JSON array string

## Tools

| Tool | Description |
|------|-------------|
| `list-documents` | List Google Docs files from Drive |
| `get-document` | Get a document structure by ID |
| `create-document` | Create a new Google Doc |
| `update-document-title` | Rename an existing Google Doc |
| `insert-text` | Insert text at a given index |
| `replace-text` | Replace all matching text in a document |

## Development

```bash
python server.py --help
```
