MCP HubMCP Hub
返回技能列表

patent-diagrams

RobThePCGuy
更新于 Today
78 次查看
2
2
在 GitHub 上查看
automationdata

关于

This skill generates patent-style technical diagrams (flowcharts, block diagrams, system architectures) as SVG files using Graphviz. It automatically handles patent-style reference numbering and supports templates for common patterns. Use it when you need to create professional technical diagrams suitable for USPTO submissions or documentation.

快速安装

Claude Code

推荐
插件命令推荐
/plugin add https://github.com/RobThePCGuy/Claude-Patent-Creator
Git 克隆备选方式
git clone https://github.com/RobThePCGuy/Claude-Patent-Creator.git ~/.claude/skills/patent-diagrams

在 Claude Code 中复制并粘贴此命令以安装该技能

技能文档

Patent Diagrams Skill

Generate professional patent-style technical diagrams using Graphviz.

Capabilities:

  • Flowcharts (method steps, decision flows)
  • Block diagrams (system architectures, data flows)
  • Custom diagrams (arbitrary DOT code)
  • Reference numbering (patent-style annotations)
  • Templates (pre-built patterns)

Output: SVG (Scalable Vector Graphics) for USPTO submissions

Core Operations

1. create_flowchart

Inputs:

  • steps (List[str], required): Ordered list of step descriptions

Outputs:

{
    "success": bool,
    "svg_path": str,         # Absolute path to SVG
    "filename": str,
    "message": str
}

Example:

steps = [
    "Receive input data from sensor",
    "Validate data format",
    "Process data using algorithm",
    "Generate output signal",
    "Transmit result to display"
]
result = create_flowchart(steps)

2. create_block_diagram

Inputs:

  • blocks (List[dict], required): Component definitions
    • id (str, required): Unique identifier
    • label (str, required): Display text (use \n for multiline)
    • type (str, optional): Block type ("input", "output", "process", "storage", "decision", "default")
  • connections (List[dict], required): Connection definitions
    • from_id (str, required): Source block ID
    • to_id (str, required): Target block ID
    • label (str, optional): Connection label

Example:

blocks = [
    {"id": "sensor", "label": "Input\nSensor", "type": "input"},
    {"id": "cpu", "label": "Processing\nUnit", "type": "process"},
    {"id": "memory", "label": "Memory\nStorage", "type": "storage"},
    {"id": "display", "label": "Output\nDisplay", "type": "output"}
]

connections = [
    {"from_id": "sensor", "to_id": "cpu", "label": "raw data"},
    {"from_id": "cpu", "to_id": "memory", "label": "store"},
    {"from_id": "memory", "to_id": "cpu", "label": "retrieve"},
    {"from_id": "cpu", "to_id": "display", "label": "results"}
]

result = create_block_diagram(blocks, connections)

3. render_diagram

Render arbitrary Graphviz DOT code.

Inputs:

  • dot (str, required): Graphviz DOT code

Example:

dot_code = """
digraph CustomDiagram {
    rankdir=TB;
    node [shape=box, style=filled, fillcolor=lightblue];

    A [label="Component A"];
    B [label="Component B"];
    C [label="Component C"];

    A -> B [label="signal"];
    B -> C [label="processed"];
    C -> A [label="feedback"];
}
"""

result = render_diagram(dot_code)

4. add_diagram_references

Add patent-style reference numbers to existing SVG.

Inputs:

  • svg_path (str, required): Path to input SVG
  • reference_map (dict, required): Element text -> reference number
    • Key: Text to match (case-insensitive substring)
    • Value: Reference number (integer)

Outputs:

{
    "success": bool,
    "svg_path": str,         # NEW annotated SVG path
    "original_path": str,    # Original SVG preserved
    "filename": str,         # Ends with "_annotated.svg"
    "references_added": int,
    "message": str
}

Example:

reference_map = {
    "Input Sensor": 10,
    "Processing Unit": 20,
    "Memory Storage": 30,
    "Output Display": 40
}

