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:
Create a new Cloud Pub/Sub topic.
Important Notes
- A topic is a named resource that represents a feed of messages.
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 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
topicfield is set to_deleted-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 all Cloud Pub/Sub topics in a given project.
Important Notes
- A topic is a named resource that represents a feed of messages.
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 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 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
Pullafter deletion will returnNOT_FOUND.
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 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 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 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 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 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 a series of one or more messages to an existing topic.
Usage
-
Create a new byte array to hold the message data.
-
Populate the byte array with the message data.
-
Call
publishpassing 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 }' |

