Read this before your legal review does.
PER REPOSITORY
What each repository actually carries
Two flavours of GPLv3 appear here and the difference matters to a lawyer: -only pins you to version 3, -or-later lets you take a later version of the licence if one is published.
| Repository | What it is | License |
|---|---|---|
| ADOSMissionControl | The browser ground control station and the self-host stack. | GPL-3.0-only |
| ADOSDroneAgent | The onboard agent and every node profile, plus the plugin host and the Python and Rust SDKs. | GPL-3.0-or-later |
| ADOSExtensions | First-party extensions, the TypeScript plugin SDK and the pack, sign and submit toolchain. | GPL-3.0-or-later |
| ADOSAndroidGCS | The native Android ground station. | GPL-3.0-only |
| ADOS-MCP | The Model Context Protocol server. | MIT |
| Documentation | The source behind docs.altnautica.com. | CC0 1.0 (content) |
The licence in the repository is authoritative. If this page and a LICENSE file ever disagree, the file wins and this page is the bug.
EXTENSIONS
What GPLv3 means for an extension you write
An agent-side extension links against the agent SDK and runs against a GPLv3 host, so the safe legal assumption is that it inherits GPLv3. Every first-party extension declares GPL-3.0-or-later in its own manifest, and the manifest carries a licence field precisely so the install dialog can show an operator what they are about to run.
If you are planning something you cannot open, raise it before you write it. There are legitimate shapes that do not involve linking against the agent, such as a service the extension talks to over the network, and there are shapes that clearly do not work. Either way the conversation is cheaper before the code exists.
Extensions that ship a pre-compiled binary built from a third-party upstream must declare vendor attribution in the manifest: the upstream name, its licence, a reachable source URL and the version. The schema rejects the flag without the rows and the rows without the flag, in both directions, and Mission Control surfaces them in the install dialog before an operator approves anything. That is how GPLv3's source-offer obligation is satisfied for a distributed binary.
DOCUMENTATION
The docs are public domain
Documentation content is dedicated to the public domain under CC0 1.0. Copy it, translate it, fold it into your own operator manual, no attribution required. The software it documents is still GPLv3.
LICENSING FAQ
The questions a review always asks
Can we ship a commercial drone running ADOS?
Yes. GPLv3 does not restrict commercial use. It requires that whoever you distribute the software to can get the corresponding source for the GPLv3 parts, including your modifications to them.
Do we have to publish our own application code?
Only the parts that are derived from or linked into the GPLv3 code. A separate application that talks to the agent over its REST or WebSocket surface is a different program. An extension loaded into the agent process is not.
Is there a commercial licence that removes the GPLv3 obligation?
No. There is no dual-licensing offer and no relicensing path, and no paid tier changes the licence of anything. If GPLv3 does not work for your product, the honest answer is that this platform may not either.
What is the difference between GPL-3.0-only and GPL-3.0-or-later here?
Mission Control and the Android app are -only, so they are governed by version 3 of the GPL specifically. The drone agent and the extensions repository are -or-later, so a downstream user may choose to follow a later version of the GPL if the Free Software Foundation publishes one.
Why is the MCP server MIT rather than GPLv3?
It is a protocol adapter that other people's tools embed. A copyleft licence on a small adapter would stop it being used where it is most useful, and it carries no flight-critical logic of its own: every request it forwards is gated again by the agent.