---
title: Clipboard Write
description: Write text to the system clipboard from a workflow.
---

Copy text to your clipboard so it is ready to paste anywhere.

## Try it

## What it does

Clipboard Write puts the text in **Text** on the system clipboard, replacing what was there. It only writes: it never reads what you copied before.

The copy is made through the active tab, and the browser only allows it while that tab has focus. If the write is refused, the node fails with a clear error instead of pretending it worked. It copies text only, not images or files.

## When to use it

* Put a generated value (a summary, a reply draft, a short link, a code) on the clipboard so you can paste it straight away.
* Move a result into another app that has no integration: copy it, then paste.
* To show the result instead, use [Display Markdown](/nodes/extension/displaymarkdown/).

## Inputs and settings

**Text** usually comes from an earlier node, for example `{{ $input.text }}`. It cannot be empty.

## Outputs

Each output item has these fields:

```json title="Shape of an output item"
{
  "written": true
}
```

`written` is `true` when the text is on the clipboard. When the copy fails, the node fails instead, so later nodes only run after a successful copy.

## Dependencies and credentials

None. This node needs no connection and has no slots for other nodes.

## Example workflow

1. Add a [Context Menu](/nodes/builtin/trigger/contextmenu/) trigger and select an email on the page.
2. Add [Get Selected Text](/nodes/extension/getselectedtext/) with **Output field name** = `email`.
3. Add a [Basic LLM Chain](/nodes/builtin/ai/aiagents/basicllmchainnode/) with **Prompt** = `Write a short, polite reply to: {{ $input.email }}`, and connect a chat model.
4. Add **Clipboard Write** with **Text** = `{{ $input.response }}`, then paste the reply in your mail app.

## Common issues

* **"Document is not focused" or "Clipboard write failed".** The browser only allows copying while the page has focus. Click into the page, keep it in front while the workflow runs, and try again.
* **The node fails on a browser page.** Browser settings pages and the extension store cannot be used; run it with a normal web page as the active tab.
* **The pasted text is not what you expected.** Check what **Text** resolves to in the node's input; an expression pointing at the wrong field gives the wrong text.
* **The node fails outside the extension.** This node runs in the browser extension; install it or run the workflow from the extension.

## Recipes with this node

## Related nodes

* [Get Selected Text](/nodes/extension/getselectedtext/): read the text you highlighted.
* [Text / Formatter](/nodes/builtin/datatransformation/text-formatter/): shape the text before copying it.
* [Display Markdown](/nodes/extension/displaymarkdown/): show the result on the page instead.