Skip to main content
Glama
german-borisevich

Apache Zeppelin MCP Server

move_paragraph

Idempotent

Moves a paragraph to a new position within the same Zeppelin notebook by specifying notebook ID, paragraph ID, and target index.

Instructions

Move a paragraph to a new position within the same notebook.

Args:
    notebook_id: The notebook ID containing the paragraph
    paragraph_id: The paragraph ID to move
    new_index: The target position index (0-based)

Input Schema

NameRequiredDescriptionDefault
new_indexYes
notebook_idYes
paragraph_idYes

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.1

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds the same-notebook scoping constraint, but omits key mutation behavior: whether other paragraphs' indices shift, what happens if new_index is out of range, and whether permissions are required.

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

Conciseness5/5

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

One front-loaded sentence gives the action and scope, followed by a compact args block for the three parameters. No filler, no restatement of the tool name.

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

Completeness3/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 need not be described. However, for a reordering mutation with three required params, the description leaves unresolved what happens to sibling paragraph positions and what errors to expect, which an agent would want before calling.

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 carries the full burden — and it does document all three parameters, including the genuinely additive detail that new_index is 0-based. It stops short of stating the valid range or how out-of-range values are handled, so it doesn't fully compensate for the coverage gap.

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

Purpose4/5

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

States a concrete verb and resource ('Move a paragraph') and adds a meaningful scope constraint: the move happens 'within the same notebook.' This is enough to distinguish it from siblings like update_paragraph or edit_paragraph, which modify content rather than ordering, though the description never explicitly names an alternative.

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

Usage Guidelines3/5

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

Usage is only implied — an agent infers it should call this to reorder paragraphs. The 'same notebook' phrase implicitly rules out cross-notebook moves, but there is no explicit when-to-use/when-not statement and no mention of when a move would fail or be rejected.

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