MCP Tools Reference: securesourcemanager.googleapis.com

Tool: get_pull_request

Retrieves details of a pull request in a Secure Source Manager repository.

The following code sample shows how to use curl to call the get_pull_request MCP tool.

Curl Request
curl --location 'https://securesourcemanager.europe-west4.rep.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "get_pull_request",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'

Input Schema

GetPullRequestRequest is the request to get a pull request.

GetPullRequestRequest

JSON representation
{
  "name": string
}
Fields
name

string

Required. Name of the pull request to retrieve. The format is projects/{project}/locations/{location}/repositories/{repository}/pullRequests/{pull_request}.

Output Schema

Metadata of a PullRequest. PullRequest is the request from a user to merge a branch (head) into another branch (base).

PullRequest

JSON representation
{
  "name": string,
  "title": string,
  "body": string,
  "base": {
    object (Branch)
  },
  "head": {
    object (Branch)
  },
  "state": enum (State),
  "createTime": string,
  "updateTime": string,
  "closeTime": string
}
Fields
name

string

Output only. Identifier. A unique identifier for a PullRequest. The number appended at the end is generated by the server. Format: projects/{project}/locations/{location}/repositories/{repository}/pullRequests/{pull_request_id}

title

string

Required. The pull request title.

body

string

Optional. The pull request body. Provides a detailed description of the changes.

base

object (Branch)

Required. The branch to merge changes in.

head

object (Branch)

Immutable. The branch containing the changes to be merged.

state

enum (State)

Output only. State of the pull request (open, closed or merged).

createTime

string (Timestamp format)

Output only. Creation timestamp.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

updateTime

string (Timestamp format)

Output only. Last updated timestamp.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

closeTime

string (Timestamp format)

Output only. Close timestamp (if closed or merged). Cleared when pull request is re-opened.

Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".

Branch

JSON representation
{
  "ref": string,
  "sha": string
}
Fields
ref

string

Required. Name of the branch.

sha

string

Output only. The commit at the tip of the branch.

Timestamp

JSON representation
{
  "seconds": string,
  "nanos": integer
}
Fields
seconds

string (int64 format)

Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be between -62135596800 and 253402300799 inclusive (which corresponds to 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z).

nanos

integer

Non-negative fractions of a second at nanosecond resolution. This field is the nanosecond portion of the duration, not an alternative to seconds. Negative second values with fractions must still have non-negative nanos values that count forward in time. Must be between 0 and 999,999,999 inclusive.

State

State of the pull request.

Enums
STATE_UNSPECIFIED Unspecified.
OPEN An open pull request.
CLOSED A closed pull request.
MERGED A merged pull request.

Tool Annotations

Destructive Hint: ❌ | Idempotent Hint: ❌ | Read Only Hint: ✅ | Open World Hint: ❌