Developer tools for Delphi and Windows.
All free.
MCA Software is a one-person shop building the tools it needed and could not find: a CVS revision graph that stays readable on decades of history, a real Delphi debugger inside VS Code, and a handful of IDE plugins that remove daily friction. Everything on this page is free to use — freeware or open source.
Projects
Built here, maintained here.
CVSTreeGraph
A revision graph for CVS repositories that aren't small anymore, with integrated annotate and diff. Built as a replacement for the TortoiseCVS and WinCVS graphs, which stop being usable long before a real history ends.
Delphi Debugger for VS Code and AI Agents
A real debugger for Delphi applications outside the Embarcadero IDE — breakpoints, stepping, call stacks, variable inspection and a full Pascal expression evaluator, built on the Windows Debug API. The same engine is exposed over MCP, so an AI agent can run your program and read its actual state instead of guessing from the source.
Edit in VS Code
Adds an Open in Visual Studio Code command to the Delphi Tools menu. It generates the workspace and launch configuration from the current project — output paths, source root, unit search paths, package list — which is what makes VS Code (and its AI extensions) practical on a real Delphi project.
DFMTextStabilizer
Fixes how the Delphi IDE serializes DFM files: UTF-8 output, non-ASCII text left readable instead of escaped into byte soup, and stable formatting. The point is version control — DFM diffs become reviewable and merges stop exploding.
StopDelphiJumpAround
A small plugin that stops the Delphi IDE from throwing its main window across the screen every time it switches between the debug and default layouts. One irritation, removed permanently.
Open Source Contributions
29 pull requests merged into other people's projects — mostly memory leaks, 64-bit correctness and threading bugs found while using those libraries in production, then fixed upstream so the next person does not hit them.
Delphi
- Fixed nearly all memory leaks under Win32 and Win64, across two separate passes
- Added support for VCL applications, removing the dependency on
FMX.Graphics.TBitmap - Fixed handling of UTF-8 text in QR codes
TCharacterSetECIwas never initialized correctly and caused access violationsTDetector.findAlignmentInRegionreturned a dangling pointer- Moved the units left in the global namespace under
ZXing - Fixed a range check error in the test app, and an
ifwhosethenbranch was an empty statement
- SQL highlighter support for Oracle-dialect q-quoted string literals
- Fixed a Win64 type mismatch in
IDataObject.HasFormat
- File locking bugfix
- Fixed access violations with the 64-bit compilers, and updated the IFDEFs
Fixed issue #141: access violations under concurrent access from multiple threads. The fork exists because the fix is still waiting upstream.
- On-demand loading of
sqlite3.dll— the library is loaded on first actual use, not at startup - Open: reference-counted
ISQLiteConnectionandISQLiteStatement
- Worked around the 32k command-line limit by passing DCC paths through the
.cmdsfile - DelphiLSP integration: generate
.delphilsp.jsonfrom the.dprojand keep code insight synced with the active project - Host Application support, making package (
.dpk) and DLL projects runnable
.NET
ISqliteConnectionnow derives fromIDisposable- Made
AsyncTestsrunnable in parallel without interfering with each other - Fixed
ReadmeTestunder parallel and continuous execution, and the tests for issue #950 - Open: cancelable queries
- 3× faster, memory allocation problem resolved, and correct handling of double-character codepoints
Nothing to buy here.
Everything above is free. If a tool saves you an afternoon, a bug report or a pull request is the best possible thank-you.