You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+21-1Lines changed: 21 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -59,8 +59,27 @@ By default, a real NetLogo window opens so you can watch your simulations run li
59
59
|`save_model(name, code)`| Save model to file |
60
60
|`export_world()`| Export full world state to CSV |
61
61
|`list_models()`| List model files in models directory |
62
+
|`search_comses(query)`| Search the CoMSES Net model library |
63
+
|`get_comses_model(uuid)`| Fetch metadata + citation text for one COMSES model |
64
+
|`download_comses_model(uuid)`| Safely download + extract a COMSES archive |
65
+
|`open_comses_model(uuid)`| Download (or reuse cache) and load NetLogo models |
66
+
|`read_comses_files(uuid)`| Read ODD / source contents from a downloaded model |
62
67
63
-
Plus 3 resources (primitives reference, programming guide, model source) and 3 prompts (`analyze_model`, `create_abm`, `parameter_sweep`).
68
+
Plus 3 resources (primitives reference, programming guide, model source) and 4 prompts (`analyze_model`, `create_abm`, `parameter_sweep`, `explore_comses`).
69
+
70
+
### CoMSES Net integration
71
+
72
+
NetLogo MCP can search and safely fetch any model from the [CoMSES Net computational model library](https://www.comses.net/) — the largest peer-reviewed ABM repository. NetLogo models load automatically; Python / R / Julia models are identified and cached locally so you can inspect their source and ODD documentation from any MCP client, including clients with no filesystem tools.
73
+
74
+
Try it with the `explore_comses` prompt or just ask: *"Find me a predator-prey ABM on COMSES and run a short baseline."*
75
+
76
+
Safety properties (applied to every download):
77
+
- Archives streamed with a hard byte cap (`COMSES_MAX_DOWNLOAD_MB`, default 50 MB) enforced mid-stream, not just via HEAD.
78
+
- Every zip member is path-traversal-validated before extraction.
79
+
- Zip-bomb refusal on uncompressed-size overflow.
80
+
- Extraction is atomic: downloads land in a temp dir first, then move to the cache only on success.
81
+
- Cache directories are trusted only when they carry the `.comses_complete` marker.
82
+
-`"latest"` is resolved to a concrete version before any cache path is computed; the resolved version is returned to the AI so follow-up reads stay pinned to the same slot.
0 commit comments