google-jules-mcp
Google Jules MCP
Documentation
Google Jules MCP
A Model Context Protocol (MCP) server for automating Google Jules - the AI coding assistant. This MCP enables seamless integration with Jules for task creation, code review automation, repository management, and AI-powered development workflows.
Features
๐ฏ Task Management
- Create Tasks: Automatically create Jules tasks with repository and description
- Monitor Progress: Track task status and get real-time updates
- Approve Plans: Review and approve Jules execution plans
- Resume Tasks: Resume paused or interrupted tasks
- Bulk Operations: Create multiple tasks efficiently
๐ง Code Operations
- Code Analysis: Analyze code changes and diffs
- Branch Management: Handle repository branches and configurations
- Source Navigation: Browse and analyze source files
- Review Automation: Automate code review workflows
๐ฌ Interactive Communication
- Send Messages: Send instructions and feedback to Jules
- Chat History: Track conversation history with Jules
- Context Extraction: Extract relevant context from task discussions
๐ Project Management
- Task Listing: List and filter tasks by status
- Progress Tracking: Monitor development progress across projects
- Data Persistence: Local storage of task data and history
๐ Session Management (NEW!)
- Multiple Session Modes: Fresh, Chrome profile, cookies, persistent, and Browserbase
- Google Authentication: Seamless login with existing Google sessions
- Cookie Management: Extract, save, and restore authentication cookies
- Remote Browser Support: Use Browserbase for cloud deployments
- Cross-Platform: Works locally and in cloud environments
Available Tools
| Tool | Description |
|---|---|
| Task Management | |
| `jules_create_task` | Create a new Jules task with repository and description |
| `jules_get_task` | Get detailed information about a specific task |
| `jules_send_message` | Send messages/instructions to Jules in active tasks |
| `jules_approve_plan` | Approve Jules execution plans |
| `jules_resume_task` | Resume paused tasks |
| `jules_list_tasks` | List tasks with filtering options |
| `jules_analyze_code` | Analyze code changes and project structure |
| `jules_bulk_create_tasks` | Create multiple tasks from a list |
| Session & Authentication | |
| `jules_get_cookies` | Get current browser cookies for session persistence |
| `jules_set_cookies` | Set browser cookies from string/JSON for authentication |
| `jules_session_info` | Get current session configuration and status |
| Debugging | |
| `jules_screenshot` | Take debugging screenshots |
Installation
Prerequisites
- Node.js 18+
- TypeScript
- Git access to repositories you want to manage
Setup
# Clone the repository
git clone https://github.com/samihalawa/google-jules-mcp.git
cd google-jules-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Test the installation
npm test๐ Session Management & Authentication
Session Modes
The MCP supports 5 different session management modes:
| Mode | Description | Use Case |
|---|---|---|
| `fresh` | New browser session each time | Testing, no authentication needed |
| `chrome-profile` | Use existing Chrome profile | Local development with existing Google login |
| `cookies` | Save/load cookies to file | Persistent authentication without full profile |
| `persistent` | Save browser data to directory | Local development with full session persistence |
| `browserbase` | Remote browser session | Cloud deployments, Smithery hosting |
Configuration Options
๐ Browserbase (Recommended for Smithery)
Perfect for remote deployments and cloud hosting:
SESSION_MODE=browserbase
BROWSERBASE_API_KEY=bb_live_g3i-b4WPFh__E3cErKE5rO-jWds # Your API key
BROWSERBASE_PROJECT_ID=d718e85f-be7b-497d-9123-b1bbf798f1bb # Your project ID
BROWSERBASE_SESSION_ID= # Optional: use existing session๐ช Cookie Authentication (Best for Manual Setup)
Extract cookies from your browser and set them as environment variable:
SESSION_MODE=cookies
GOOGLE_AUTH_COOKIES="session_id=abc123; domain=.google.com; auth_token=xyz789; domain=.google.com"
COOKIES_PATH=~/.jules-mcp/cookies.json # File to save/load cookies๐ Chrome Profile (Local Development)
Use your existing Chrome profile:
SESSION_MODE=chrome-profile
CHROME_USER_DATA_DIR=/Users/yourname/Library/Application Support/Google/Chrome/Default๐พ Persistent Browser Data
Save browser data to a specific directory:
SESSION_MODE=persistent
CHROME_USER_DATA_DIR=~/.jules-mcp/browser-data # Custom browser data directoryHow to Get Google Authentication Cookies
1. Log in to Jules: Visit https://jules.google.com and log in
2. Open Developer Tools: Press F12 or Cmd+Option+I
3. Go to Application/Storage tab
4. Find Cookies: Look for `.google.com` cookies
5. Copy Important Cookies: Look for cookies like:
Format for environment variable:
GOOGLE_AUTH_COOKIES="cookie1=value1; domain=.google.com; cookie2=value2; domain=.google.com"Environment Configuration
Create a `.env` file or set environment variables:
# Browser Configuration
HEADLESS=true # Run browser in headless mode
TIMEOUT=30000 # Browser timeout in milliseconds
DEBUG=false # Enable debug mode with screenshots
# Session Management
SESSION_MODE=browserbase # fresh | chrome-profile | cookies | persistent | browserbase
# Browserbase Configuration (for remote/cloud deployments)
BROWSERBASE_API_KEY=your_api_key
BROWSERBASE_PROJECT_ID=your_project_id
BROWSERBASE_SESSION_ID=optional_existing_session
# Cookie Authentication
GOOGLE_AUTH_COOKIES="session_id=abc; domain=.google.com"
COOKIES_PATH=~/.jules-mcp/cookies.json
# Chrome Profile (local development)
CHROME_USER_DATA_DIR=/path/to/chrome/profile
# Data Storage
JULES_DATA_PATH=~/.jules-mcp/data.json # Custom data storage pathUsage Examples
1. Create a New Task
// Create a task to fix a bug
{
"name": "jules_create_task",
"arguments": {
"description": "Fix the login authentication bug in the user dashboard. The issue occurs when users try to log in with special characters in their password.",
"repository": "mycompany/webapp",
"branch": "main"
}
}2. Monitor Task Progress
// Get task details and progress
{
"name": "jules_get_task",
"arguments": {
"taskId": "9103172019911831130"
}
}3. Send Instructions to Jules
// Send additional context or instructions
{
"name": "jules_send_message",
"arguments": {
"taskId": "9103172019911831130",
"message": "Please also add unit tests for the authentication fix and ensure backward compatibility."
}
}4. Bulk Task Creation
// Create multiple tasks at once
{
"name": "jules_bulk_create_tasks",
"arguments": {
"tasks": [
{
"description": "Add dark mode support to the UI",
"repository": "mycompany/frontend",
"branch": "feature/dark-mode"
},
{
"description": "Optimize database queries for user search",
"repository": "mycompany/backend",
"branch": "performance/search"
}
]
}
}5. List and Filter Tasks
// List active tasks
{
"name": "jules_list_tasks",
"arguments": {
"status": "in_progress",
"limit": 10
}
}6. Session Management Examples
Check Session Status
{
"name": "jules_session_info",
"arguments": {}
}Get Current Cookies (for backup)
{
"name": "jules_get_cookies",
"arguments": {
"format": "string" // or "json"
}
}Set Authentication Cookies
{
"name": "jules_set_cookies",
"arguments": {
"cookies": "session_id=abc123; domain=.google.com; auth_token=xyz789; domain=.google.com",
"format": "string"
}
}MCP Resources
The server provides useful resources for context:
- `jules://schemas/task` - Complete task data model
- `jules://current/active-tasks` - Live list of active tasks
- `jules://templates/common-tasks` - Template examples for common development tasks
Common Task Templates
The MCP includes templates for common development scenarios:
- Bug Fix: `"Fix the [specific issue] in [filename]. The problem is [description]."`
- Feature Add: `"Add [feature name] functionality to [location]. Requirements: [list requirements]."`
- Refactor: `"Refactor [component/function] to improve [performance/readability/maintainability]."`
- Testing: `"Add comprehensive tests for [component/function] covering [test cases]."`
- Documentation: `"Update documentation for [component] to include [new features/changes]."`
Integration with Claude Code
Local Integration
{
"mcpServers": {
"google-jules-mcp": {
"command": "node",
"args": ["path/to/google-jules-mcp/dist/index.js"],
"env": {
"HEADLESS": "true",
"SESSION_MODE": "cookies",
"GOOGLE_AUTH_COOKIES": "your_cookies_here",
"DEBUG": "false"
}
}
}
}๐ Smithery Deployment
Deploy to Smithery.ai
The MCP is fully configured for Smithery deployment with comprehensive session management:
1. Fork/Clone this repository
2. Deploy to Smithery: Visit smithery.ai and connect your repo
3. Configure Session Management in Smithery settings:
Option A: Browserbase (Recommended)
SESSION_MODE=browserbase
BROWSERBASE_API_KEY=bb_live_g3i-b4WPFh__E3cErKE5rO-jWds
BROWSERBASE_PROJECT_ID=d718e85f-be7b-497d-9123-b1bbf798f1bbOption B: Cookie Authentication
SESSION_MODE=cookies
GOOGLE_AUTH_COOKIES="session_id=abc123; domain=.google.com; auth_token=xyz789; domain=.google.com"4. Access Remotely: Use your deployed MCP from any Claude Code instance
Benefits of Smithery + Browserbase
- โ No Local Browser: Runs entirely in the cloud
- โ Persistent Sessions: Maintain Google authentication across deployments
- โ Global Access: Use from anywhere with internet connection
- โ Auto-scaling: Handles multiple concurrent requests
- โ Zero Setup: No local dependencies or configuration needed
Troubleshooting
Common Issues
1. Browser Automation Fails
2. Task Creation Fails
3. Permission Errors
Debug Mode
Enable debug mode for troubleshooting:
DEBUG=true HEADLESS=false npm startThis will:
- Show browser interactions visually
- Take screenshots on errors
- Provide detailed logging
Development
Project Structure
google-jules-mcp/
โโโ src/
โ โโโ index.ts # Main MCP server implementation
โโโ docs/
โ โโโ referencerecordings/ # Browser automation references
โโโ scripts/
โ โโโ test-mcp.js # Testing script
โโโ dist/ # Compiled output
โโโ package.json
โโโ tsconfig.json
โโโ smithery.yaml # MCP deployment configContributing
1. Fork the repository
2. Create a feature branch
3. Make your changes
4. Add tests if applicable
5. Submit a pull request
Testing
# Run the test suite
npm test
# Build and test
npm run build && npm test
# Development mode with file watching
npm run devArchitecture
The MCP follows established patterns:
- Browser Automation: Uses Playwright for reliable web automation
- Data Persistence: Local JSON storage for task tracking
- Error Handling: Comprehensive error handling with meaningful messages
- Resource Management: Proper browser lifecycle management
- Security: No credential storage, relies on browser session
Workflow Integration
This MCP is designed to integrate with development workflows:
1. Issue Tracking โ Jules Tasks: Convert GitHub issues to Jules tasks
2. Code Review โ Automation: Automate code review processes
3. CI/CD Integration: Trigger Jules tasks from deployment pipelines
4. Team Collaboration: Share Jules task management across teams
License
MIT License - see LICENSE file for details.
Acknowledgments
- Built with the Model Context Protocol SDK
- Inspired by the tusclasesparticulares-mcp implementation patterns
- Browser automation powered by Playwright
Note: This MCP requires access to Google Jules. Ensure you have appropriate permissions and access to the repositories you want to manage.
Frequently asked questions
What is google-jules-mcp?
google-jules-mcp is Google Jules MCP
How do I install google-jules-mcp?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is google-jules-mcp open source?
Yes โ it is hosted on GitHub at https://github.com/samihalawa/google-jules-mcp and has 14 stars.
Related MCP tools
๐ฅ Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.
Use any LLMs (Large Language Models) for Deep Research. Support SSE API and MCP server.
Enhanced MCP server for interactive user feedback and command execution in AI-assisted development, featuring dual interface support (Web UI and Desktop Application) with intelligent environment detection and cross-platform compatibility.
A powerful Zotero AI and MCP plugin with ChatGPT, Gemini 3.7, Claude Fable 5, Claude Opus 5, DeepSeek V4, Grok, OpenRouter, Kimi k3, GLM 5.3, SiliconFlow, GPT-oss, Gemma 4, Qwen 3.8
Connect your browser to AI models. Just use Dia on Chrome, Arc or Firefox.
ๆ้ข MCP Server ๅฏไปฅ่ฎฉ AI ่ชๅจๅฐ Markdown ๆ็ซ ๆ็ๅๅๅธ่ณๅพฎไฟกๅ ฌไผๅทใ
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP