PenEcho Cloud

Connect AI assistants to your PenEcho canvas.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeCan modify data

What it can do

  • Penecho Inbox: Read independent message/feedback pages; preserve both cursors. Only mode:ack marks IDs. Screenshots are opt-in.
  • Penecho Get Guidance: Read task-specific authoring guidance. Visual Explorer always includes the complete design contract; other guides are brief by default, full for complete examples and rules. Reus
  • Penecho List Canvases: List every open document published by opted-in, MCP-enabled browser connections. Entries match the browser MCP list; closed documents are excluded. Use exact instanceId/canvasId

What data it sees

Do you need an account

No: the server works without sign-in

Connect AI assistants to your PenEcho canvas. Work with handwriting, notes, equations, and diagrams in a shared visual workspace.

What you can do

  • Read canvas content and respond to handwritten notes and feedback.
  • Create or open canvases and edit their content with AI.
  • Build diagrams and visual explanations alongside your ideas.
  • Use 20 tools, 4 prompts, and 2 resources to support canvas workflows.

Getting started

  1. Sign in to PenEcho at https://penecho.ai.
  2. Enable Cloud MCP in PenEcho and keep the canvas you want to work with open in an MCP-enabled browser session.
  3. Connect through Smithery using your own PenEcho account credentials. Each user connects to their own workspace.
  4. Ask your assistant to list your available canvases, read your notes, or create a visual explanation.

The remote MCP endpoint is https://penecho.ai/mcp. Direct clients using a personal access token must send it as an Authorization header in the format Bearer YOUR_TOKEN.

Learn more: https://penecho.ai Support: support@penecho.ai

How to connect

How to connect PenEcho Cloud to Claude

The server address to paste into Claude settings:

https://penecho_cloud--penecho.run.tools

  1. Open Claude (claude.ai or the desktop app).
  2. Go to Settings → Connectors.
  3. Click Add custom connector.
  4. Paste the server address copied below into Remote MCP server URL and click Add.
  5. In a chat, click + → Connectors and switch the new connector on.

Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.

Authorization

After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.

How to connect PenEcho Cloud to ChatGPT

The server address to paste into ChatGPT settings:

https://penecho_cloud--penecho.run.tools

  1. Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
  2. Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
  3. Open Settings → Connectors and click Create.
  4. Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
  5. Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
  6. In a new chat open + → Apps/Connectors and enable the connector.

OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.

Authorization

On first use ChatGPT opens the service's sign-in window. Sign in and approve access.

How to connect PenEcho Cloud to Cursor

The server address to paste into Cursor settings:

https://penecho_cloud--penecho.run.tools

Fastest: click Open in Cursor below and confirm the prompt.

Manually:

  1. In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
  2. Paste the JSON copied below into ~/.cursor/mcp.json (per project: .cursor/mcp.json in the repo root).
  3. Save the file. The server appears in the MCP list; authorize it there if asked.

Authorization

If the service needs sign-in, an authorize button appears next to the server in the MCP list.

Server tool list (20)

Raw names from tools/list. Only developers need these.

penecho_inboxRead independent message/feedback pages; preserve both cursors. Only mode:ack marks IDs. Screenshots are opt-in.
penecho_get_guidanceRead task-specific authoring guidance. Visual Explorer always includes the complete design contract; other guides are brief by default, full for complete examples and rules. Reuse unchanged version/hash.
penecho_list_canvasesList every open document published by opted-in, MCP-enabled browser connections. Entries match the browser MCP list; closed documents are excluded. Use exact instanceId/canvasId/documentId values.
penecho_open_canvasOpen an exact saved document or create one. show:true changes the view only on user request. requestId is idempotent.
penecho_rename_canvasRename an already open document by exact instanceId, canvasId and documentId. No session is created. title is trimmed and limited to 48 characters. requestId is idempotent; saved reports whether existing saved metadata was renamed (false means workspace-only).
penecho_find_canvasesQuery the open documents in one exact browser MCP list, optionally by documentId. Closed documents are excluded.
penecho_start_sessionUse unique stable sessionKey/client; retain sessionId/documentId. New sessions get a background Canvas on the latest opted-in browser; target:current binds the visible document. documentId restores an exact document; existing bindings stay. Only confirmed missing documents permit replacement; restore:false forbids it. show:true changes view.
penecho_list_filesPage virtual Canvas files, optionally in a region. Paths are virtual, never host paths.
penecho_read_fileRead virtual source and contentHash; optional line range. Runtime files are observations, not editable source.
penecho_patch_fileApply one strict unified diff to the read path/contentHash. Use --- a/<path>, +++ b/<path> and exact @@ hunk counts; no Begin Patch envelopes or line-number prefixes. SOURCE_CONFLICT needs a fresh read and requestId; unknown outcomes need identical retries.
penecho_upload_imageSave an image in the bound document without placement. Chat Data URLs remain supported. For a file on your computer, POST its original bytes to the HTTPS imageUpload.url returned by start_session; the Cloud server processes it. No local PenEcho CLI or Base64 conversion is needed. Reuse returned source in Widget HTML or place_image.
penecho_place_imagePlace an authorized image. Omit region for auto-layout; region positions, width/height size (minimum80). One dimension preserves aspect ratio. Reuse requestId on uncertain outcomes.
penecho_edit_canvasOne idempotent edit. create_text without region uses auto-layout; annotate existing content with evidenced world region. Existing geometry/destructive edits require baseRevision. draw_ink requires world points, #RRGGBB and width1–64, at most1024 points in2048×2048. Image sources must be document-owned references or data URLs.
penecho_capture_canvasCapture unresolved visual evidence only; reuse unchanged images. Hidden documents return CANVAS_NOT_VISIBLE without navigation. target:artifact requires artifactId; object/region require matching selector. Default basic; detail only for legibility.
penecho_update_sessionQueue public progress/status when useful. Response is acceptance, not paint proof. Prefer mutation completion for final status; no routine progress round trips.
penecho_present_widgetRender rich explanations, sequence/flow diagrams (including static diagrams), and product UI as an HTML/CSS/SVG Widget. Create/update stable artifactId, preserving geometry; returned viewport is actual CSS size. relativeTo is a known artifactId. inspect requires capture:true and renders exact dimensions without saving an object. Capture failures may leave applied:true. Format source for patches.
penecho_drawCreate/update a few simple native raster shapes/text or explicitly requested native drawing using stable artifactId. Prefer present_widget for rich explanations and sequence diagrams. Item coordinates are local scene coordinates; omit for auto-layout. Rect/ellipse minimum80. Host places the artifact. No editable vector handles; capture is opt-in.
penecho_plotCreate/update a native raster function plot safely from expression. Stable artifactId; no editable vector handles. Host places it. Capture is opt-in.
penecho_inspect_sessionInspect state/attention to diagnose an issue; no pixels or idle polling.
penecho_close_sessionClose the bound session; retain its document content.