Skip to main content
Glama

easyeda_call_api

Destructive

Invoke EasyEDA/LCEDA Pro DMT, schematic, PCB, or library APIs by class, method, and JSON arguments for authorized design edits.

Instructions

高级写入入口:解析实时类 mount/方法,传递 JSON 参数调用 DMT/SCH/PCB/LIB API。必须以 --allow-write 启动且用户已授权。无任意 JavaScript、无系统文件/网络调用。超时后先回读,不重试。

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
argsYes按当前 API 签名排列的 JSON 参数;复杂原语/File 用专用工具回读
sessionNosession.list 返回的实际会话 ID;多会话时必须指定
class_nameYes目标当前客户端类,例如 SCH_PrimitiveComponent
method_nameYes先 get_api 核实存在、参数和单位
document_uuidYes先 inspect_project 获取当前文档 UUID;工具不会自动切换图页

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
okYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=true and openWorldHint=true, so the safety profile is covered; the description earns credit by adding the launch-flag and authorization requirement, sandbox boundaries (no arbitrary JavaScript, no file/network access), and timeout/retry policy. It does not explain which primitives or document state actually get mutated, so it stops short of fully rich disclosure.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four tight sentences, front-loaded with the purpose before prerequisites and constraints; each sentence carries distinct information. The terse, jargon-heavy phrasing ('解析实时类 mount/方法') costs some readability but not efficiency.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a complex, open-world destructive tool with a full output schema and 100% parameter coverage, the essentials are present: purpose, auth/launch prerequisites, sandbox limits, and timeout handling. Missing only explicit sibling routing and confirmation of what state is mutated.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and each parameter (args, session, class_name, method_name, document_uuid) is already documented in the schema. The description only restates 'pass JSON parameters' and adds no unit, ordering, or signature detail beyond what the schema provides, so the baseline of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource: an advanced write entry point that resolves live class/method mounts and invokes DMT/SCH/PCB/LIB APIs with JSON args. This positions it clearly as the low-level generic caller relative to specialized siblings like easyeda_auto_layout or easyeda_list_components, though it never names them explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides real prerequisites (must be launched with --allow-write and user authorization) and operational guidance (read back after timeout, do not retry). However it never says when to prefer this over the many specialized siblings, leaving the 'use the escape hatch only when no dedicated tool fits' decision to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.