@modudraft/mcp 0.12.1 → 0.12.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,67 @@
1
+ Modudraft MCP Server - Proprietary Software License
2
+
3
+ Copyright (c) 2026 Modudraft. All rights reserved.
4
+
5
+ This license applies to the @modudraft/mcp package (the "Software"). By installing
6
+ or running the Software you agree to these terms. If you do not agree, do not
7
+ install or use it.
8
+
9
+ 1. Grant of use
10
+
11
+ Subject to these terms, Modudraft grants you a limited, non-exclusive,
12
+ non-transferable, revocable license to install and run the Software, in the
13
+ form Modudraft distributes it, solely to connect your own AI tools to the
14
+ Modudraft service under a valid Modudraft account.
15
+
16
+ 2. Restrictions
17
+
18
+ Except as expressly permitted in section 1 or by law that cannot be waived,
19
+ you may not, and may not allow anyone else to:
20
+
21
+ (a) copy, modify, translate, or create derivative works of the Software;
22
+ (b) redistribute, publish, sublicense, sell, rent, lease, host, or otherwise
23
+ make the Software available to third parties;
24
+ (c) reverse engineer, decompile, disassemble, deobfuscate, or otherwise
25
+ attempt to derive the source code or underlying algorithms of the
26
+ Software;
27
+ (d) remove or alter any copyright or proprietary notice; or
28
+ (e) use the Software to circumvent the limits, authentication, or access
29
+ controls of the Modudraft service, or in violation of the Modudraft
30
+ Terms of Service.
31
+
32
+ 3. Ownership
33
+
34
+ The Software is licensed, not sold. Modudraft and its licensors retain all
35
+ right, title, and interest in the Software, including all intellectual
36
+ property rights. No rights are granted other than those expressly stated
37
+ here. Third-party components included in the Software remain under their own
38
+ licenses.
39
+
40
+ 4. Your content
41
+
42
+ These terms do not give Modudraft any rights in the diagrams and other
43
+ content you create or access with the Software. Your rights and ours in that
44
+ content, and your use of the Modudraft service, are governed by the Terms of
45
+ Service at https://modudraft.com/terms. If these terms and the Terms of
46
+ Service conflict on the use of the service, the Terms of Service prevail.
47
+
48
+ 5. Termination
49
+
50
+ This license ends automatically if you breach it. When it ends you must stop
51
+ using the Software and delete all copies. Modudraft may also end it on
52
+ notice, for example if you no longer have a Modudraft account.
53
+
54
+ 6. Disclaimer of warranty
55
+
56
+ THE SOFTWARE IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT WARRANTY OF ANY
57
+ KIND, EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY,
58
+ FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
59
+
60
+ 7. Limitation of liability
61
+
62
+ TO THE MAXIMUM EXTENT PERMITTED BY LAW, MODUDRAFT WILL NOT BE LIABLE FOR ANY
63
+ INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR PUNITIVE DAMAGES, OR FOR ANY
64
+ LOSS OF DATA, PROFITS, OR REVENUE, ARISING OUT OF OR RELATED TO THE SOFTWARE,
65
+ EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
66
+
67
+ For licensing questions or to report a security issue: security@modudraft.com
package/README.md CHANGED
@@ -82,8 +82,8 @@ Copy the key - you'll only see it once.
82
82
  ### Architecture nodes & edges
83
83
  | Tool | Description |
84
84
  |---|---|
85
- | `add_node` | Add a component (compute, database, queue, gateway, etc.) |
86
- | `update_node` | Update label, tool, or archetype |
85
+ | `add_node` | Add a component (compute, database, queue, gateway, etc.). `tool` takes a catalog key or a common name and is resolved to the catalog key (see [Tool names](#tool-names)) |
86
+ | `update_node` | Update label, tool, or archetype (a `tool` name is resolved the same way; the archetype is left alone) |
87
87
  | `delete_node` | Remove a node and its connections |
88
88
  | `add_edge` | Connect two nodes with optional label and protocol |
89
89
  | `update_edge` | Update edge label or protocol |
@@ -272,3 +272,18 @@ Agents build a diagram with many small calls, and the layout only makes sense on
272
272
  - Calling `layout_diagram` yourself tidies right away and cancels the pending one.
273
273
  - The tidy is best-effort: if the diagram is locked by someone editing, it is skipped, and the next add or remove schedules another.
274
274
  - Set `MODUDRAFT_AUTO_TIDY_MS` to change the quiet period, or `0` to turn it off.
275
+
276
+ ## Tool names
277
+
278
+ A node's `tool` is a catalog key (`better-auth`, `postgresql`, `google-oauth`), and the app shows an initials badge with an "unknown tool" warning for anything else. Agents rarely use the exact key, so `add_node`, `update_node`, `bulk_add_nodes` and `apply_architecture` resolve what they are given:
279
+
280
+ 1. an exact catalog key (any case);
281
+ 2. an alias listed on the tool in the catalog (`postgres`, `pg`, `k8s`, `NextAuth`, `entra id`, `sign in with Google`, `GitHub login`);
282
+ 3. the key or display label with case, spaces, punctuation and underscores ignored (`Better Auth`, `betterauth`, `better_auth`, `Auth.js`).
283
+
284
+ - The resolved catalog key is stored. If you did not pass an `archetype`, the tool's own is used, so `tool: "Better Auth"` is an `auth` node, not `compute`. An explicit `archetype` always wins, and `update_node` never changes the archetype.
285
+ - Nothing is guessed: an ambiguous name (a bare `google`, `microsoft` or `apple`) stays unresolved.
286
+ - An unknown tool is kept exactly as typed (custom technologies are fine) and the response carries a `tool_hint` (`tool_hints` for the bulk tools) naming the closest catalog tools. Use `list_tools` to browse valid values.
287
+ - `suggest_architecture` also recognises these names when it looks for an auth component in a description, and the nodes it proposes now carry real catalog archetypes (`client`, `gateway`, `auth`, `notification`, `search`, `database`, `cache`, `queue`, `storage`, `observability`, `compute`).
288
+ - Aliases are part of the catalog itself (an `aliases` list on each tool in `@modudraft/core`), so the editor's palette search finds a tool by them too: typing `entra`, `next auth` or `sign in with google` finds Azure AD, Auth.js and Google OAuth.
289
+ - Importing a dependency manifest (`import_file` on `package.json`, `requirements.txt`, `Gemfile`, `go.mod`, `composer.json`, `pom.xml`) now also reports an `auth` list of the authentication libraries it finds, under their catalog names (`Better Auth`, `Auth.js`, `Clerk`, `Keycloak`, `Microsoft OAuth`...), ready to pass straight to `add_node`. Bare `@supabase/supabase-js` and `firebase` are not counted as auth.