Skip to main content
Glama

Deprecated Use Instead

⚠️ Deprecated Notice

Jules MCP is now deprecated. Google Labs has released their official Jules SDK with native Model Context Protocol (MCP) support, making this community package obsolete.

NPM Version License: MIT TypeScript Model Context Protocol

🗺️ Navigation


⚙️ Setup

Choose the installation method that fits your workflow. Both methods require a Jules API Key.

IMPORTANT

Visitjules.google.com/settings/api to generate your credentials before proceeding.

The fastest way to get started. Copy the block below and paste it into your AI assistant (Antigravity, Cursor, or Claude).

Read https://raw.githubusercontent.com/TheRealAshik/jules-mcp/refs/heads/main/docs/AGENT_INSTALL.md and do as per the instructions.

If you prefer to configure the server yourself, follow these steps:

  1. Locate your config file:

    • Antigravity: ~/.gemini/antigravity/mcp_config.json

    • Claude Desktop: %APPDATA%\Claude\claude_desktop_config.json

    • Cursor: Settings > Features > MCP > Add New Server

  2. Add the following snippet:

{
  "mcpServers": {
    "jules-mcp": {
      "command": "npx",
      "args": ["-y", "@realashik/jules-mcp"],
      "env": {
        "JULES_API_KEY": "YOUR_API_KEY_HERE"
      }
    }
  }
}

📖 Overview

Jules MCP is a Model Context Protocol (MCP) server designed to supercharge AI coding agents to control Jules. While standard AI agents are limited to linear task execution, Jules MCP introduces Staged Orchestration—enabling a "Commander" agent to deploy multiple specialized sub-agents (Maestros, Crews, Freelancers) to handle distinct parts of a project simultaneously or in sequence.

Built on top of the official @google/jules-sdk, it provides the bridge between your IDE and a distributed team of AI workers with advanced features like real-time streaming, session management, and intelligent caching.

TIP

Use IDE agents to analyse and assign tasks to Jules to get best output from this MCP.

NOTE

v1.0.4+ now uses the official Google Jules SDK for improved reliability, streaming support, and better error handling.


🚀 Features

  • 🎭 Multi-Role Orchestration: Spawn MAESTRO (Architect), CREW (Implementer), FREELANCER (Specialist), or EVALUATOR (Quality Control).

  • 📝 Staged Workflows: Automatically manage git branches, code generation, and merging in a single, safe flow.

  • 🧠 Global Shared Memory: Cross-session memory allows workers to pass variables and context like biological collaborators.

  • 🛡️ Quality Enforcement: Built-in review cycles ensure code meets security and performance standards before merging.

  • ⚡ Zero Configuration: Instantly usable via npx with automatic environment discovery.

  • 🌊 Real-time Streaming: Stream live activity updates from Jules sessions using the official SDK.

  • 🔄 Session Management: Simplified session lifecycle with automatic polling and state management.


🌟 Support

If Jules MCP helps you build faster, please consider:

Developed with ❤️ by TheRealAshik

Available Tools

3 tools
jules_create_workerC

Create a new Jules worker session for a task

ParametersJSON Schema
NameRequiredDescriptionDefault
task_descriptionYesDescription of task for the worker
sourceYesGitHub source (format: "sources/github/owner/repo")
titleYesShort title for the session
github_branchNoBranch to work on (optional, default: "main")main
roleNoWorker role (MAESTRO, CREW, FREELANCER, EVALUATOR)FREELANCER
parent_session_idNoID of parent worker (if CREW)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It mentions 'create' which implies a write/mutation operation, but fails to describe permissions needed, side effects, session lifecycle, or response format. This is inadequate for a creation tool with zero annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, making it easy to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a creation tool with 6 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what a 'Jules worker session' entails, how it's used, what happens after creation, or any behavioral traits. The agent lacks critical context for proper tool invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all parameters are documented in the schema. The description adds no additional parameter context beyond implying a 'task' context, which is already covered by the 'task_description' parameter. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create') and resource ('new Jules worker session for a task'), making the purpose understandable. It distinguishes from siblings like 'jules_get_activities' (read) and 'jules_send_message' (communication), but doesn't explicitly differentiate beyond the basic verb. A 5 would require more specific sibling differentiation.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives, prerequisites, or contextual constraints. It simply states what it does without indicating appropriate scenarios or exclusions, leaving the agent with minimal usage direction.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

jules_get_activitiesC

Get recent activities for a Jules worker

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idYesWorker session ID
limitNoMaximum number of activities to return (default: 10)

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves activities but omits critical details such as whether it's read-only, if there are rate limits, authentication needs beyond session_id, or what the return format looks like. This is a significant gap for a tool with no annotation coverage.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It is front-loaded and wastes no space, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete. It fails to explain behavioral traits (e.g., safety, rate limits), return values, or error conditions. For a tool with two parameters and retrieval functionality, more context is needed to ensure proper agent usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema fully documents both parameters (session_id and limit). The description does not add any meaning beyond what the schema provides, such as explaining what a 'session_id' represents or how 'limit' affects performance. Baseline 3 is appropriate when the schema handles parameter documentation.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb ('Get') and resource ('recent activities for a Jules worker'), making the purpose understandable. It distinguishes from siblings like 'jules_create_worker' (creation) and 'jules_send_message' (messaging) by focusing on retrieval. However, it lacks specificity about what 'activities' entail, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites (e.g., needing a valid session_id), exclusions, or contextual cues. This leaves the agent without direction on appropriate usage scenarios.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

jules_send_messageC

Send a message to an existing Jules worker session

ParametersJSON Schema
NameRequiredDescriptionDefault
session_idYesWorker session ID
messageYesMessage text to send

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden for behavioral disclosure. It states the tool sends a message but doesn't cover critical aspects like authentication needs, rate limits, side effects, or what happens after sending (e.g., response format, errors). This leaves significant gaps for an agent to understand the tool's behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence with zero waste. It's appropriately sized and front-loaded, directly stating the tool's purpose without unnecessary elaboration.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description is incomplete for a tool that performs an action like sending a message. It lacks details on behavioral traits, response expectations, and how it fits with sibling tools, leaving the agent with insufficient context for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters clearly documented in the schema. The description adds no additional meaning beyond what the schema provides (e.g., format examples, constraints), so it meets the baseline for high schema coverage without compensating value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Send a message') and target ('to an existing Jules worker session'), providing a specific verb+resource combination. However, it doesn't explicitly differentiate from sibling tools like jules_create_worker or jules_get_activities, which prevents a perfect score.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides minimal guidance by specifying 'to an existing Jules worker session,' implying a prerequisite but not stating it explicitly. No alternatives are mentioned, and there's no clear when-to-use vs. when-not-to-use guidance relative to sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv1.0.0
    • First observedjules_create_worker
    • First observedjules_get_activities
    • First observedjules_send_message

TDQS

B3.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: creating a worker, getting activities, and sending messages. There is no overlap in functionality, and the descriptions make it easy to tell them apart.

Naming Consistency5/5

All tools follow a consistent 'jules_verb_noun' pattern with snake_case, using clear verbs like create, get, and send. The naming is predictable and uniform throughout the set.

Tool Count3/5

With only 3 tools, the set feels thin for a worker session management domain. While it covers basic operations, it lacks tools for updating, deleting, or managing worker states, which might limit agent workflows.

Completeness2/5

The tool surface is significantly incomplete for managing Jules workers. It includes create, get activities, and send message, but misses essential operations like updating worker settings, deleting sessions, listing workers, or handling errors, which could cause agent failures.

Related MCP Connectors