Local stdio FastMCP server for Tidy3D
Project description
Tidy3D MCP
A small local MCP server that lets your IDE or AI assistant validate Tidy3D simulations and control the in-editor 3D viewer (rotate, toggle structures, take screenshots).
What You Need
- A Tidy3D API key (from your Tidy3D account).
- The server resolves the key in this order:
--api-key,SIMCLOUD_APIKEY, then~/.config/tidy3d/config.toml([web].apikey) and finally~/.tidy3d/config(legacy). It fails fast if none are present. - The Tidy3D extension for your IDE:
- Visual Studio Marketplace: https://marketplace.visualstudio.com/items?itemName=Flexcompute.tidy3d
- Open VSX Registry: https://open-vsx.org/extension/Flexcompute/tidy3d
Typical Use
- In VS Code or Cursor, install the Tidy3D extension. It automatically registers and runs this MCP server. When prompted, enter your API key. You can then ask your assistant to "validate my Tidy3D simulation" or "capture a screenshot," and the viewer responds inside the editor.
Manual Use (Advanced Hosts)
- If your MCP host expects an stdio command, run:
tidy3d-mcp --api-key YOUR_TIDY3D_API_KEY
- Add
--enable-viewerto expose viewer controls (rotate, visibility, capture).
Available Tools
validate_simulation(file?, symbol?, index?, viewer_id?)— Validate or refresh a simulation; returns status, warnings, and a reusableviewer_id.rotate_viewer(viewer_id, direction)— Align toTOP|BOTTOM|LEFT|RIGHT|FRONT|BACK.show_structures(viewer_id, visibility[])— Show/hide structures by boolean flags.capture(viewer_id)— Return a screenshot image.
Troubleshooting
- Assistant can’t control the viewer: install/enable the Tidy3D extension and verify your API key.
- Viewer tools missing when running manually: include
--enable-viewer. - Still stuck: re-run the extension’s setup command in your IDE and confirm network access.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
tidy3d_mcp-0.16.2.tar.gz
(9.8 kB
view details)
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 tidy3d_mcp-0.16.2.tar.gz.
File metadata
- Download URL: tidy3d_mcp-0.16.2.tar.gz
- Upload date:
- Size: 9.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0f0a960ed323298d6845f0682c50d2fe210b1e9538097b88a8bc2ade24111794
|
|
| MD5 |
e84d53fcf10038605492bb1b62e823b1
|
|
| BLAKE2b-256 |
13bc620dd76ea73a6e5d43cc3a85e2575954ae77bcc2dbeccd32b49163c00c40
|
File details
Details for the file tidy3d_mcp-0.16.2-py3-none-any.whl.
File metadata
- Download URL: tidy3d_mcp-0.16.2-py3-none-any.whl
- Upload date:
- Size: 14.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eaf87d1a641da079b3d2c9f6c43a1bb64a16522fa720c70aa5a92b00dd5f6377
|
|
| MD5 |
fc8449ee2257f9173a23c6bc4fe26230
|
|
| BLAKE2b-256 |
6dae78eeba10c38ca8b6de7378379d807b0ea5d2e54f7ce0f1f841ffb8258f1b
|