Engineering Design Assistant captures engineering requirements and checks units and constraints. It stores a typed design brief in a local SQLite database. The brief can move between the Flutter app, the command-line tool, and an MCP server.
- Capture requirements, constraints, assumptions, and notes
- Validate units and design constraints
- Import and export a JSON design brief
- Load a sample linear-actuator brief
- Convert compatible engineering units
- Expose the brief through an MCP server over standard input and output
- Flutter with Dart 3.12 or later
The application uses Flutter, sqflite_common_ffi, and the Dart MCP package.
The database is local to the machine.
Install the dependencies from the repository root:
flutter pub get
Run the test suite:
flutter test
Start the desktop application with:
flutter run -d windows
Select another device when you use a different Flutter target.
The eda command uses a local database by default. You can pass --db PATH to
use another database.
Initialize an empty database:
dart run bin/eda.dart init
Load sample data and validate it:
dart run bin/eda.dart sample
dart run bin/eda.dart validate
Export or import a JSON handoff:
dart run bin/eda.dart export --out brief.json
dart run bin/eda.dart import --in brief.json
Convert a value between compatible units:
dart run bin/eda.dart units "25 mm" "in"
Run the MCP server over standard input and output:
dart run bin/eda_mcp_server.dart
Pass --db PATH to select the database. Configure the command in an MCP
client that can start local stdio servers.
lib/- Flutter UI and application codebin/eda.dart- command-line interfacebin/eda_mcp_server.dart- standalone MCP entry pointtest/- automated tests
This project is an early EngineerKit component. It does not replace engineering review, approved standards, or professional design software.
No license file is published yet. Treat this repository as an experimental project until a license is added.