Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| JULES_API_KEY | Yes | Your Google Jules API key, generated from the Jules Settings page (https://jules.google.com/settings). |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_sources | List available GitHub repositories that Jules can work with. Args: page_size: Number of sources to return (1-100, default 30) page_token: Token for pagination from previous response Returns: Dictionary with sources list and optional nextPageToken |
| get_source | Get details about a specific source repository. Args: source_name: Resource name of the source (e.g., "sources/github/owner/repo") Returns: Source details including branches and repository info |
| list_sessions | List Jules sessions (coding tasks). Args: page_size: Number of sessions to return (1-100, default 30) page_token: Token for pagination from previous response active_only: If True, filter to only show non-completed/failed sessions Returns: Dictionary with sessions list and optional nextPageToken |
| get_session | Get details about a specific session. Args: session_name: Resource name of the session (e.g., "sessions/abc123") Returns: Session details including state, outputs, and URL |
| create_session | Create a new Jules session to work on a coding task. Args: prompt: The coding task description for Jules to work on source: Resource name of the source repository (e.g., "sources/github/owner/repo") branch: Optional branch name to use (defaults to repository default branch) title: Optional title for the session (auto-generated if not provided) require_plan_approval: If True, Jules will wait for plan approval before executing Returns: Created session details including ID, state, and URL to view progress |
| send_message | Send a follow-up message to an active Jules session. Use this to provide additional context, clarify requirements, or respond to Jules when it's waiting for user feedback. Args: session_name: Resource name of the session (e.g., "sessions/abc123") message: The message to send to Jules Returns: Success confirmation |
| approve_plan | Approve Jules's plan for a session. Use this when a session is in AWAITING_PLAN_APPROVAL state and you want Jules to proceed with its proposed plan. Args: session_name: Resource name of the session (e.g., "sessions/abc123") Returns: Success confirmation |
| list_activities | List activities (work history) for a session. Activities represent individual work units within a session, showing the conversation and actions taken by Jules. Args: session_name: Resource name of the session (e.g., "sessions/abc123") page_size: Number of activities to return (1-100, default 50) page_token: Token for pagination from previous response Returns: Dictionary with activities list and optional nextPageToken |
| create_pull_request | Create a session that will result in a pull request. This is a convenience wrapper around create_session that instructs Jules to create a PR. The session will automatically create a merge/pull request when the work is complete. Args: prompt: Description of changes to make (be specific about what you want) source: Resource name of the source repository (e.g., "sources/github/owner/repo") branch: Optional base branch to create PR against (defaults to repository default) title: Optional title for the session/PR Returns: Created session details - check the 'outputs' field for PR URL once completed |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |