Mcp Server Obsidian Jsoncanvas

Mcp Server Obsidian Jsoncanvas

🚀 JSON Canvas MCP 服务器

JSON Canvas MCP 服务器实现了模型上下文协议(MCP),提供了用于处理符合 官方规范 的 JSON Canvas 文件的工具。该服务器支持创建、修改和验证无限画布数据结构,为用户提供了便捷的画布操作体验。

🚀 快速开始

JSON Canvas MCP 服务器完整实现了 JSON Canvas 1.0 规范,支持创建和操作无限画布数据、所有节点类型(文本、文件、链接、组)、带样式和标签的边连接、对规范进行验证以及可配置的输出路径。

✨ 主要特性

  • 创建和操作无限画布数据
  • 支持所有节点类型(文本、文件、链接、组)
  • 带样式和标签的边连接
  • 对规范进行验证
  • 可配置的输出路径

📦 安装指南

文档未提及安装相关内容,若有需要请补充。

💻 使用示例

基础用法

from jsoncanvas import Canvas, TextNode, Edge

# 创建节点
title = TextNode(
id="title",
x=100,
y=100,
width=400,
height=100,
text="# Hello Canvas\n\n这是一个演示。",
color="#4285F4"
)

info = TextNode(
id="info",
x=600,
y=100,
width=300,
height=100,
text="更多信息在这里",
color="2"  # 使用预设颜色
)

# 创建画布
canvas = Canvas()
canvas.add_node(title)
canvas.add_node(info)

# 连接节点
edge = Edge(
id="edge1",
from_node="title",
to_node="info",
from_side="right",
to_side="left",
label="连接"
)
canvas.add_edge(edge)

# 保存画布
canvas.save("example.canvas")

📚 详细文档

组件

资源

服务器公开了以下资源:

  • canvas://schema:用于验证画布文件的 JSON 模式
  • canvas://examples:演示不同功能的示例画布文件
  • canvas://templates:创建新画布的模板

工具

节点操作
  • create_node

    • 创建任意类型的新节点
    • 输入:
      • type(字符串):节点类型("text", "file", "link", "group")
      • properties(对象):节点特定属性
        • 公共属性:id, x, y, width, height, color
        • 类型特定属性:text, file, url
    • 返回:创建的节点对象
  • update_node

    • 更新现有节点的属性
    • 输入:
      • id(字符串):要更新的节点 ID
      • properties(对象):要更新的属性
    • 返回:更新后的节点对象
  • delete_node

    • 删除一个节点及其连接的边
    • 输入:
      • id(字符串):要删除的节点 ID
    • 返回:无
边操作
  • create_edge

    • 创建一个新的边
    • 输入:
      • id(字符串):边的唯一标识符
      • from_node(字符串):起始节点的 ID
      • to_node(字符串):目标节点的 ID
      • 可选属性:
        • label(字符串):边的标签
        • color(字符串):边的颜色
        • style(对象):边的样式
    • 返回:创建的边对象
  • update_edge

    • 更新现有边的属性
    • 输入:
      • id(字符串):要更新的边的 ID
      • properties(对象):要更新的属性
    • 返回:无
  • delete_edge

    • 删除一条边
    • 输入:
      • id(字符串):要删除的边的 ID
    • 返回:无
画布操作
  • add_node

    • 向画布中添加一个节点
    • 输入:
      • node(对象):要添加的节点
    • 返回:无
  • add_edge

    • 向画布中添加一条边
    • 输入:
      • edge(对象):要添加的边
    • 返回:无
  • remove_node

    • 从画布中移除一个节点及其相关边
    • 输入:
      • id(字符串):要移除的节点 ID
    • 返回:无
  • remove_edge

    • 从画布中移除一条边
    • 输入:
      • id(字符串):要移除的边的 ID
    • 返回:无
  • save_canvas

    • 保存当前画布状态到文件
    • 输入:
      • file_path(字符串):要保存的文件路径
    • 返回:无

集成与配置

与 Claude Desktop 的集成

要在 Claude Desktop 中使用此服务器,可以按照以下步骤进行:

  1. 安装依赖: 确保已安装所有必要的库和工具。
  2. 启动服务器: 使用适当的命令启动 MCP 服务器。
  3. 连接到 Canvas: 在 Claude Desktop 中选择 JSON Canvas MCP 作为目标平台。
  4. 开始开发: 利用提供的 API 和工具进行画布的创建、编辑和保存操作。

环境变量配置

  • CANVAS_PATH:指定默认的画布文件路径
  • DEBUG_MODE:启用或禁用调试模式
  • LOG_LEVEL:设置日志记录级别("debug", "info", "warning", "error", "critical")

📄 许可证

此 MCP 服务器根据 MIT 许可证分发。这意味着您可以自由使用、修改和分发软件,需遵守 MIT 许可证的条款和条件。有关详细信息,请参阅项目仓库中的 LICENSE 文件。

  • 0 关注
  • 0 收藏,21 浏览
  • system 提出于 2025-09-19 04:24

相似服务问题

相关AI产品