google-jules-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JULES_API_KEY | Yes | Your Jules API key. Get one from https://jules.google.com/settings#api |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| jules_list_sourcesA | List all GitHub repositories connected to Jules. You must install the Jules GitHub app at https://jules.google.com before repositories appear here. |
| jules_get_sourceA | Get details for a single GitHub repository connected to Jules, including its branches and visibility. Use jules_list_sources to see all connected repositories. |
| jules_create_sessionA | Start a new asynchronous coding task with Jules. Provide a detailed task description and the repository to work on. Jules runs in an isolated cloud VM and typically completes tasks in 5-60 minutes depending on complexity. |
| jules_bulk_create_sessionsA | Create sessions across multiple repositories, reporting each result independently. |
| jules_list_sessionsA | List all your Jules sessions with their current states. Useful for finding session IDs or checking on multiple tasks. |
| jules_list_stuck_sessionsA | List sessions that are waiting for plan approval or user feedback, following pagination automatically. |
| jules_schedule_recurring_sessionC | Create a persistent cron schedule for recurring Jules sessions. |
| jules_list_recurring_schedulesA | List persistent recurring session schedules. |
| jules_cancel_recurring_scheduleC | Cancel a recurring session schedule. |
| jules_get_statusA | Check the current status and recent activity of a Jules session. Use this to poll for progress and completion. Sessions typically take 5-60 minutes to complete. |
| jules_send_messageA | Send a follow-up message or instruction to a running Jules session. Jules will respond in the next activity, which you can see with jules_list_activities or jules_get_status. |
| jules_approve_planA | Approve the execution plan for a Jules session that has requirePlanApproval=true. Only needed when session state is AWAITING_PLAN_APPROVAL. View the plan first with jules_list_activities. |
| jules_get_session_outputA | Retrieve the final output and results from a completed Jules session, including pull request details. Use after session state is COMPLETED. |
| jules_delete_sessionA | Permanently delete a Jules session. This cannot be undone. Use jules_archive_session instead if you may want the session back later. |
| jules_archive_sessionA | Archive a Jules session to hide it from the default session list without deleting it. Use jules_unarchive_session to restore it. |
| jules_unarchive_sessionA | Restore a previously archived Jules session so it appears in the default session list again. |
| jules_wait_for_sessionA | Wait/poll for a Jules session to complete. Automatically tracks progress, emits progress notifications, and returns a unified payload with final state, summary, and PR details upon resolution. Bounded by a wait limit to prevent timeouts. |
| jules_execute_and_waitA | Create a new Jules session and immediately wait/poll for its completion. Automatically tracks progress, emits progress notifications, and returns a unified payload with final state, summary, and PR details upon resolution. Bounded by a wait limit to prevent timeouts. |
| jules_list_activitiesB | Get detailed activity log for a Jules session. Activities include plan generation, progress updates, messages, and completion events. Most recent activities appear first. |
| jules_get_activityA | Get a single activity from a Jules session by ID. Use jules_list_activities to find activity IDs. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 20 tools
Most tools target distinct resources and actions, but the monitoring tools (get_status, list_activities, get_activity, wait_for_session) have overlapping purposes and could cause some selection hesitation. Descriptions generally clarify the differences, so ambiguity is limited to a few related tools.
All tools share a consistent jules_ prefix and follow a clear verb_noun pattern such as create_session, list_sessions, archive_session, and get_activity. This makes the API predictable and easy to navigate.
With 20 tools, the server is on the higher end of the ideal range, but the count is justified by the breadth of session management, source management, recurring schedules, and activity monitoring. A few tools like jules_get_activity and jules_list_stuck_sessions are somewhat specialized but still serve distinct workflows.
The server covers the main Jules lifecycle well: create, list, monitor, interact, output retrieval, archive, delete, bulk operations, and recurring schedules. The most notable gap is the lack of an explicit cancel/terminate action for a running session, though send_message may serve as a partial workaround.