MCP Tools Reference: managedkafka

Tool: update_topic

Update an existing Google Cloud Managed service for Apache Kafka topic.

Important Notes:

  • The UpdateTopic request requires the name of the topic to be updated in the format projects/{project}/locations/{location}/clusters/{cluster}/topics/{topic}.

The following sample demonstrate how to use curl to invoke the update_topic MCP tool.

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

Input Schema

Request message for UpdateTopic.

UpdateTopicRequest

JSON representation
{
  "name": string,
  "configs": {
    string: string,
    ...
  },
  "fieldsToClear": [
    string
  ],

  // Union field _partition_count can be only one of the following:
  "partitionCount": integer
  // End of list of possible types for union field _partition_count.
}
Fields
name

string

Required. The name of the topic to update. Format: projects/{project}/locations/{location}/clusters/{cluster_id}/topics/{topic_id}

configs

map (key: string, value: string)

Optional. Configurations for the topic that are overridden from the cluster defaults. Note that this will replace the entire set of configs for the topic.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

fieldsToClear[]

string

Optional. Fields to clear in the topic update.

Union field _partition_count.

_partition_count can be only one of the following:

partitionCount

integer

Optional. The number of partitions this topic has.

ConfigsEntry

JSON representation
{
  "key": string,
  "value": string
}
Fields
key

string

value

string

Output Schema

A Kafka topic in a given cluster.

Topic

JSON representation
{
  "name": string,
  "partitionCount": integer,
  "replicationFactor": integer,
  "configs": {
    string: string,
    ...
  }
}
Fields
name

string

Identifier. The name of the topic. The topic segment is used when connecting directly to the cluster. Structured like: projects/{project}/locations/{location}/clusters/{cluster}/topics/{topic}

partitionCount

integer

Required. The number of partitions this topic has. The partition count can only be increased, not decreased. Please note that if partitions are increased for a topic that has a key, the partitioning logic or the ordering of the messages will be affected.

replicationFactor

integer

Required. Immutable. The number of replicas of each partition. A replication factor of 3 is recommended for high availability.

configs

map (key: string, value: string)

Optional. Configurations for the topic that are overridden from the cluster defaults. The key of the map is a Kafka topic property name, for example: cleanup.policy, compression.type.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ConfigsEntry

JSON representation
{
  "key": string,
  "value": string
}
Fields
key

string

value

string

Tool Annotations

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