chore: add docs url for integration nodes

This commit is contained in:
Abhishek Kumar 2026-07-15 18:54:07 +05:30
parent c650ccc5dd
commit a422241517
13 changed files with 95 additions and 13 deletions

View file

@ -300,6 +300,10 @@ class NodeSpec(BaseModel):
default=None,
description="LLM-only guidance; omitted from the UI.",
)
docs_url: Optional[str] = Field(
default=None,
description="Documentation URL shown in the node editor.",
)
category: NodeCategory
icon: str # lucide-react icon name (e.g., "Play")
version: str = "1.0.0"
@ -312,8 +316,8 @@ class NodeSpec(BaseModel):
def to_mcp_dict(self) -> dict[str, Any]:
"""Lean projection of this spec for the `get_node_type` MCP tool.
Drops node-level UI metadata (`display_name`, `category`, `icon`,
`version`) and the per-property rendering concerns trimmed by
Drops node-level UI metadata (`display_name`, `docs_url`, `category`,
`icon`, `version`) and the per-property rendering concerns trimmed by
`PropertySpec.to_mcp_dict`, leaving just the authoring-relevant
schema the LLM consumes when composing a workflow. The full spec is
still served verbatim to the frontend renderer (REST `node-types`

View file

@ -33,6 +33,7 @@ class NodeSpecMetadata:
category: NodeCategory
icon: str
llm_hint: str | None = None
docs_url: str | None = None
version: str = "1.0.0"
examples: tuple[NodeExample, ...] = ()
graph_constraints: GraphConstraints | None = None
@ -91,6 +92,7 @@ def node_spec(
category: NodeCategory,
icon: str,
llm_hint: str | None = None,
docs_url: str | None = None,
version: str = "1.0.0",
examples: list[NodeExample] | tuple[NodeExample, ...] = (),
graph_constraints: GraphConstraints | None = None,
@ -104,6 +106,7 @@ def node_spec(
category=category,
icon=icon,
llm_hint=llm_hint,
docs_url=docs_url,
version=version,
examples=tuple(examples),
graph_constraints=graph_constraints,
@ -137,6 +140,7 @@ def build_spec(model_cls: type[BaseModel]) -> NodeSpec:
display_name=metadata.display_name,
description=metadata.description,
llm_hint=metadata.llm_hint,
docs_url=metadata.docs_url,
category=metadata.category,
icon=metadata.icon,
version=metadata.version,