New Your team’s decisions, in one playbook every coding agent works from. Never answer your agent twice

Eda Agent

726 tools. 487 can modify or destroy data without limits.

32 destructive tools with no built-in limits. Policy required.

Last updated:

487 can modify or destroy data
239 read-only
726 tools total

Community server · catalogue entry checked 12/08/2026

How to control Eda Agent ↓

What Eda Agent exposes to your agents

Read (239) Write / Execute (455) Destructive / Financial (32)
Critical Risk

The most dangerous Eda Agent tools

487 of Eda Agent's 726 tools can modify, destroy, or commit something on every call — and an agent calls them with no built-in limits.

How to control Eda Agent

PolicyLayer is an MCP gateway — it sits between your AI agents and Eda Agent, and nothing reaches the server without passing your rules. These are the rules we recommend:

Deny destructive operations
{
  "easyeda_clear_routing": {
    "deny_if": [
      {
        "conditions": [],
        "on_deny": "Blocked by default. Requires approval."
      }
    ]
  }
}

Destructive tools should never be available to autonomous agents without human approval.

Rate limit write operations
{
  "app_checkpoint": {
    "limits": [
      {
        "counter": "app_checkpoint_per_hour",
        "window": "hour",
        "max": 30,
        "scope": "grant"
      }
    ]
  }
}

Prevents bulk unintended modifications from agents caught in loops.

Cap read operations
{
  "app_diag_workspace": {
    "limits": [
      {
        "counter": "app_diag_workspace_per_minute",
        "window": "minute",
        "max": 60,
        "scope": "grant"
      }
    ]
  }
}

Controls API costs and prevents retry loops from exhausting upstream rate limits.

  1. Create a free account and register Eda Agent — nothing to install.
  2. Add these rules — paste them, or build them visually. Tune the limits to your setup.
  3. Point your MCP client (Claude, Cursor, anything) at your gateway URL.
ENFORCE POLICY ON EDA AGENT →

Instant setup, no code required.

All 726 Eda Agent tools

