← WebMCP Directory

Tool tree

lattice-webmcp.vercel.app

Developer ToolsTools verified
Website
Lattice is a shared architecture canvas for people and browser agents.
Explore capabilities
    get_diagramAnswer

    Read the live Lattice diagram, current selection, and unresolved comments. Use selection when the user refers to “this” or “these”.

    View tool JSON
    {
      "name": "get_diagram",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the live Lattice diagram, current selection, and unresolved comments. Use selection when the user refers to “this” or “these”.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "scope": {
            "type": "string",
            "enum": [
              "all",
              "selection",
              "comments"
            ],
            "description": "Content to return. Defaults to all."
          }
        },
        "required": [],
        "additionalProperties": false
      },
      "page": "/d/7130c5b1-017f-4b5a-9408-596fe328e6bb"
    }
    create_diagramAction

    Create and lay out a typed architecture diagram. With replaceExisting true, replaces Lattice diagram nodes and edges while preserving ordinary tldraw objects and comments.

    View tool JSON
    {
      "name": "create_diagram",
      "kind": "act",
      "impl": "imperative",
      "description": "Create and lay out a typed architecture diagram. With replaceExisting true, replaces Lattice diagram nodes and edges while preserving ordinary tldraw objects and comments.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "maxLength": 120
          },
          "replaceExisting": {
            "type": "boolean"
          },
          "nodes": {
            "type": "array",
            "minItems": 1,
            "maxItems": 30,
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                },
                "label": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 120
                },
                "kind": {
                  "type": "string",
                  "enum": [
                    "client",
                    "service",
                    "data",
                    "queue",
                    "external"
                  ]
                }
              },
              "required": [
                "id",
                "label",
                "kind"
              ],
              "additionalProperties": false
            }
          },
          "edges": {
            "type": "array",
            "maxItems": 60,
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                },
                "source": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                },
                "target": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 64,
                  "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                },
                "label": {
                  "type": "string",
                  "maxLength": 120
                }
              },
              "required": [
                "id",
                "source",
                "target"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "nodes"
        ],
        "additionalProperties": false
      },
      "page": "/d/7130c5b1-017f-4b5a-9408-596fe328e6bb"
    }
    apply_diagram_patchAction

    Apply explicit operations at an expected revision. Unmentioned shapes and positions stay unchanged; stale revisions fail.

    View tool JSON
    {
      "name": "apply_diagram_patch",
      "kind": "act",
      "impl": "imperative",
      "description": "Apply explicit operations at an expected revision. Unmentioned shapes and positions stay unchanged; stale revisions fail.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "expectedRevision": {
            "type": "integer",
            "minimum": 0
          },
          "targetCommentId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 160,
            "description": "Comment whose captured target bounds this patch."
          },
          "operations": {
            "type": "array",
            "minItems": 1,
            "maxItems": 20,
            "items": {
              "oneOf": [
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "add_node"
                    },
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "label": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 120
                    },
                    "kind": {
                      "type": "string",
                      "enum": [
                        "client",
                        "service",
                        "data",
                        "queue",
                        "external"
                      ]
                    },
                    "near": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "direction": {
                      "type": "string",
                      "enum": [
                        "left",
                        "right",
                        "above",
                        "below"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "label",
                    "kind"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "update_node"
                    },
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "label": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 120
                    },
                    "kind": {
                      "type": "string",
                      "enum": [
                        "client",
                        "service",
                        "data",
                        "queue",
                        "external"
                      ]
                    }
                  },
                  "required": [
                    "type",
                    "id"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "remove_node"
                    },
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    }
                  },
                  "required": [
                    "type",
                    "id"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "add_edge"
                    },
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "source": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "target": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "label": {
                      "type": "string",
                      "maxLength": 120
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "source",
                    "target"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "update_edge"
                    },
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    },
                    "label": {
                      "type": "string",
                      "maxLength": 120
                    }
                  },
                  "required": [
                    "type",
                    "id",
                    "label"
                  ],
                  "additionalProperties": false
                },
                {
                  "type": "object",
                  "properties": {
                    "type": {
                      "type": "string",
                      "const": "remove_edge"
                    },
                    "id": {
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 64,
                      "pattern": "^[a-zA-Z][a-zA-Z0-9_-]{0,63}$"
                    }
                  },
                  "required": [
                    "type",
                    "id"
                  ],
                  "additionalProperties": false
                }
              ]
            }
          }
        },
        "required": [
          "expectedRevision",
          "operations"
        ],
        "additionalProperties": false
      },
      "page": "/d/7130c5b1-017f-4b5a-9408-596fe328e6bb"
    }
    resolve_commentAction

    Resolve one comment only after a successful target-scoped patch addressed it at the expected current diagram revision.

    View tool JSON
    {
      "name": "resolve_comment",
      "kind": "act",
      "impl": "imperative",
      "description": "Resolve one comment only after a successful target-scoped patch addressed it at the expected current diagram revision.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "commentId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 160,
            "description": "Exact unresolved comment thread ID."
          },
          "expectedRevision": {
            "type": "integer",
            "minimum": 0
          }
        },
        "required": [
          "commentId",
          "expectedRevision"
        ],
        "additionalProperties": false
      },
      "page": "/d/7130c5b1-017f-4b5a-9408-596fe328e6bb"
    }