result = add_diagram_references(
    svg_path="C:/path/to/block_diagram.svg",
    reference_map=reference_map
)
# Creates: "block_diagram_annotated.svg"

5. get_diagram_templates

Retrieve pre-built templates.

Outputs:

{
    "success": bool,
    "templates": {
        "template_name": {
            "name": str,
            "description": str,
            "dot_code": str
        }
    },
    "template_names": List[str]
}

Available Templates:

  • simple_flowchart: Basic method flow
  • system_block: System architecture
  • method_steps: Patent method claims (101, 102, ...)
  • component_hierarchy: Hierarchical tree

Example:

result = get_diagram_templates()
template = result["templates"]["system_block"]
diagram = render_diagram(template["dot_code"])

Graphviz Dependency

Required: Graphviz as Python package AND system executable.

Check Installation:

check_graphviz_installed()
# Returns: {"ready": bool, "python_package": bool, "system_command": bool, "version": str, "message": str}

Install if Missing:

  1. Python package: pip install graphviz
  2. System executable:
    • Windows: winget install graphviz
    • macOS: brew install graphviz
    • Linux: sudo apt install graphviz

Output Management

Output Directory: PROJECT_ROOT/diagrams/ (auto-created)

Filename Generation:

  • Flowcharts: flowchart_YYYYMMDD_HHMMSS.svg
  • Block diagrams: block_diagram_YYYYMMDD_HHMMSS.svg
  • Custom renders: diagram_YYYYMMDD_HHMMSS.svg
  • Annotated: {original_name}_annotated.svg

Format: All paths are absolute (e.g., C:/Users/<YOUR_USER>/Desktop/TEST1/diagrams/flowchart.svg)

Block Types and Styling

TypeShapeColorTypical Use
inputinvhouselightblueInput devices, sensors
outputhouselightgreenOutput devices, displays
processboxlightyellowProcessing units, algorithms
storagecylinderlightgrayMemory, databases
decisiondiamondlightcoralDecision points, logic
defaultboxwhiteGeneric components

Common Use Cases

  1. Method Claims: Use simple_flowchart or method_steps template
  2. System Architecture: Use system_block template or custom create_block_diagram
  3. Component Relationships: Use component_hierarchy template
  4. Custom Layouts: Use render_diagram with full DOT control
  5. Final Publication: Use add_diagram_references for patent-style numbering

GitHub 仓库

RobThePCGuy/Claude-Patent-Creator
路径: skills/patent-diagrams
bigqueryclaude-codeclaude-code-pluginfaissmcp-servermpep

相关推荐技能

content-collections

Content Collections 是一个 TypeScript 优先的构建工具,可将本地 Markdown/MDX 文件转换为类型安全的数据集合。它专为构建博客、文档站和内容密集型 Vite+React 应用而设计,提供基于 Zod 的自动模式验证。该工具涵盖从 Vite 插件配置、MDX 编译到生产环境部署的完整工作流。

查看技能

sglang

SGLang是一个专为LLM设计的高性能推理框架,特别适用于需要结构化输出的场景。它通过RadixAttention前缀缓存技术,在处理JSON、正则表达式、工具调用等具有重复前缀的复杂工作流时,能实现极速生成。如果你正在构建智能体或多轮对话系统,并追求远超vLLM的推理性能,SGLang是理想选择。

查看技能

Algorithmic Art Generation

这个Claude Skill帮助开发者使用p5.js创建算法艺术,特别适用于生成式艺术和交互式可视化项目。它支持种子随机性、流场和粒子系统等关键技术,确保艺术作品的重复性和独特性。当讨论生成艺术、算法艺术或计算美学时,该技能会自动激活,指导开发者完成从概念设计到技术实现的全过程。

查看技能

hybrid-cloud-networking

这个Skill帮助开发者配置本地基础设施与云平台之间的安全高性能连接。它支持VPN和专用连接选项,适用于构建混合云架构、连接数据中心到云以及实现安全的跨地域网络。关键能力包括建立AWS、Azure、GCP的混合连接,满足合规要求并支持渐进式云迁移。

查看技能