Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| WAYLAND_DISPLAY | No | Compositor socket name (e.g. wayland-0) or absolute path. Auto-detected from $XDG_RUNTIME_DIR. | |
| XDG_RUNTIME_DIR | No | Directory containing the Wayland socket. Auto-detected as /run/user/<uid>. | |
| XDG_SESSION_TYPE | No | Session type hint (wayland or x11). Not required — socket scan is used as fallback. | |
| CLIPBOARD_MCP_DEBUG | No | Enable debug logging ('1' to enable). |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| clipboard_paste | 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 Returns: The clipboard content, formatted appropriately for the content type. Images are returned as image content (base64-encoded) for visual analysis. |
| clipboard_read_raw | Read raw clipboard content in a specific MIME format. Diagnostic tool only — use clipboard_paste instead for normal clipboard access. This tool returns the clipboard content as-is without any parsing or restructuring. Use clipboard_list_formats first to see what MIME types are available. Supports all text/* MIME types plus these text-readable types that have non-text prefixes: image/svg+xml, application/json, application/xml, application/xhtml+xml. Binary MIME types (image/png, audio/, video/, etc.) are rejected — use clipboard_paste for images. Args: mime_type: The MIME type to read from the clipboard. Common values: "text/plain", "text/html", "image/svg+xml", "application/json" Returns: The raw clipboard content in the requested format, or an error message. |
| clipboard_list_formats | List the MIME types / formats currently on the system clipboard. Diagnostic tool — use clipboard_paste to actually read and return clipboard content. Lists what formats are present. For spreadsheet data, you want to see "text/html" (best) or "text/plain" (fallback with tab-separated values). Returns: A list of available clipboard formats. |
| clipboard_copy | Copy text to the user's system clipboard. Replaces whatever is currently on the clipboard with the provided content. WHEN TO CALL THIS TOOL: Call this tool when the user says "copy this", "put this on my clipboard", "copy to clipboard", "send to clipboard", or any phrase that implies writing content to the clipboard. Also call this tool when you have produced formatted output (cleaned-up JSON, a markdown table, reformatted code, etc.) and the user wants to use it outside the conversation — copying to clipboard lets them paste it elsewhere. Args: content: The text to place on the clipboard. Any string is accepted. Returns: A confirmation message with the number of characters copied. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |