MCP Reference: pubsub.googleapis.com

A Model Context Protocol (MCP) server acts as a proxy between an external service that provides context, data, or capabilities to a Large Language Model (LLM) or AI application. MCP servers connect AI applications to external systems such as databases and web services, translating their responses into a format that the AI application can understand.

Server Setup

You must enable MCP servers and set up authentication before use. For more information about using Google and Google Cloud remote MCP servers, see Google Cloud MCP servers overview.

Server Endpoints

An MCP service endpoint is the network address and communication interface (usually a URL) of the MCP server that an AI application (the Host for the MCP client) uses to establish a secure, standardized connection. It is the point of contact for the LLM to request context, call a tool, or access a resource. Google MCP endpoints can be global or regional.

The pubsub.googleapis.com MCP server has the following MCP endpoint:

  • https://pubsub.googleapis.com/mcp

MCP Tools

An MCP tool is a function or executable capability that an MCP server exposes to a LLM or AI application to perform an action in the real world.

The pubsub.googleapis.com MCP server has the following tools:

MCP Tools
create_topic

Create a new Cloud Pub/Sub topic.

Important Notes

  • A topic is a named resource that represents a feed of messages.
update_topic

Update an existing Cloud Pub/Sub topic.

Important Notes

  • A topic is a named resource that represents a feed of messages.

  • Certain properties of a topic, such as its name, are not modifiable.

delete_topic

Delete an existing Cloud Pub/Sub topic.

Important Notes

  • A topic is a named resource that represents a feed of messages.

  • Existing subscriptions to this topic are not deleted, but their topic field is set to _deleted-topic_.

get_topic

Get the configuration of a Cloud Pub/Sub topic.

Important Notes

  • A topic is a named resource that represents a feed of messages.
list_topics

List all Cloud Pub/Sub topics in a given project.

Important Notes

  • A topic is a named resource that represents a feed of messages.
create_subscription

Create a new Cloud Pub/Sub subscription to a given topic.

Important Notes

  • A subscription is a named resource that represents a stream of messages from a single, specific topic, to be delivered to the subscribing application.
update_subscription

Update an existing Cloud Pub/Sub subscription.

Important Notes

  • A subscription is a named resource that represents a stream of messages from a single, specific topic, to be delivered to the subscribing application.

  • Certain properties of a subscription, such as its topic, are not modifiable.

delete_subscription

Delete an existing Cloud Pub/Sub subscription.

Important Notes

  • A subscription is a named resource that represents a stream of messages from a single, specific topic, to be delivered to the subscribing application.

  • All messages retained in the subscription are immediately dropped.

  • Calls to Pull after deletion will return NOT_FOUND.

get_subscription

Get the configuration of a Cloud Pub/Sub subscription.

Important Notes

  • A subscription is a named resource that represents a stream of messages from a single, specific topic, to be delivered to the subscribing application.
list_subscriptions

List all Cloud Pub/Sub subscriptions in a given project.

Important Notes

  • A subscription is a named resource that represents a stream of messages from a single, specific topic, to be delivered to the subscribing application.
create_snapshot

Create a new Cloud Pub/Sub snapshot from a given subscription.

Important Notes

  • A snapshot is a named resource that captures the acknowledgment state of messages in an existing subscription to allow for managing acknowledgments in bulk.

  • Snapshots are used in Seek operations to manage message acknowledgments in bulk.

delete_snapshot

Delete an existing Cloud Pub/Sub snapshot.

Important Notes

  • A snapshot is a named resource that captures the acknowledgment state of messages in an existing subscription to allow for managing acknowledgments in bulk.

  • When the snapshot is deleted, all messages retained in the snapshot are immediately dropped.

get_snapshot

Get the configuration of a Cloud Pub/Sub snapshot.

Important Notes

  • A snapshot is a named resource that captures the acknowledgment state of messages in an existing subscription to allow for managing acknowledgments in bulk.
list_snapshots

List all Cloud Pub/Sub snapshots in a given project.

Important Notes

  • A snapshot is a named resource that captures the acknowledgment state of messages in an existing subscription to allow for managing acknowledgments in bulk.
publish

Publish a series of one or more messages to an existing topic.

Usage

  1. Create a new byte array to hold the message data.

  2. Populate the byte array with the message data.

  3. Call publish passing the topic name and the byte array.

Important Notes

  • If the publish call returns NOT_FOUND, it likely means the topic does not exist. In this case, you should return an error.

Get MCP tool specifications

To get the MCP tool specifications for all tools in an MCP server, use the tools/list method. The following example demonstrates how to use curl to list all tools and their specifications currently available within the MCP server.

Curl Request
                  
curl --location 'https://pubsub.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
    "method": "tools/list",
    "jsonrpc": "2.0",
    "id": 1
}'