MCP server for ELF600 electromagnetic field analysis: 26 curated topics + 1141 help files + 332 example .mai/.mei input files (all searchable) — .mai/.mei/.meg formats, eddy current (MAB/MAT/MBB), AC SOL MOMC, IPM motor workflow.
Project description
mcp-server-elf
MCP server providing ELF600 electromagnetic field analysis documentation — file formats, solver options, element types, and workflow recipes for the ELF600 BEM-based electromagnetic analysis suite (MAGIC magnetostatic, ELFIN electrostatic, BEAM particle tracking).
This server does not execute ELF600 simulations — it provides curated documentation that AI coding assistants (Claude Code, Cursor, etc.) can consult while authoring .mai/.mei/.meg input files for ELF.
Features
7 tools providing curated docs + raw access to ELF600 help HTM and example input files:
| Tool | Purpose |
|---|---|
elf_usage(topic) |
26 curated topics — high-level recipes |
elf_help_index(prefix) |
List all 1141 bundled help HTM files |
elf_help_search(query, top_k, prefix) |
Substring search across help text |
elf_help_get(path, max_chars) |
Get full extracted text of a specific HTM |
elf_examples_index(solver, category, ext) |
List 332 bundled example input files |
elf_examples_search(query, top_k, solver, ext) |
Substring search across .mai/.mei/.txt examples |
elf_examples_get(path, max_chars) |
Get full text of a specific example input |
Bundled data:
help_dump.json— 1141 HTM files fromC:/ELF600/help/(Shift_JIS decoded, HTML-stripped, 1.18M chars)examples_dump.json— 332 .mai/.mei/.txt files fromC:/ELF600/examples/(228 MAGIC + 66 ELFIN + 38 BEAM, 533k chars)
Regenerate from a fresh ELF600 install via scripts/crawl_help.py and scripts/crawl_examples.py.
Curated topics (elf_usage)
Returns documentation on:
- File formats:
.mai(analysis input),.mei(mesh script),.meg(compiled mesh) - Solvers: MAGIC (magnetostatic, transient, AC), ELFIN (electrostatic), BEAM (particle tracking)
- Eddy current: MAB / MAT / MBB elements, time-stepping, sinusoidal AC (SOL MOMC)
- Element types: full catalog with DOF counts and symmetry restrictions (3D / 2D / Axisym)
- B-H curves: anisotropy (HBA1/HBA2), recoil, extrapolation
- IPM motor workflow: Ld/Lq calculation
- Inductance: Lsc (JIS) and Ll (IEEJ) with 6 samples
- Magnetization / demagnetization (MAGNE2)
- Convergence troubleshooting, error codes (160+ ELF-Q/E/W codes)
- Force methods: FORC vs FORT vs FIXB
- Tools: IEmesh, Wmap3, MagFilter2, MaiEditor3, ELF/Bench
Available topics:
all, overview, mai_format, mei_format, meg_format,
magic, elfin, beam, element_types, bh_curves,
sol_commands, mei_commands, ipm_motor, inductance,
magnetization, examples, meg_export, treasure_box,
sinusoidal, anisotropy, sted, meshing, convergence,
force_methods, errors, iemesh, tools
Installation
pip install mcp-server-elf
Verify:
mcp-server-elf --selftest
Usage
Claude Code
claude mcp add elf "C:/Program Files/Python312/Scripts/mcp-server-elf.exe"
(Adjust path for your Python install. On Linux/macOS, the script is typically ~/.local/bin/mcp-server-elf or similar.)
Cursor / Other MCP clients
Add to your MCP config:
{
"mcpServers": {
"elf": {
"command": "mcp-server-elf"
}
}
}
Self-test
mcp-server-elf --selftest
Iterates through all 26 topics and asserts non-empty documentation.
What is ELF600?
ELF600 is a commercial BEM (Boundary Element Method) electromagnetic analysis suite distributed by Science Solutions International Laboratory (https://www.science-solutions.jp/elf/).
| Module | Purpose |
|---|---|
| MAGIC | Magnetostatic field (static, transient, AC). Eddy current via MAB/MAT/MBB. |
| ELFIN | Electrostatic field analysis (D-E curves) |
| BEAM | Charged particle beam tracking |
Workflow:
.mei (mesh script) --> IEmesh --> .meg (compiled mesh)
.mai (analysis) + .meg --> MAGIC/ELFIN/BEAM --> .mag/.mao results
Why this server?
LLM coding agents authoring ELF input files (.mai/.mei) need access to:
- The ~60k character ELF reference manual content,
- Element naming conventions (T/K/R symmetry × element family),
- SOL block recipes (MOME / MOMC / FIEL / FORC / NONL),
- Frequency-sweep AC analysis structure,
- Common error code interpretation,
without polluting context with the entire vendor PDF. This MCP server returns just the relevant topical chunk on demand.
License
BSD-3-Clause. See LICENSE.
ELF600 itself is a commercial product of Science Solutions International Laboratory and is not redistributed by this package — only documentation references.
Author
Kengo Sugahara, Kindai University (ksugahar@ele.kindai.ac.jp)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mcp_server_elf-1.29.0.tar.gz.
File metadata
- Download URL: mcp_server_elf-1.29.0.tar.gz
- Upload date:
- Size: 563.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3516cfc0e633a15b005cb6b5c4ab580af951673f19efea110326e6a53b17d9a7
|
|
| MD5 |
3c8c690baacf17d03d624095cc09bd06
|
|
| BLAKE2b-256 |
603713505e64ac94ba36b286c10bbbc42b6d9f8061cee59ac7a5dcd08c7d93ba
|
Provenance
The following attestation bundles were made for mcp_server_elf-1.29.0.tar.gz:
Publisher:
publish.yml on ksugahar/mcp-server-elf
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_server_elf-1.29.0.tar.gz -
Subject digest:
3516cfc0e633a15b005cb6b5c4ab580af951673f19efea110326e6a53b17d9a7 - Sigstore transparency entry: 1432328199
- Sigstore integration time:
-
Permalink:
ksugahar/mcp-server-elf@27be5acd4007dc211aa2f61f6ff61435233980ef -
Branch / Tag:
refs/tags/v1.29.0 - Owner: https://github.com/ksugahar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@27be5acd4007dc211aa2f61f6ff61435233980ef -
Trigger Event:
push
-
Statement type:
File details
Details for the file mcp_server_elf-1.29.0-py3-none-any.whl.
File metadata
- Download URL: mcp_server_elf-1.29.0-py3-none-any.whl
- Upload date:
- Size: 575.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f21216dd8eb792510b78615069115c42c2d9906aec0f5f68dc1a2e3dd690e89b
|
|
| MD5 |
7b26e741bbd0b2d985757acfc7dde5bd
|
|
| BLAKE2b-256 |
7240bf88d0560bcbd23e9fee7eec2317d67f5b671c56741b665464c50b99ba53
|
Provenance
The following attestation bundles were made for mcp_server_elf-1.29.0-py3-none-any.whl:
Publisher:
publish.yml on ksugahar/mcp-server-elf
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
mcp_server_elf-1.29.0-py3-none-any.whl -
Subject digest:
f21216dd8eb792510b78615069115c42c2d9906aec0f5f68dc1a2e3dd690e89b - Sigstore transparency entry: 1432328982
- Sigstore integration time:
-
Permalink:
ksugahar/mcp-server-elf@27be5acd4007dc211aa2f61f6ff61435233980ef -
Branch / Tag:
refs/tags/v1.29.0 - Owner: https://github.com/ksugahar
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@27be5acd4007dc211aa2f61f6ff61435233980ef -
Trigger Event:
push
-
Statement type: