Obsidian Jsoncanvas MCP Server

Built on the official `mcp` Python SDK (`>=1.27`), which negotiates the **2025-11-25** MCP protocol revision. Runs over **stdio** by default and

Local serverstdioPython

What is the Obsidian Jsoncanvas MCP server?

Built on the official mcp Python SDK (>=1.27), which negotiates the 2025-11-25 MCP protocol revision. Runs over stdio by default and optionally over the Streamable HTTP transport. That is what the obsidian jsoncanvas mcp server brings to an AI assistant: the same capability, reachable through the Model Context Protocol rather than a separate app or dashboard.

Getting it running

Setup follows the usual MCP pattern — install or clone the server, register it in your client's configuration file, restart the client. The configuration blocks on this page cover the common clients.

The tools it exposes

The server publishes 11 tools. What each one is for:

  • create_canvas — Create a canvas from nodes (and optional edges) and write it to a
  • Input — nodes (array of JSON Canvas node objects), filename (string, no extension),
  • validate_canvas — Validate canvas data against the JSON Canvas 1.0 specification
  • read_canvas — Read a stored .canvas file and return its nodes and edges
  • list_canvases — List the .canvas files available in OUTPUT_PATH
  • Returns — array of filenames
  • edit_canvas — Add, update, and/or remove nodes and edges on a stored canvas in one
  • export_canvas — Export a stored canvas to another format
  • search_canvases — Case-insensitive substring search across stored canvases
  • Tools — create_canvas, read_canvas, and edit_canvas are linked to the canvas viewer via _meta.ui.resourceUri, so UI-capable hosts render the result inline
  • Resources — The Resources tool exposed by this server

What it needs from you

Configuration is passed through the environment: OUTPUT_PATH. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 11 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Obsidian Jsoncanvas.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

How it compares

Plenty of planning and project tracking servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Obsidian Jsoncanvas's toolset — create_canvas, Input, validate_canvas and 8 more — is a fair guide to whether it matches your workflow. It is maintained by Cam10001110101; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Available tools

ToolWhat it does
create_canvasCreate a canvas from nodes (and optional edges) and write it to a
Inputnodes (array of JSON Canvas node objects), filename (string, no extension),
validate_canvasValidate canvas data against the JSON Canvas 1.0 specification.
read_canvasRead a stored .canvas file and return its nodes and edges.
list_canvasesList the .canvas files available in OUTPUT_PATH.
Returnsarray of filenames.
edit_canvasAdd, update, and/or remove nodes and edges on a stored canvas in one
export_canvasExport a stored canvas to another format.
search_canvasesCase-insensitive substring search across stored canvases.
Toolscreate_canvas, read_canvas, and edit_canvas are linked to the canvas viewer via _meta.ui.resourceUri, so UI-capable hosts render the result inline.
ResourcesThe Resources tool exposed by this server.

How to install the Obsidian Jsoncanvas MCP server

### uv (stdio)

```json
{
  "mcpServers": {
    "jsoncanvas": {
      "command": "uv",
      "args": ["--directory", "/path/to/jsoncanvas", "run", "mcp-server-jsoncanvas"],
      "env": { "OUTPUT_PATH": "./output" }
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

VariableDescriptionRequired
OUTPUT_PATHFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use Obsidian Jsoncanvas to create canvas.
  • Use Obsidian Jsoncanvas to Input.
  • Use Obsidian Jsoncanvas to validate canvas.

Frequently asked questions

It connects Obsidian Jsoncanvas to MCP-compatible AI assistants such as Claude and Cursor, exposing 11 tools (create_canvas, Input, validate_canvas, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Obsidian Jsoncanvas directly.