Persistent Data Structures for JavaScript
Mori MCP server exists for a simple reason — assistants are far more useful when they can act on Mori directly instead of describing what you should do. Persistent Data Structures for JavaScript.
A simple bridge to ClojureScript's persistent data structures and supporting APIs for vanilla JavaScript. Pull requests welcome.
The server ships on npm as mori, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.
Once Mori is connected, these are the calls the assistant has available:
Faster — Mori is considerably faster across the board thanks to recent enhancements to the ClojureScript compiler. For users who would like to benchmark theirDocumentation — You can find extensive documentation and examples hereTransducers — Mori includes Transducers. Zero allocation collection operations FTW:Prerequisites — You will first need to install the Java SDK, if it's not already installed onYou will first need to install the Java SDK, if it's not already installed on your system. On Windows, you will need to manually install Leiningen. On UNIX-like systems, Leiningen will be installed within the project automatically if the lein executable is not found on your path or
This sits in the developer tooling group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. Mori's toolset — Faster, Documentation, Transducers and 1 more — is a fair guide to whether it matches your workflow. It is maintained by dnolen; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Mori's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
| Tool | What it does |
|---|---|
| Faster | Mori is considerably faster across the board thanks to recent enhancements to the ClojureScript compiler. For users who would like to benchmark their immutable data structure implementations against Mori, Mori now expose |
| Documentation | You can find extensive [documentation and examples](http://swannodette.github.io/mori/) here. |
| Transducers | Mori includes Transducers. Zero allocation collection operations FTW: |
| Prerequisites | You will first need to install the [Java](http://www.oracle.com/technetwork/java/javase/downloads/index.html) SDK, if it's not already installed on your system. |
{
"mcpServers": {
"mori": {
"command": "npx",
"args": ["-y", "mori"]
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
Kill hallucinated APIs — version-accurate, up-to-date library documentation injected straight into context.
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
GitHub's official server — repos, issues, pull requests, Actions and code security, straight from your assistant.
Issue tracking at the speed of conversation — Linear's official hosted server with OAuth and zero install.
Local repository surgery — status, diffs, commits, branches and history for any repo on disk.
Timezone sanity for AI — current time anywhere and correct conversions, without the model doing date math.