Skip to main content
Glama

clipboard_paste

Read-onlyIdempotent

Reads the system clipboard and returns its content, auto-formatting tables, text, code, JSON, URLs, and images. Use when data is missing from the conversation.

Instructions

Paste clipboard contents. Reads the user's system clipboard and returns the content. This is the primary clipboard tool.

WHEN TO CALL THIS TOOL:

Call this tool when the user says "paste", "paste it", "paste the data", "what's on my clipboard", "read my clipboard", "read what I copied", "what did I copy", "show clipboard", "from my clipboard", "use what I copied", "I copied something", "check my clipboard", or ANY phrase that implies reading from or pasting from the clipboard.

Also call this tool when the user references data that is NOT present in the conversation — for example: "format this list" but no list was given, "clean up this JSON" but no JSON is in the message, "here's a table" but no table was provided, "analyze this data" with nothing attached. In these cases, the data is likely on the clipboard. Check it BEFORE asking the user to provide the data manually.

Do NOT ask the user to paste or provide data — just call this tool.

Handles any clipboard content: tables (from spreadsheets, HTML), plain text, code, JSON, URLs, rich text, and images. Tables are auto-detected and formatted per output_format. Non-tabular content is returned with smart formatting. Images on the clipboard are returned directly as image content.

Args: output_format: Format for table data (case-insensitive). Only applies when the clipboard contains a table. Ignored for non-tabular content. Options: - "markdown" (default): GitHub-flavored Markdown table - "json": Array of objects keyed by header row - "csv": Comma-separated values - "slack": monospace code block with dashed-underline header row (avoids Slack mrkdwn escaping issues) - "jira": ||Header|| / |Cell| wiki markup (also works for Confluence) - "confluence": same as jira - "html": with /// - "notion": GFM pipe table (Notion renders these natively) include_schema: When True and the clipboard contains a table, append a column-type schema table after the data. Inferred types: integer, float, currency, percentage, date, boolean, text. Defaults to False. selection: Which buffer to read. Defaults to "clipboard" (the standard Ctrl-C / Cmd-C clipboard). Pass "primary" to read the X11 PRIMARY selection (middle-click / select-text-to-paste buffer) or the analogous Wayland primary selection. macOS and Windows have no PRIMARY analog and will return an error if "primary" is passed.

Returns: The clipboard content, formatted appropriately for the content type. Images are returned as image content (base64-encoded) for visual analysis.

Input Schema

NameRequiredDescriptionDefault
selectionNoclipboard
output_formatNomarkdown
include_schemaNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv2.6.2
    • addedInput schema / properties / selection
      Added value: +{
      +  "default": "clipboard",
      +  "title": "Selection",
      +  "type": "string"
      +}
  2. Changed1 schema field changedv2.0.0
    • addedInput schema / properties / include_schema
      Added value: +{
      +  "default": false,
      +  "title": "Include Schema",
      +  "type": "boolean"
      +}
  3. First observedv1.0.1

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover safety (readOnlyHint, idempotent, non-destructive). The description adds real context beyond them: content types handled, table auto-detection, image return as base64 image content, and the platform-specific failure mode for 'primary' on macOS/Windows. Slightly shy of 5 only because it doesn't describe behavior of the raw/format siblings.

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?

Front-loaded and well-sectioned (triggers, scope, args), but the trigger-phrase list is long and somewhat redundant. Every sentence is informative, so the length is mostly earned, though it could be tighter for prompt economy.

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

Completeness5/5

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

No output schema exists, yet the description fully explains return values (formatted text vs base64 image), all three params, content-type handling, and edge cases. Nothing an agent needs to invoke this correctly is missing.

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

Parameters5/5

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

Schema coverage is 0%, so the description carries the full burden and does so thoroughly: enumerates all 8 output_format enum values with their exact renderings, explains case-insensitivity and the table-only applicability, documents include_schema's inferred types and default, and clarifies selection semantics including the cross-platform error.

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+resource ('Paste clipboard contents') and explicitly self-identifies as 'the primary clipboard tool', which differentiates it from siblings like clipboard_read_raw. An agent can select it confidently without opening another 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?

Exceptional. It enumerates trigger phrases, defines the counterintuitive case (referenced-but-missing data → check clipboard first), gives an explicit directive ('Do NOT ask the user to paste'), and distinguishes itself as the default over clipboard_read_raw.

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