loading…
Search for a command to run...
loading…
Design and simulate wire antennas using the NEC2 method-of-moments solver via MCP. Supports dipole, Yagi-Uda, vertical, loop, and inverted-V geometries with pat
Design and simulate wire antennas using the NEC2 method-of-moments solver via MCP. Supports dipole, Yagi-Uda, vertical, loop, and inverted-V geometries with pattern, impedance, and VSWR analysis.
License Python 3.11+ MCP eng-mcp-suite
Design and simulate wire antennas with the NEC2 method-of-moments solver, driven over MCP. Gain patterns, impedance, VSWR, radiation lobes — from your terminal or AI agent.
mcp-nec2-antenna is an MCP server that wraps NEC2 (Numerical Electromagnetics Code, version 2) — the classic method-of-moments wire-antenna solver — so an LLM agent can design, sweep, and analyze HF / VHF / UHF antennas through plain-English tool calls.
Drive it from any MCP client (Claude Desktop, Claude Code, Codex CLI)
or call the NEC2C binary directly via the same card-deck export. Five
parameterized antenna geometries (dipole, Yagi-Uda, ground-plane
vertical, full-wave loop, inverted-V) compile to NEC2 GW/EX/FR/RP cards,
solve with the nec2c reference engine, and return impedance, VSWR,
gain, and front-to-back from a single tool call.
What mcp-nec2-antenna does well:
NEC2C must be on PATH first:
# Ubuntu/Debian
sudo apt install nec2c
# macOS
brew install nec2c
# Arch Linux
yay -S nec2c
Then:
git clone https://github.com/RFingAdam/mcp-nec2-antenna.git
cd mcp-nec2-antenna
uv pip install -e .
Claude Code:
claude mcp add nec2-antenna -- uv run --directory /path/to/mcp-nec2-antenna mcp-nec2-antenna
Codex CLI:
codex mcp add nec2-antenna -- uv run --directory /path/to/mcp-nec2-antenna mcp-nec2-antenna
Raw config (Claude Desktop):
{
"mcpServers": {
"nec2-antenna": {
"command": "uv",
"args": ["run", "--directory", "/path/to/mcp-nec2-antenna", "mcp-nec2-antenna"]
}
}
}
Then ask your assistant in plain English:
"Design a 5-element Yagi for 435 MHz at 10 m height, simulate it, and tell me the gain and front-to-back."
The agent calls nec2_create_yagi followed by nec2_simulate, and
reports impedance, VSWR, and radiation pattern.
| Tool | Purpose | Key arguments |
|---|---|---|
nec2_create_dipole |
Half-wave horizontal dipole | name, frequency_mhz, height_m |
nec2_create_yagi |
Yagi-Uda directional beam | name, frequency_mhz, num_elements, boom_height_m |
nec2_create_vertical |
Quarter-wave vertical w/ radials | name, frequency_mhz, num_radials |
nec2_create_loop |
Full-wave quad loop | name, frequency_mhz, height_m |
nec2_create_inverted_v |
Inverted-V dipole from a single mast | name, frequency_mhz, apex_height_m, droop_deg |
nec2_simulate |
Run NEC2 sweep — Z, VSWR, gain, pattern | antenna_id, frequency_start/stop_mhz, steps |
nec2_get_nec_cards |
Export raw NEC2 card deck (for 4nec2/xnec2c) | antenna_id |
nec2_list_antennas |
List antennas in the current session | none |
nec2_list_antenna_types |
Show built-in antenna types + characteristics | none |
Full tool reference in docs/tools.md.
| Antenna | Typical gain | Pattern | Best for |
|---|---|---|---|
| Dipole | 2.15 dBi | Omnidirectional | General purpose, portable |
| Yagi-Uda | 7–15 dBi | Directional | DX, satellites, weak-signal work |
| Vertical | 0–2 dBi | Omnidirectional | Mobile, limited real estate |
| Loop | 3–4 dBi | Bidirectional | Low-noise receive, DX |
| Inverted-V | 2 dBi | Omnidirectional | Single-mast portable |
Ground models: free-space, perfect (PEC), and real (Sommerfeld two-medium). Pattern step is configurable; default is 5° azimuth/elevation.
mcp-nec2-antenna fits in the following eng-mcp-suite workflow bundles:
rf-design — closed-form trans-line synthesis (lineforge) +
wire-antenna MoM (this server) + circuit/filter sim (mcp-ltspice-qucs).antenna-bench — antenna design + EMC limit lookup
(mcp-emc-regulations) before lab measurement.See the suite manifest for the full list of sibling MCPs and bundle definitions.
This MCP server is part of
An open umbrella for engineering MCP servers across RF, EMC, PCB, signal integrity, EM simulation, and lab test. Same brand, same docs structure, designed to compose. See the full catalog or jump to a sibling:
| Domain | Sibling MCPs |
|---|---|
| RF / Transmission lines | lineforge |
| Circuit + filter sim | mcp-ltspice-qucs |
| PCB / SI | mcp-pcb-emcopilot |
| EMC regulatory | mcp-emc-regulations |
| EM simulation (3D) | mcp-openems |
| Diagrams | drawio-engineering-mcp |
| Lab gear | copper-mountain-vna-mcp |
Contributions are welcome.
feature/your-thing or fix/your-bug).uv run pytest
AGPL-3.0-or-later. Relicensed from Apache-2.0 in v0.2.0 to align with the eng-mcp-suite toolkit-wide AGPL move. The underlying NEC2 engine is public-domain US-government code; this wrapper is AGPL-3.0-or-later and is independent of NEC2's public-domain status.
Part of eng-mcp-suite — built for ham radio operators, RF engineers, and AI agents.
Run in your terminal:
claude mcp add mcp-nec2-antenna -- npx Security
Low riskAutomated heuristic from public metadata — not a security guarantee.