Model Context Protocol
El servidor MCP
agentee mcp sirve un proyecto a través de stdio con 30 herramientas. El agente sigue escribiendo TOML con sus propias herramientas de archivo; el servidor verifica, representa, enruta, simula y escribe el paquete del fabricante, y devuelve los PNG representados directamente a la conversación.
Añádelo a tu cliente
Claude Code
una shell en el proyecto
claude mcp add agentee -- agentee mcp "$PWD"Codex
~/.codex/config.toml
[mcp_servers.agentee] command = "agentee" args = ["mcp", "/path/to/project"]Cursor, Claude Desktop y la mayoría de los demás clientes
.cursor/mcp.json, claude_desktop_config.json o el archivo propio del cliente
{ "mcpServers": { "agentee": { "command": "agentee", "args": ["mcp", "/path/to/project"] } } }
La ruta es el directorio del proyecto, el que contiene los archivos TOML. Combina el servidor con la skill, que indica al agente cuándo llamar a cada herramienta y en qué orden.
Herramientas
Leer el proyecto
format_referenceLa referencia de formato de archivo para placas, símbolos y huellas, con ejemplos. Lee esto antes de escribir archivos.
list_itemsCada placa, símbolo y huella del proyecto con su archivo y recuento de errores.
show_itemEl modelo resuelto de un elemento como JSON: pines con posiciones, matrices de pads expandidas, apilamiento con geometría de pista calculada, impedancia y análisis de corriente.
namecheckCarga el proyecto e informa de errores y advertencias para cada elemento, o para un elemento.
include_infoitemdrcVerificaciones de reglas de diseño de un layout. Con list = true: cada regla DRC con su id, categoría, severidad y si se aplica a esta placa y por qué. Sin list: los diagnósticos del layout que llevan un id de regla. Los ids de regla van en la lista de desactivación [drc] o en la tabla de severidad de la placa.
listnamerender_itemRenderiza un elemento a PNG exactamente como lo muestra el visor y devuelve la imagen.
canvas_onlyheighthidden_pinshidenameregionsave_toshowunitwidthstackupsPreajustes de apilamiento para el `stackup.preset` de una placa: construcciones de JLCPCB y PCBWay y construcciones HDI genéricas con espesores de capa y er. Filtra la lista, o da un name para obtener las capas de un preajuste.
fablayersnamesearchthickness
Componentes
kicad_searchBusca en las bibliotecas de KiCad instaladas por nombre. Cada palabra debe coincidir con Library:Name.
kindlimitqueryimport_kicad_symbolConvierte un símbolo de KiCad (Library:Name) en un .sym.toml en el proyecto. with_footprint también importa su huella predeterminada, o da footprint para elegir una.
dirfootprintforcespecwith_footprintimport_kicad_footprintConvierte una huella de KiCad (Library:Name) en un .fp.toml en el proyecto.
dirforcespecnew_itemEscribe un archivo inicial para una placa, símbolo, huella, esquemático, layout o simulación, para editar a partir de él. Una simulación empieza como una ejecución FDTD de un layout, o con sim_kind logic como una simulación lógica de un esquemático (reloj, reset, una aserción con reloj) cuyas redes renombres.
dirkindnamesim_kindmodelsEncuentra los modelos 3D (STEP o VRML) que nombran las huellas del proyecto, descargando los modelos de la biblioteca de KiCad que faltan en la caché. Informa de la ruta y el número de triángulos de cada modelo, o de por qué falta.
Pistas
impedanceImpedancia de pista en una capa de la placa para un ancho (y separación de par), o el ancho que alcanza un objetivo.
boardcoplanar_gapgaplayertargetwidthfield_solveResuelve una sección transversal de pista con el solver de campo de la GPU: impedancia, permitividad efectiva, C y L por metro, retardo. Incluye máscara de soldadura, espesor, tierras coplanares y pares diferenciales. Dentro de un 0,5 % de las referencias exactas con fine = true.
boardcoplanar_gapfinegaplayernetclassno_masksweepwidthtrace_widthAncho mínimo de pista para una corriente (IPC-2221).
coppercurrentinternaltemp_riseserpentinePuntos para una pista que reemplaza un segmento recto y añade una longitud dada como salientes de trompeta a un lado. Pégalos en los puntos de la pista.
addamplitudefrompitchto
Layout
placeColoca automáticamente los componentes del layout como inicio rápido: conectores y componentes de montaje en borde en los bordes de la placa (nunca un conector de RF y uno de USB en el mismo borde a menos que sea necesario), agujeros de montaje y fiduciales en las esquinas, los chips más grandes cerca del centro, los condensadores de desacoplamiento de cada CI, el cristal y las resistencias de subida agrupados en los pines que sirven, colocados por longitud de cable ponderada, y luego legalizados en una cuadrícula de 0,05 mm sin solapamientos de courtyard y refinados por recocido simulado. Escribe at, rotation y side en [[footprints]] y actualiza los rellenos guardados. Los componentes con locked = true se quedan donde están.
dry_runkeep_placednamepartsseedsiderouteEnruta automáticamente el ratsnest de las redes nombradas de un layout en una cuadrícula, conservando el ancho, el despeje, las capas y la vía de cada clase, y añade las pistas y vías al archivo de layout. El cobre existente nunca se mueve a menos que se establezca reroute.
bend_costdry_rungridlayersnamenetspairsrerouteviavia_costvia_in_padtieUne cada pad SMD de una red de plano (una red con una entrada [[zones]]) a la capa de plano más cercana con un tramo corto y una vía junto al pad, lejos del cuerpo del componente, y añádelas al archivo de layout. Usa esto para pads de masa y alimentación en lugar de enrutar pistas entre ellos; `route` con un glob omite las redes de plano.
dry_runnamenetstuneIguala la longitud de un layout: serpentea la red corta de cada par que supera su límite de skew y cada miembro de grupo de igualación que está por debajo de su objetivo, en los segmentos más largos donde los bultos despejen todas las demás redes, y escribe los puntos de vuelta en las pistas.
amplitudedry_runnamenetspitchneckReduce el cuello de los extremos de pista que entran en un pad más estrecho que la pista o rompen el despeje cerca del pad: el extremo se convierte en una entrada [[tracks]] separada con un ancho explícito, el menor del ancho de la clase, el lado más pequeño del pad y el más ancho que mantiene el despejo, redondeado hacia abajo a 0,01 mm, nunca por debajo de min_track_width y nunca más largo que el neckdown de la clase. taper reduce el ancho sobre una cadena corta de segmentos. Los rellenos de zona guardados se actualizan.
dry_runnamenetstaperfillRellena las zonas de un layout y guarda el cobre al final de su archivo, para que las cargas y el visor omitan el relleno hasta que cambien el cobre, los despejes o los vecinos de la zona.
namesilkMueve cada referencia de serigrafía que la verificación marca al lugar despejado que sugiere, repitiendo hasta que las etiquetas se asienten, y opcionalmente oculta las que no tienen dónde ir. Escribe label = { at, rotation } o hide = true en las huellas.
dry_runhidenametestpointsAñade un pad de prueba a cada red que necesite acceso de sonda y no lo tenga: un componente TestPoint (huella TestPoint_Pad_D1.0mm, ambos escritos en el proyecto si faltan) unido a la red en la hoja de esquemático que la lista, una huella en el lado de sonda en espacio libre cerca del cobre de la red, y una pista y una vía enrutadas automáticamente desde el cobre de la red. Las redes por defecto son las [test] del layout; las redes de impedancia y de par se omiten.
dry_runnamenetspitchsidelayoutEjecuta el motor de layout sobre un layout: las fases [engine] configuradas en orden, y luego la puntuación por término con los peores infractores de cada uno. Las fases no implementadas aún se listan como omitidas.
dry_runfromnameonlyto
Simulación
run_simEjecuta una simulación (*.sim.toml): una ejecución FDTD de un layout en la GPU (puertos en pads, modelos lumped para pasivos, parámetros S guardados como JSON y Touchstone junto a la especificación), cualquier otro tipo (cc, térmica, cascada, canal, pdn), o una simulación lógica de la lista de redes del esquemático (estímulo, aserciones, setup y hold, un VCD junto a la especificación). Renderiza la simulación después para ver la gráfica o las formas de onda.
namesparamAnaliza una simulación o cascada terminada: pasividad y reciprocidad, un TDR de un puerto (impedancia frente al tiempo con un borde gaussiano), Sdd/Scc/Scd en modo mixto para un par dado como IN+,IN-,OUT+,OUT-, y acoplamiento FROM,TO en frecuencia y como paso.
namepairrisetdrxtalk
Salida
fabEscribe el paquete de fabricación de un diseño de PCB en una carpeta: Gerbers RS-274X (X2) por capa de cobre, máscara, pasta, serigrafía y borde, taladros Excellon, un zip de esos archivos para subir, BOM (genérica y JLCPCB), pick-and-place, notas de fabricación y planos de montaje. Se niega mientras el diseño de PCB tenga errores.
nameoutexportEscribe un diseño de PCB como un ensamblaje STEP para CAD de carcasas: la placa como un sólido con sus taladros y recortes, el modelo STEP de cada pieza incrustado y colocado, y los modelos VRML, generados y faltantes como superficies o cajas. Parte inferior de la placa en z = 0, X e Y como el diseño de PCB con Y hacia arriba.
nameoutpartsCalcula el precio de la BOM de un diseño de PCB o esquemático en Mouser y Farnell y busca equivalentes más baratos: la misma pieza en el otro distribuidor, resistencias y condensadores cerámicos con el mismo valor, paquete, tolerancia, tensión y dieléctrico (nunca un rebaje), discretos genéricos (2N7002, S1D, SS14, SMAJ..) por nombre y paquete, LEDs indicadores por color y paquete, y la sustitución sugerida por el distribuidor para piezas que van a quedar obsoletas. Los costes son para la cantidad necesaria, comprando hasta un salto de precio cuando eso sea más barato. Las claves vienen de ~/.config/agentee/distributors.toml ([mouser] api_key, [farnell] api_key y store).
alternativesboardsdistributorsfarnell_storenamerefs