DESTRUCTIVE 32 tools
Destructive easyeda_clear_routing easyeda_clear_routing Destructive easyeda_clear_schematic_selection Deselect everything on the current schematic. Destructive easyeda_clear_selection Deselect everything in the editor. Destructive easyeda_close_document easyeda_close_document Destructive easyeda_delete_device easyeda_delete_device Destructive easyeda_delete_footprint easyeda_delete_footprint Destructive easyeda_delete_panel Delete a panel document. There is no undo. Destructive easyeda_delete_pcb easyeda_delete_pcb Destructive easyeda_delete_primitives easyeda_delete_primitives Destructive easyeda_delete_project easyeda_delete_project Destructive easyeda_delete_schematic easyeda_delete_schematic Destructive easyeda_delete_schematic_page easyeda_delete_schematic_page Destructive easyeda_delete_schematic_primitives easyeda_delete_schematic_primitives Destructive easyeda_delete_symbol easyeda_delete_symbol Destructive kicad_delete_component Delete a component from the board. Destructive lib_clear_source_library lib_clear_source_library Destructive lib_delete_component lib_delete_component Destructive lib_delete_footprint lib_delete_footprint Destructive lib_remove_model lib_remove_model Destructive lib_uninstall_library Unregister a library from the environment's Available Libraries. Destructive obj_batch_delete obj_batch_delete Destructive obj_delete obj_delete Destructive pcb_clear_source_footprint_library pcb_clear_source_footprint_library Destructive pcb_delete_design_rule Delete a design rule by name from the active PCB. Destructive pcb_delete_invalid_objects Remove degenerate primitives from the active PCB. Destructive pcb_delete_net pcb_delete_net Destructive pcb_delete_object pcb_delete_object Destructive pcb_remove_layer pcb_remove_layer Destructive pcb_remove_teardrops Remove teardrops board-wide. Destructive proj_delete_sheet proj_delete_sheet Destructive proj_remove_document proj_remove_document Destructive sch_clear_source_library sch_clear_source_library
EXECUTE 55 tools
Execute app_attach Connect to a running Altium Designer instance. Execute app_run_menu app_run_menu Execute design_execute_plan design_execute_plan Execute design_job_start design_job_start Execute design_session_start design_session_start Execute design_solve_netlist_file design_solve_netlist_file Execute design_validate design_validate Execute design_validate_plan design_validate_plan Execute easyeda_auto_route easyeda_auto_route Execute easyeda_cleanup_track_slivers easyeda_cleanup_track_slivers Execute easyeda_highlight_net Highlight one net in the editor, to show a human where it is. Execute easyeda_invoke easyeda_invoke Execute easyeda_invoke_batch easyeda_invoke_batch Execute easyeda_navigate easyeda_navigate Execute easyeda_open_document Open a document in the editor by uuid. Execute easyeda_open_project Open a project in the editor. Execute easyeda_place_pcb_components easyeda_place_pcb_components Execute easyeda_route_plan easyeda_route_plan Execute easyeda_run_drc easyeda_run_drc Execute easyeda_run_erc easyeda_run_erc Execute easyeda_run_plan easyeda_run_plan Execute easyeda_select_layer Make one layer the active one in the editor. Execute easyeda_zoom_to_all Frame everything in the current document. Execute easyeda_zoom_to_board Fit the board outline in the editor view. Execute easyeda_zoom_to_selection Frame the current selection. Execute kicad_cli kicad_cli Execute kicad_export_sch Run any kicad-cli schematic export format not covered by a dedicated Execute kicad_run_action kicad_run_action Execute kicad_run_jobset Run a KiCad jobset (a saved batch of output jobs -- KiCad's Execute kicad_run_spice kicad_run_spice Execute lib_reload_library lib_reload_library Execute lib_run_across lib_run_across Execute obj_refresh_document Force a redraw/refresh of the current document. Execute obj_run_process obj_run_process Execute obj_switch_view Toggle between 2D and 3D view for PCB documents. Execute obj_zoom Control the viewport zoom level. Execute pcb_build_from_project pcb_build_from_project Execute pcb_panelize pcb_panelize Execute pcb_plan_placement pcb_plan_placement Execute pcb_run_drc pcb_run_drc Execute pcb_scale pcb_scale Execute pcb_start_polygon_placement pcb_start_polygon_placement Execute pcb_tune_length pcb_tune_length Execute proj_compile proj_compile Execute proj_force_recompile proj_force_recompile Execute proj_open Open an existing Altium project. Execute proj_run_erc Run Electrical Rules Check on the focused project. Execute proj_run_outjob proj_run_outjob Execute proj_run_outjob_all proj_run_outjob_all Execute proj_run_output proj_run_output Execute route_plan route_plan Execute run_drc run_drc Execute run_erc run_erc Execute sim_run sim_run Execute tool_invoke tool_invoke
WRITE 400 tools
Write app_checkpoint app_checkpoint Write app_create_document app_create_document Write app_detach app_detach Write app_ping app_ping Write app_restore_checkpoint app_restore_checkpoint Write app_save_all app_save_all Write app_set_active_document Set a specific document as the active (focused) document. Write app_set_intent app_set_intent Write design_add_circuit_block design_add_circuit_block Write design_add_part design_add_part Write design_apply_hierarchy design_apply_hierarchy Write design_autonomy_guide design_autonomy_guide Write design_bom_file design_bom_file Write design_compose_netlist design_compose_netlist Write design_compute_component_value design_compute_component_value Write design_connect_bus design_connect_bus Write design_edit_plan design_edit_plan Write design_generate_bom design_generate_bom Write design_layout_schematic design_layout_schematic Write design_learn_from_layout design_learn_from_layout Write design_next_action design_next_action Write design_plan_hierarchy design_plan_hierarchy Write design_preview_plan design_preview_plan Write design_review_file design_review_file Write design_review_plan design_review_plan Write design_session_log design_session_log Write design_session_resume design_session_resume Write design_suggest_diff_pair_traces design_suggest_diff_pair_traces Write design_suggest_partition design_suggest_partition Write design_synthesize_rules design_synthesize_rules Write easyeda_activate_document easyeda_activate_document Write easyeda_add_arc easyeda_add_arc Write easyeda_add_bus easyeda_add_bus Write easyeda_add_dimension easyeda_add_dimension Write easyeda_add_fill easyeda_add_fill Write easyeda_add_line easyeda_add_line Write easyeda_add_nets_to_length_match_group Add nets to an existing equal-length group. Write easyeda_add_nets_to_net_class Add nets to an existing net class. Write easyeda_add_pad easyeda_add_pad Write easyeda_add_pads easyeda_add_pads Write easyeda_add_pin easyeda_add_pin Write easyeda_add_pins easyeda_add_pins Write easyeda_add_polyline easyeda_add_polyline Write easyeda_add_region easyeda_add_region Write easyeda_add_schematic_arc easyeda_add_schematic_arc Write easyeda_add_schematic_circle easyeda_add_schematic_circle Write easyeda_add_schematic_polygon Draw a closed polygon on the current schematic. Write easyeda_add_schematic_rectangle easyeda_add_schematic_rectangle Write easyeda_add_schematic_text easyeda_add_schematic_text Write easyeda_add_text easyeda_add_text Write easyeda_add_via easyeda_add_via Write easyeda_add_wire easyeda_add_wire Write easyeda_add_wires easyeda_add_wires Write easyeda_add_zone easyeda_add_zone Write easyeda_align_components easyeda_align_components Write easyeda_audit_acute_angles easyeda_audit_acute_angles Write easyeda_audit_capacitor_voltage_margin easyeda_audit_capacitor_voltage_margin Write easyeda_audit_components_outside_outline easyeda_audit_components_outside_outline Write easyeda_audit_dangling_track_ends easyeda_audit_dangling_track_ends Write easyeda_audit_decoupling_schematic easyeda_audit_decoupling_schematic Write easyeda_audit_degenerate_copper easyeda_audit_degenerate_copper Write easyeda_audit_designator_collisions easyeda_audit_designator_collisions Write easyeda_audit_device_pin_parity easyeda_audit_device_pin_parity Write easyeda_audit_duplicate_designators easyeda_audit_duplicate_designators Write easyeda_audit_footprint_vs_datasheet easyeda_audit_footprint_vs_datasheet Write easyeda_audit_mirrored_text easyeda_audit_mirrored_text Write easyeda_audit_missing_datasheets easyeda_audit_missing_datasheets Write easyeda_audit_missing_decoupling easyeda_audit_missing_decoupling Write easyeda_audit_mpn_inconsistencies easyeda_audit_mpn_inconsistencies Write easyeda_audit_off_angle_components easyeda_audit_off_angle_components Write easyeda_audit_off_grid_components easyeda_audit_off_grid_components Write easyeda_audit_open_drain_pullups easyeda_audit_open_drain_pullups Write easyeda_audit_pads_near_board_edge easyeda_audit_pads_near_board_edge Write easyeda_audit_parts_excluded_from_bom easyeda_audit_parts_excluded_from_bom Write easyeda_audit_placeholder_values easyeda_audit_placeholder_values Write easyeda_audit_placeholder_values_schematic easyeda_audit_placeholder_values_schematic Write easyeda_audit_placement_collisions easyeda_audit_placement_collisions Write easyeda_audit_signal_vias_without_return easyeda_audit_signal_vias_without_return Write easyeda_audit_single_pad_nets easyeda_audit_single_pad_nets Write easyeda_audit_single_pin_nets_schematic easyeda_audit_single_pin_nets_schematic Write easyeda_audit_track_widths easyeda_audit_track_widths Write easyeda_audit_unconnected_component_pads easyeda_audit_unconnected_component_pads Write easyeda_audit_unconnected_schematic_pins easyeda_audit_unconnected_schematic_pins Write easyeda_audit_unlocked_components easyeda_audit_unlocked_components Write easyeda_audit_via_annular_ring easyeda_audit_via_annular_ring Write easyeda_audit_via_antennas easyeda_audit_via_antennas Write easyeda_audit_vias_near_board_edge easyeda_audit_vias_near_board_edge Write easyeda_checkpoint easyeda_checkpoint Write easyeda_compare_schematic_pcb easyeda_compare_schematic_pcb Write easyeda_copy_device easyeda_copy_device Write easyeda_copy_footprint easyeda_copy_footprint Write easyeda_copy_symbol easyeda_copy_symbol Write easyeda_create_device easyeda_create_device Write easyeda_create_differential_pair easyeda_create_differential_pair Write easyeda_create_folder easyeda_create_folder Write easyeda_create_footprint Create an empty footprint in a library, and return its uuid. Write easyeda_create_ic_symbol easyeda_create_ic_symbol Write easyeda_create_length_match_group easyeda_create_length_match_group Write easyeda_create_net_class easyeda_create_net_class Write easyeda_create_net_flag easyeda_create_net_flag Write easyeda_create_net_label easyeda_create_net_label Write easyeda_create_net_port easyeda_create_net_port Write easyeda_create_panel easyeda_create_panel Write easyeda_create_passive_symbol easyeda_create_passive_symbol Write easyeda_create_pcb Add a board to the open project. Write easyeda_create_project easyeda_create_project Write easyeda_create_schematic easyeda_create_schematic Write easyeda_create_schematic_page Add a page to an existing schematic. Write easyeda_create_standard_footprint easyeda_create_standard_footprint Write easyeda_create_symbol easyeda_create_symbol Write easyeda_cross_probe Select and reveal objects in the editor by id. Write easyeda_distribute_components easyeda_distribute_components Write easyeda_emit_connections easyeda_emit_connections Write easyeda_emit_plan easyeda_emit_plan Write easyeda_export_3d easyeda_export_3d Write easyeda_export_altium easyeda_export_altium Write easyeda_export_bom easyeda_export_bom Write easyeda_export_bom_html easyeda_export_bom_html Write easyeda_export_dsn easyeda_export_dsn Write easyeda_export_dxf easyeda_export_dxf Write easyeda_export_flying_probe easyeda_export_flying_probe Write easyeda_export_gerber Gerber fabrication data. Write easyeda_export_ipc2581 easyeda_export_ipc2581 Write easyeda_export_ipcd356 easyeda_export_ipcd356 Write easyeda_export_netlist The PCB netlist file. Write easyeda_export_pads The design in PADS format. Write easyeda_export_pcb_info easyeda_export_pcb_info Write easyeda_export_pdf easyeda_export_pdf Write easyeda_export_pick_and_place easyeda_export_pick_and_place Write easyeda_export_schematic_bom easyeda_export_schematic_bom Write easyeda_export_schematic_document easyeda_export_schematic_document Write easyeda_export_schematic_netlist easyeda_export_schematic_netlist Write easyeda_export_simulation_netlist easyeda_export_simulation_netlist Write easyeda_export_test_points The test point list. Write easyeda_generate_fab_package easyeda_generate_fab_package Write easyeda_import_schematic_changes easyeda_import_schematic_changes Write easyeda_increment_designators easyeda_increment_designators Write easyeda_modify_component easyeda_modify_component Write easyeda_modify_layer easyeda_modify_layer Write easyeda_modify_pcb_components easyeda_modify_pcb_components Write easyeda_modify_schematic_components easyeda_modify_schematic_components Write easyeda_move_project_to_folder easyeda_move_project_to_folder Write easyeda_open_footprint Open a library footprint for editing. Write easyeda_open_symbol easyeda_open_symbol Write easyeda_ping easyeda_ping Write easyeda_place_pcb_component easyeda_place_pcb_component Write easyeda_place_schematic_component easyeda_place_schematic_component Write easyeda_place_schematic_components easyeda_place_schematic_components Write easyeda_place_stitching_vias easyeda_place_stitching_vias Write easyeda_plan_placement easyeda_plan_placement Write easyeda_rename_device easyeda_rename_device Write easyeda_rename_footprint Rename a library footprint or change its description. Write easyeda_rename_panel Rename a panel document. Write easyeda_rename_symbol Rename a library symbol or change its description. Write easyeda_render_image easyeda_render_image Write easyeda_restore_checkpoint easyeda_restore_checkpoint Write easyeda_review_board easyeda_review_board Write easyeda_save Save the current PCB document. Write easyeda_save_schematic Save the current schematic document. Write easyeda_select_primitives Select primitives on the current PCB, by id. Write easyeda_select_schematic_primitives Select primitives on the current schematic, by id. Write easyeda_set_copper_layer_count easyeda_set_copper_layer_count Write easyeda_set_layer_lock Lock or unlock layers against editing. Write easyeda_set_layer_visibility easyeda_set_layer_visibility Write easyeda_set_schematic_component_properties easyeda_set_schematic_component_properties Write easyeda_set_title_block easyeda_set_title_block Write easyeda_snap_components_to_grid easyeda_snap_components_to_grid Write easyeda_tune_length easyeda_tune_length Write kicad_add_arc Add a graphic arc through start, mid and end points (mm) on a layer, Write kicad_add_circle Add a graphic circle at a centre (mm) with a radius (mm) on a Write kicad_add_line Add a graphic line between two points (mm) on a layer (default Write kicad_add_rectangle Add a graphic rectangle from top-left to bottom-right (mm) on a Write kicad_add_text Add a text label at a position (mm) on a layer (default Write kicad_add_track Add a copper track segment on a layer ("F.Cu", "B.Cu", "In1.Cu"), Write kicad_add_via Add a through via at a position (mm) with pad diameter and drill Write kicad_add_zone Add a copper zone (pour) on a layer, assigned to a net, with an Write kicad_compare_sch_pcb Compare the schematic netlist against the open PCB and report Write kicad_create_footprint kicad_create_footprint Write kicad_create_symbol kicad_create_symbol Write kicad_export_3dpdf Export an interactive 3D PDF of the board. Write kicad_export_bom Generate a Bill of Materials (CSV) from the schematic. Write kicad_export_drill Generate Excellon drill files into a directory. Write kicad_export_dxf Plot the given board layers to DXF (mechanical CAD) files. Write kicad_export_footprint_svg Export a footprint (or a whole .pretty library) to SVG. Write kicad_export_gerbers Plot Gerber files for every board layer into a directory. Write kicad_export_glb Export the board as a GLB (binary glTF) 3D model. Write kicad_export_ipc2581 Export the board in IPC-2581 format. Write kicad_export_ipcd356 Generate an IPC-D-356 netlist (bare-board electrical test). Write kicad_export_netlist Export a netlist from the schematic. Write kicad_export_odb Export the board in ODB++ format. Write kicad_export_pcb kicad_export_pcb Write kicad_export_pdf Plot the given board layers to a PDF (comma-separated layer names). Write kicad_export_pos Generate a component position (pick-and-place) file. Write kicad_export_schematic_pdf Export the schematic sheets to a PDF. Write kicad_export_schematic_svg Export the schematic sheets to SVG (one per sheet). Write kicad_export_spice Export a SPICE netlist from the schematic (the input to an ngspice Write kicad_export_step Export the board as a STEP 3D model. Write kicad_export_stl Export the board as an STL 3D model (3D printing / mechanical). Write kicad_export_symbol_svg Export a symbol (or a whole .kicad_sym library) to SVG. Write kicad_export_vrml Export the board as a VRML 3D model. Write kicad_full_review kicad_full_review Write kicad_generate_pcb Generate a KiCad board (.kicad_pcb) from a DesignPlan: declares the Write kicad_generate_project Generate a complete, openable KiCad project from a DesignPlan: Write kicad_generate_schematic kicad_generate_schematic Write kicad_lock_component Lock or unlock a component's placement. Write kicad_move_component Move a component to an absolute board position (mm). Write kicad_ping Check the live connection to a running KiCad; returns KiCad and API Write kicad_review_schematic Design review of the SCHEMATIC's intended connectivity: annotation, Write kicad_rotate_component Set a component's orientation (degrees). Write kicad_save_board Write the open board to disk. Write kicad_set_component_side Place a component on the top or bottom copper layer ("top"/"bottom"). Write kicad_set_component_value Set a component's value field. Write kicad_set_text_variable Set a project text (substitution) variable, e.g. key "REV" value Write kicad_upgrade_board Upgrade the open board's file format to the current KiCad version. Write kicad_upgrade_footprint_library Upgrade a footprint (.pretty) library to the current KiCad format. Write kicad_upgrade_schematic Upgrade the open schematic's file format to the current KiCad Write kicad_upgrade_symbol_library Upgrade a symbol (.kicad_sym) library to the current KiCad format. Write lib_add_footprint_arc lib_add_footprint_arc Write lib_add_footprint_pad lib_add_footprint_pad Write lib_add_footprint_pads lib_add_footprint_pads Write lib_add_footprint_text lib_add_footprint_text Write lib_add_footprint_track lib_add_footprint_track Write lib_add_footprint_tracks lib_add_footprint_tracks Write lib_add_pins lib_add_pins Write lib_add_symbol_arc lib_add_symbol_arc Write lib_add_symbol_lines lib_add_symbol_lines Write lib_add_symbol_polygon lib_add_symbol_polygon Write lib_add_symbol_rectangle lib_add_symbol_rectangle Write lib_add_symbol_text lib_add_symbol_text Write lib_audit_footprint_policies lib_audit_footprint_policies Write lib_audit_footprint_vs_datasheet lib_audit_footprint_vs_datasheet Write lib_auto_link_3d_models lib_auto_link_3d_models Write lib_batch_rename lib_batch_rename Write lib_batch_set_params lib_batch_set_params Write lib_convert_designators_to_stroke lib_convert_designators_to_stroke Write lib_copy_component lib_copy_component Write lib_copy_footprint lib_copy_footprint Write lib_create_footprint Create a new PCB footprint in the active library. Write lib_create_ic_symbol lib_create_ic_symbol Write lib_create_passive_symbol lib_create_passive_symbol Write lib_create_standard_footprint lib_create_standard_footprint Write lib_create_symbol lib_create_symbol Write lib_easyeda_import lib_easyeda_import Write lib_export_kicad_footprint lib_export_kicad_footprint Write lib_export_kicad_symbol lib_export_kicad_symbol Write lib_fix_designators lib_fix_designators Write lib_install_library lib_install_library Write lib_kicad_import lib_kicad_import Write lib_link_3d_model lib_link_3d_model Write lib_link_footprint lib_link_footprint Write lib_move_components lib_move_components Write lib_move_footprints lib_move_footprints Write lib_normalize_implementations lib_normalize_implementations Write lib_probe_designator lib_probe_designator Write lib_probe_footprint lib_probe_footprint Write lib_rename_component lib_rename_component Write lib_rename_footprint lib_rename_footprint Write lib_set_component_description Set the description field on a library component. Write lib_set_current_component lib_set_current_component Write lib_set_label_formats lib_set_label_formats Write lib_set_mech_layers lib_set_mech_layers Write lib_set_model_name lib_set_model_name Write lib_set_model_source lib_set_model_source Write lib_split_pin_functions lib_split_pin_functions Write lib_update_footprint_heights_from_3d lib_update_footprint_heights_from_3d Write obj_batch_create obj_batch_create Write obj_batch_modify obj_batch_modify Write obj_clear_highlights Clear all net highlights in the active schematic or PCB document. Write obj_copy obj_copy Write obj_create obj_create Write obj_deselect_all Clear all object selection on the active document. Write obj_highlight_net obj_highlight_net Write obj_modify obj_modify Write obj_select obj_select Write obj_set_grid Set the snap grid and/or visible grid size for the active schematic. Write pcb_add_layer pcb_add_layer Write pcb_add_teardrops pcb_add_teardrops Write pcb_add_testpoints_for_net_class pcb_add_testpoints_for_net_class Write pcb_align_components pcb_align_components Write pcb_apply_dnp_paste_exclusion pcb_apply_dnp_paste_exclusion Write pcb_auto_size_board_outline pcb_auto_size_board_outline Write pcb_autoplace_silkscreen pcb_autoplace_silkscreen Write pcb_bevel_polygon_corners pcb_bevel_polygon_corners Write pcb_bind_pad_nets pcb_bind_pad_nets Write pcb_calc_length_match Resolve the effective Er and a match tolerance from a skew budget (or Write pcb_calc_termination pcb_calc_termination Write pcb_calc_thermal_vias pcb_calc_thermal_vias Write pcb_calc_trace_width_for_current pcb_calc_trace_width_for_current Write pcb_calc_trace_width_for_impedance Trace width (mils) to hit a target impedance for a geometry Write pcb_calc_track_current_capacity Forward IPC-2221: the current a track of this width sustains at a Write pcb_cleanup_tracks pcb_cleanup_tracks Write pcb_copy_component_placement pcb_copy_component_placement Write pcb_copy_designators_to_mech pcb_copy_designators_to_mech Write pcb_copy_tracks_radial pcb_copy_tracks_radial Write pcb_create_design_rule pcb_create_design_rule Write pcb_create_diff_pair pcb_create_diff_pair Write pcb_create_net_class pcb_create_net_class Write pcb_create_nets_from_list pcb_create_nets_from_list Write pcb_create_room pcb_create_room Write pcb_distribute_components pcb_distribute_components Write pcb_export_coordinates pcb_export_coordinates Write pcb_filter_variant_components pcb_filter_variant_components Write pcb_flip_component Flip a component to the other side of the board (top to bottom Write pcb_focus_board pcb_focus_board Write pcb_import_placement pcb_import_placement Write pcb_lock_net_routing pcb_lock_net_routing Write pcb_make_paste_grid pcb_make_paste_grid Write pcb_modify_layer pcb_modify_layer Write pcb_modify_polygon pcb_modify_polygon Write pcb_move_components pcb_move_components Write pcb_move_tracks_to_layer pcb_move_tracks_to_layer Write pcb_normalize_vias Snap every via to its dominant routing-via-style rule. Write pcb_place_angular_dimension pcb_place_angular_dimension Write pcb_place_arc pcb_place_arc Write pcb_place_components pcb_place_components Write pcb_place_dimension pcb_place_dimension Write pcb_place_embedded_board pcb_place_embedded_board Write pcb_place_fill pcb_place_fill Write pcb_place_pad pcb_place_pad Write pcb_place_polygon_rect pcb_place_polygon_rect Write pcb_place_radial_dimension pcb_place_radial_dimension Write pcb_place_region pcb_place_region Write pcb_place_stitching_vias pcb_place_stitching_vias Write pcb_place_text pcb_place_text Write pcb_place_thieving_pads pcb_place_thieving_pads Write pcb_place_tracks pcb_place_tracks Write pcb_place_via pcb_place_via Write pcb_place_via_array pcb_place_via_array Write pcb_renumber_pads pcb_renumber_pads Write pcb_replicate_layout pcb_replicate_layout Write pcb_repour_polygons Repour all polygon pours on the active PCB. Write pcb_set_board_shape pcb_set_board_shape Write pcb_set_layer_color pcb_set_layer_color Write pcb_set_layer_visibility pcb_set_layer_visibility Write pcb_set_mech_layer_kind pcb_set_mech_layer_kind Write pcb_set_rule_properties pcb_set_rule_properties Write pcb_set_rules_enabled pcb_set_rules_enabled Write pcb_set_text_visibility pcb_set_text_visibility Write pcb_set_track_width pcb_set_track_width Write pcb_set_via_soldermask_relief pcb_set_via_soldermask_relief Write pcb_snap_to_grid pcb_snap_to_grid Write pcb_trim_extend_track pcb_trim_extend_track Write proj_add_document Add an existing document to a project. Write proj_add_sheet proj_add_sheet Write proj_annotate proj_annotate Write proj_close Close a project. Write proj_create proj_create Write proj_create_variant proj_create_variant Write proj_cross_probe Jump to and highlight a component in the schematic or PCB. Write proj_export_dxf proj_export_dxf Write proj_export_image proj_export_image Write proj_export_netlist proj_export_netlist Write proj_export_pdf Export the active document to PDF. Write proj_export_step proj_export_step Write proj_generate_fab_package proj_generate_fab_package Write proj_import_document proj_import_document Write proj_lock_designator proj_lock_designator Write proj_print_all_variants proj_print_all_variants Write proj_push_parameters proj_push_parameters Write proj_replace_component proj_replace_component Write proj_save Save the current or specified project. Write proj_set_active_variant Switch the active project variant. Write proj_set_document_parameter proj_set_document_parameter Write proj_set_parameter Set a project-level parameter. Write proj_sync_pcb proj_sync_pcb Write proj_sync_schematic proj_sync_schematic Write review_design review_design Write route_plan_repairs route_plan_repairs Write sch_add_datafile_link sch_add_datafile_link Write sch_add_directive sch_add_directive Write sch_generate_toc sch_generate_toc Write sch_increment_designators sch_increment_designators Write sch_place_bus sch_place_bus Write sch_place_bus_entry sch_place_bus_entry Write sch_place_components sch_place_components Write sch_place_cross_sheet_connector sch_place_cross_sheet_connector Write sch_place_harness_connector sch_place_harness_connector Write sch_place_image sch_place_image Write sch_place_junction sch_place_junction Write sch_place_line sch_place_line Write sch_place_net_label sch_place_net_label Write sch_place_no_erc sch_place_no_erc Write sch_place_note sch_place_note Write sch_place_port sch_place_port Write sch_place_power_port sch_place_power_port Write sch_place_probe sch_place_probe Write sch_place_rectangle sch_place_rectangle Write sch_place_sheet_entry sch_place_sheet_entry Write sch_place_sheet_symbol sch_place_sheet_symbol Write sch_place_text_frame sch_place_text_frame Write sch_place_wires sch_place_wires Write sch_set_component_part_id sch_set_component_part_id Write sch_set_components_parameters sch_set_components_parameters Write sch_set_net_tie sch_set_net_tie Write sch_set_sheet_size sch_set_sheet_size Write sch_set_units sch_set_units Write sch_stub_pins sch_stub_pins Write sch_toggle_pin_visibility sch_toggle_pin_visibility Write sim_attach_model sim_attach_model Write sim_attach_primitives sim_attach_primitives
READ 239 tools
Read app_diag_workspace Diagnostic: enumerate workspace files via Altium's FindFiles helper. Read app_get_active_document app_get_active_document Read app_get_clipboard app_get_clipboard Read app_get_preferences app_get_preferences Read app_get_report app_get_report Read app_get_status app_get_status Read app_get_version app_get_version Read app_list_checkpoints List saved checkpoints for the current workspace, newest first. Read app_list_documents app_list_documents Read audit_component_param_visibility audit_component_param_visibility Read audit_find_acute_angles audit_find_acute_angles Read audit_find_bad_connections audit_find_bad_connections Read audit_find_components_outside_board_outline audit_find_components_outside_board_outline Read audit_find_designator_collisions audit_find_designator_collisions Read audit_find_floating_ports audit_find_floating_ports Read audit_find_inconsistent_track_widths audit_find_inconsistent_track_widths Read audit_find_invalid_regions audit_find_invalid_regions Read audit_find_mirrored_pcb_text audit_find_mirrored_pcb_text Read audit_find_missing_datasheets audit_find_missing_datasheets Read audit_find_missing_decoupling audit_find_missing_decoupling Read audit_find_mixed_designator_rotation audit_find_mixed_designator_rotation Read audit_find_mpn_inconsistencies audit_find_mpn_inconsistencies Read audit_find_non_embedded_images audit_find_non_embedded_images Read audit_find_off_grid_components audit_find_off_grid_components Read audit_find_orphan_net_labels audit_find_orphan_net_labels Read audit_find_orphan_power_objects audit_find_orphan_power_objects Read audit_find_pads_near_board_edge audit_find_pads_near_board_edge Read audit_find_pin_net_name_mismatches audit_find_pin_net_name_mismatches Read audit_find_placeholder_values audit_find_placeholder_values Read audit_find_removed_pad_shapes audit_find_removed_pad_shapes Read audit_find_signal_vias_without_return audit_find_signal_vias_without_return Read audit_find_single_pin_nets audit_find_single_pin_nets Read audit_find_unconnected_ic_pins audit_find_unconnected_ic_pins Read audit_find_unlocked_component_primitives audit_find_unlocked_component_primitives Read audit_find_unmatched_ports audit_find_unmatched_ports Read audit_find_via_antennas audit_find_via_antennas Read audit_find_visible_supplier_pn audit_find_visible_supplier_pn Read audit_power_port_orientation audit_power_port_orientation Read audit_tented_via_ratio audit_tented_via_ratio Read audit_variant_not_fitted audit_variant_not_fitted Read design_audit_schematic design_audit_schematic Read design_datasheet_checklist design_datasheet_checklist Read design_describe_circuits design_describe_circuits Read design_get_discipline design_get_discipline Read design_job_result Fetch a finished job's result payload (None until it's done). Read design_job_status Status of a background job (or all jobs if job_id is blank). Read design_lint_report design_lint_report Read design_list_circuit_blocks design_list_circuit_blocks Read design_load_fab_profile design_load_fab_profile Read design_review_snapshot design_review_snapshot Read design_session_status Read a design session's derived state (stage map, artifacts, ...). Read design_snapshot_inventory design_snapshot_inventory Read design_validate_requirement design_validate_requirement Read design_visual_review design_visual_review Read easyeda_audit_crystal_load_caps easyeda_audit_crystal_load_caps Read easyeda_find_component easyeda_find_component Read easyeda_get_arcs Arc primitives on the current PCB. Read easyeda_get_assembly_variants easyeda_get_assembly_variants Read easyeda_get_attributes Text attributes on the current PCB. Read easyeda_get_board_outline easyeda_get_board_outline Read easyeda_get_board_statistics easyeda_get_board_statistics Read easyeda_get_bounding_box Bounding box enclosing the named primitives. Read easyeda_get_bounding_boxes easyeda_get_bounding_boxes Read easyeda_get_capabilities easyeda_get_capabilities Read easyeda_get_components Every component placed on the current PCB. Read easyeda_get_current_panel The panel document currently open, if one is. Read easyeda_get_device easyeda_get_device Read easyeda_get_devices_by_lcsc easyeda_get_devices_by_lcsc Read easyeda_get_differential_pairs Differential pairs the editor knows about. Read easyeda_get_dimensions Dimension objects on the current PCB. Read easyeda_get_embedded_objects easyeda_get_embedded_objects Read easyeda_get_environment easyeda_get_environment Read easyeda_get_fills Solid fill primitives on the current PCB. Read easyeda_get_footprint_image easyeda_get_footprint_image Read easyeda_get_images Images placed on the current PCB. Read easyeda_get_layers Layers on the current PCB. Read easyeda_get_length_match_groups Equal-length net groups defined on the current PCB. Read easyeda_get_library_classifications easyeda_get_library_classifications Read easyeda_get_lines Line primitives (tracks and graphics) on the current PCB. Read easyeda_get_measured_shapes easyeda_get_measured_shapes Read easyeda_get_net_classes Net classes defined on the current PCB. Read easyeda_get_net_length easyeda_get_net_length Read easyeda_get_net_lengths easyeda_get_net_lengths Read easyeda_get_net_rules Per-net rule values in force on the current PCB. Read easyeda_get_netlist easyeda_get_netlist Read easyeda_get_nets easyeda_get_nets Read easyeda_get_pads Pads on the current PCB. Read easyeda_get_panel One panel by uuid, from easyeda_list_panels. Read easyeda_get_paths Where the editor keeps documents, projects and libraries. Read easyeda_get_poured Copper actually filled in by pouring. Read easyeda_get_pours Copper pour outlines on the current PCB. Read easyeda_get_primitives_in_region easyeda_get_primitives_in_region Read easyeda_get_project One project's details, by uuid. Read easyeda_get_project_info The open project: name, uuid, and what it contains. Read easyeda_get_regions Filled regions (copper pours) on the current PCB. Read easyeda_get_rule_configurations Rule configurations on the current PCB, and which is active. Read easyeda_get_schematic_attributes Text attributes on the current schematic. Read easyeda_get_schematic_buses Buses on the current schematic. Read easyeda_get_schematic_components easyeda_get_schematic_components Read easyeda_get_schematic_hierarchy easyeda_get_schematic_hierarchy Read easyeda_get_schematic_pins easyeda_get_schematic_pins Read easyeda_get_schematic_selection What is selected on the current schematic. Read easyeda_get_schematic_wires Wires on the current schematic. Read easyeda_get_selection What the user currently has selected in the editor. Read easyeda_get_strings Text primitives on the current PCB. Read easyeda_get_symbol_image easyeda_get_symbol_image Read easyeda_get_team The current team, whose uuid every folder operation needs. Read easyeda_get_unconnected_pins easyeda_get_unconnected_pins Read easyeda_get_unrouted_nets easyeda_get_unrouted_nets Read easyeda_get_vias Vias on the current PCB. Read easyeda_get_workspaces Workspaces the editor knows about, and which is current. Read easyeda_list_boards Every PCB in the open project, with the current one marked. Read easyeda_list_boards_dmt Boards in the workspace, at the document-manager level. Read easyeda_list_checkpoints Checkpoints taken on this machine, newest first. Read easyeda_list_folders Every project folder in a team, with its details. Read easyeda_list_libraries easyeda_list_libraries Read easyeda_list_panels Panels in the workspace. Read easyeda_list_projects easyeda_list_projects Read easyeda_list_schematic_pages Pages of the current schematic. Read easyeda_list_schematics Every schematic in the open project. Read easyeda_review_snapshot easyeda_review_snapshot Read easyeda_search_3d_models easyeda_search_3d_models Read easyeda_search_devices easyeda_search_devices Read easyeda_search_footprints easyeda_search_footprints Read easyeda_search_symbols easyeda_search_symbols Read get_board_info Object counts and net-class summary for the open board, from the Read kicad_find_component Find components whose reference or value contains the query Read kicad_get_board_outline Board edge bounding box (mm), from Edge.Cuts graphics. Read kicad_get_board_summary One-call board overview: object counts, board size (mm), layer Read kicad_get_bom Consolidated Bill of Materials from the schematic netlist: one line Read kicad_get_component_details Full detail for one component: value, footprint, position (mm), Read kicad_get_diff_pairs Differential pairs inferred from net naming (X_P/X_N, X+/X-), Read kicad_get_fab_stats Board fabrication statistics (component / pad / hole / track counts, Read kicad_get_layer_usage Per-layer routing usage: track count and total track length (mm), Read kicad_get_layers Enabled board layer names. Read kicad_get_net All pads on a given net: reference and pin number. Read kicad_get_net_classes Per-net net-class assignment and each class's routing rules Read kicad_get_netlist Structured schematic netlist: components (reference, value, Read kicad_get_project_info Open project's name, directory, and net-class names. Read kicad_get_selection Items currently selected in the KiCad PCB editor: type and, for Read kicad_get_stackup Board stackup: layer name, type, material, thickness (mm). Read kicad_get_text_variables Project text (substitution) variables. Read kicad_get_title_block Title-block fields (title, date, revision, company, comments). Read kicad_get_trace_lengths Total routed track length per net (mm), summed from the copper Read kicad_get_unconnected_pins Pads with no net assigned (potentially unconnected pins). Read kicad_get_via_summary Via count and the distinct via sizes (pad diameter / drill) in use, Read kicad_list_dimensions Dimension annotations: layer, override text, height (mm). Read kicad_list_documents Documents currently open in KiCad (PCB and schematic) with Read kicad_list_groups Item groups on the board: name and member count. Read kicad_list_pads All pads on the board: number, net, position (mm), pad type. Read kicad_list_shapes Graphic shapes: type (segment/arc/circle/rect/polygon), layer, net, Read kicad_list_text Free board text items: value, layer, position (mm). Read kicad_list_tracks Copper tracks and arcs: net, layer, width, endpoints, length (mm). Read kicad_list_vias Vias: net, position, diameter and drill (mm). Read kicad_list_zones Copper zones and rule areas: name, net, layers, fill, priority. Read kicad_render_3d Render the board's 3D view to a PNG image. Read lib_audit_styles lib_audit_styles Read lib_diff_libraries lib_diff_libraries Read lib_easyeda_search lib_easyeda_search Read lib_extract_cse_zip lib_extract_cse_zip Read lib_extract_intlib lib_extract_intlib Read lib_get_component_details lib_get_component_details Read lib_get_components lib_get_components Read lib_get_footprints lib_get_footprints Read lib_get_pad_geometry lib_get_pad_geometry Read lib_get_pin_list lib_get_pin_list Read lib_inspect_cse_zip lib_inspect_cse_zip Read lib_search lib_search Read list_components Every component on the open board (reference, value, footprint, Read list_nets Every net on the open board with pin count and class (power / ground Read obj_count obj_count Read obj_crossref_net obj_crossref_net Read obj_get_document_info obj_get_document_info Read obj_get_font_id obj_get_font_id Read obj_get_font_spec obj_get_font_spec Read obj_query obj_query Read part_fetch part_fetch Read part_search part_search Read pcb_audit_pad_center_connected pcb_audit_pad_center_connected Read pcb_calc_impedance pcb_calc_impedance Read pcb_calc_polygon_area pcb_calc_polygon_area Read pcb_check_placement_collision pcb_check_placement_collision Read pcb_export_stackup_csv pcb_export_stackup_csv Read pcb_get_board_outline pcb_get_board_outline Read pcb_get_board_statistics pcb_get_board_statistics Read pcb_get_clearance_violations pcb_get_clearance_violations Read pcb_get_component_pads pcb_get_component_pads Read pcb_get_components pcb_get_components Read pcb_get_design_rules Get all design rules from the active PCB. Read pcb_get_diff_pair_rules pcb_get_diff_pair_rules Read pcb_get_differential_pairs pcb_get_differential_pairs Read pcb_get_fab_stats pcb_get_fab_stats Read pcb_get_layer_display pcb_get_layer_display Read pcb_get_layer_stackup pcb_get_layer_stackup Read pcb_get_mech_layer_names pcb_get_mech_layer_names Read pcb_get_net_classes pcb_get_net_classes Read pcb_get_nets Get all unique net names from the active PCB board. Read pcb_get_pad_properties pcb_get_pad_properties Read pcb_get_polygons pcb_get_polygons Read pcb_get_room_rules pcb_get_room_rules Read pcb_get_rule_properties pcb_get_rule_properties Read pcb_get_selected_objects pcb_get_selected_objects Read pcb_get_trace_lengths pcb_get_trace_lengths Read pcb_get_unrouted_nets pcb_get_unrouted_nets Read pcb_get_vias pcb_get_vias Read pcb_render_svg pcb_render_svg Read proj_compare_sch_pcb proj_compare_sch_pcb Read proj_export_bom_html proj_export_bom_html Read proj_export_variant_matrix_csv proj_export_variant_matrix_csv Read proj_find_component proj_find_component Read proj_get_active_variant Get the currently active project variant. Read proj_get_board_info Get PCB board information, outline vertices, layer stack, origin. Read proj_get_bom proj_get_bom Read proj_get_compile_freshness proj_get_compile_freshness Read proj_get_component_info proj_get_component_info Read proj_get_component_info_many proj_get_component_info_many Read proj_get_connectivity proj_get_connectivity Read proj_get_connectivity_many proj_get_connectivity_many Read proj_get_differences proj_get_differences Read proj_get_erc_violations proj_get_erc_violations Read proj_get_focused Get information about the currently focused project. Read proj_get_messages proj_get_messages Read proj_get_nets proj_get_nets Read proj_get_options proj_get_options Read proj_get_parameters Get all parameters defined at the project level. Read proj_get_path Get the full path of the currently focused project file. Read proj_get_stats Get design statistics from the compiled project. Read proj_get_unconnected_pins proj_get_unconnected_pins Read proj_list_documents proj_list_documents Read proj_list_open List all currently open projects in the Altium workspace. Read proj_list_outjob_containers proj_list_outjob_containers Read proj_list_variants proj_list_variants Read proj_load_sheets proj_load_sheets Read sch_get_constraint_groups sch_get_constraint_groups Read sch_get_directives sch_get_directives Read sch_get_sheet_parameters sch_get_sheet_parameters Read sch_render_svg sch_render_svg Read sim_get_readiness sim_get_readiness Read tool_catalog tool_catalog

Related servers

Other MCP servers with similar tools — same risk classification, starter policies for each.

Questions about Eda Agent

Can an AI agent delete data through the Eda Agent MCP server? +

Yes. The Eda Agent server exposes 32 destructive tools including easyeda_clear_routing, easyeda_clear_schematic_selection, easyeda_clear_selection. These permanently remove resources with no undo. PolicyLayer blocks destructive tools by default so they never reach the upstream server.

How do I prevent bulk modifications through Eda Agent? +

The Eda Agent server has 400 write tools including app_checkpoint, app_create_document, app_detach. Set a rate limit in your policy -- for example, 10 calls per hour prevents an agent from making more than 10 modifications per hour. PolicyLayer enforces this at the gateway, before calls reach Eda Agent.

How many tools does the Eda Agent MCP server expose? +

726 tools across 4 categories: Destructive, Execute, Read, Write. 239 are read-only. 487 can modify, create, or delete data.

How do I enforce a policy on Eda Agent? +

Register the Eda Agent MCP server in PolicyLayer, apply the suggested rules above (adjust the limits to your use case), and point your AI client at the PolicyLayer proxy URL instead of the server directly. Your agents keep the same tools; PolicyLayer evaluates every call against policy before it executes. Nothing to install, live in minutes.

Enforce policy on every Eda Agent tool call.

Deterministic rules across all 726 Eda Agent tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Instant setup, no code required.

726 Eda Agent tools catalogued and risk-classified — across an index of 46,500+ MCP servers.

// WHERE THIS COMES FROM

These policies come from Eda Agent's registry record.

The record behind this page: verified identity, auth posture, risk grade, every tool classified, recommended policy — re-checked continuously.

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.