Skip to main content
Glama
german-borisevich

Apache Zeppelin MCP Server

update_paragraph

DestructiveIdempotent

Replaces a paragraph's code or text in an Apache Zeppelin notebook and backs up the previous content before applying the update.

Instructions

Update paragraph code/text. Previous content is automatically backed up before changes.

Sends the whole new text — for small targeted changes prefer edit_paragraph, which sends
only the changed snippet.

Args:
    notebook_id: The notebook ID containing the paragraph
    paragraph_id: The paragraph ID to update
    text: The new code/content for the paragraph
    title: Optional new title for the paragraph

Input Schema

NameRequiredDescriptionDefault
textYes
titleNo
notebook_idYes
paragraph_idYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.1

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare non-read-only, idempotent, and destructive, and the description adds genuine context beyond them: previous content is automatically backed up before changes, and the call replaces the whole text rather than patching it. It stops short of describing failure modes (e.g. mismatched notebook_id/paragraph_id) or what the response contains, but the destructive-safety picture is materially improved.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The full-replacement vs. snippet distinction is front-loaded in the first two sentences, which is the highest-value information. The Args block is slightly redundant with the schema field names but earns its place given zero schema description coverage.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be described, and the description covers replacement semantics, backup behavior, and the sibling routing rule. For a four-parameter mutation tool it is nearly self-sufficient, missing only error/ID-consistency behavior.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description must carry the load, and its Args block documents all four parameters — including that title is optional and that text is the full new content. It doesn't specify ID formats or whether notebook_id must match the paragraph's actual notebook, leaving a small gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ("Update paragraph code/text") and immediately distinguishes itself from the closest sibling, edit_paragraph. An agent can tell which of the two paragraph-modification tools to reach for without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly names the alternative (edit_paragraph) and the condition that selects it: small targeted changes should use edit_paragraph because it sends only the changed snippet. That is a real when-to-use decision rule, not vague guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.