T
theronic/modex
Clojure library for MCP tools, resources and prompts
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
We have neither an install command nor a public remote endpoint from this repository, so we do not print a config. A made-up one is worse than none. How each client wires MCP up →
- Source
- collected from the abordage/awesome-mcp list · type: MCP server
- Harvest history
- first seen 2026-11-05 · last seen 2026-11-14 · seen 10× · listed by 10 sources
- Score
- score 1,003 · 10 sources · mcp
FAQ (answers come from our records)
Who is it for?
We filed it under these tags: MCP 服务. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
first catalogued 2026-11-05;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.
# Modex: Model Context Protocol Server & Client Library in Clojure
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Modex (MOdel + ContEXt) is a Clojure library that lets you augment your AI with new tools, resources and prompts.
Modex implements (most of) the Model Context Protocol to build MCP Servers & Clients in 'native' Clojure.
Because it's native Clojure, you don't need to deal with Anthropic's MCP Java SDK.
Modex implements the stdio transport in the 2024-11-05 MCP spec, so no need for a proxy like
mcp-proxy to translate between SSE stdio or vice versa.
## Screenshot of Modex in Action
Claude Desktop can talk to a Modex MCP Server via its MCP client:
## Table of Contents
1. Quickstart
2. What is MCP?
3. What can Modex do?
4. Detailed Step-by-Step Instructions
5. Implementation
6. Project Status
7. Rationale
8. FAQ
9. Licence
## Example Tools
Datomic MCP uses Modex to expose Datomic tools so your models can query DB schema and data in dev or prod.
## Quickstart
1. git clone git@github.com:theronic/modex.git
2. cd modex
3. ./build.sh builds an uberjar at target/modex-mcp-0.2.2.jar.
4. Open your Claude Desktop Config at ~/Library/Application\ Support/Claude/claudedesktopconfig.json
5. Configure a new MCP Server that will run the uberjar at its full path:
json
"mcpServers": {
"modex-mcp-hello-world": {
"command": "java",
"args": ["-jar", "/Users/your-username/code/modex/target/modex-mcp-0.2.2.jar"]
},
"globalShortcut": ""
6. Restart Claude Desktop to activate your new MCP Server + tools :) (Cmd+R refresh does not reload config, only restarts tools)
7. Tell Claude to "run the inc tool with 123", authorize the tool and you should see an output of 124.
## What is MCP?
MCP lets you augment your AI models with Tools, Resources & Prompts:
Tools are things it can do, like query a database (e.g. Datomic).
Resources are files and data it can read, like PDF bank statements.
Prompts are templated messages and workflows.
## Use Cases
Modex is used by datomic-mcp, which exposes our production Datomic databases to an MCP client like Claude Desktop. The AI model intelligently diagnoses support queries in production by reading our database schema and running queries that checks server state & IPs, so it can try to reach it and compare the desired state of VMs against the actual state in our clusters.
Over time, I hope to automate the bulk of our recurring support queries using Modex + other MCP tools.
## What can Modex do?
### Full Example
There is an MCP server example in src/modex/mcp/core.clj that defines an MCP server with some basic tools.
Your MCP client (e.g. Claude Desktop) can connect to this server and use exposed tools to provide additional context to your AI models.
## Data Structures
### Tools
Internally, a tool is just Tool record with several Parameter arguments:
(defrecord Tool [name doc args handler])
(defrecord Parameter [name doc type required default])
However, it is more convenient to define tools using the tool & tools macros below.
### Describe a single tool with the tool macro:
The tool macro acts like defrecord, where the handler definition takes a map of arguments ala {:keys [arg1 arg2 ...]} but with additional (optional) maps for :type, :or & :doc. This metadata is used to describe the tool to the MCP Client.
The MCP spec currently only supports :string & :number tool parameter types.
Modex implements (most of) the Model Context Protocol to build MCP Servers & Clients in 'native' Clojure.
Because it's native Clojure, you don't need to deal with Anthropic's MCP Java SDK.
Modex implements the stdio transport in the 2024-11-05 MCP spec, so no need for a proxy like
mcp-proxy to translate between SSE stdio or vice versa.
## Screenshot of Modex in Action
Claude Desktop can talk to a Modex MCP Server via its MCP client:
## Table of Contents
1. Quickstart
2. What is MCP?
3. What can Modex do?
4. Detailed Step-by-Step Instructions
5. Implementation
6. Project Status
7. Rationale
8. FAQ
9. Licence
## Example Tools
Datomic MCP uses Modex to expose Datomic tools so your models can query DB schema and data in dev or prod.
## Quickstart
1. git clone git@github.com:theronic/modex.git
2. cd modex
3. ./build.sh builds an uberjar at target/modex-mcp-0.2.2.jar.
4. Open your Claude Desktop Config at ~/Library/Application\ Support/Claude/claudedesktopconfig.json
5. Configure a new MCP Server that will run the uberjar at its full path:
json
"mcpServers": {
"modex-mcp-hello-world": {
"command": "java",
"args": ["-jar", "/Users/your-username/code/modex/target/modex-mcp-0.2.2.jar"]
},
"globalShortcut": ""
6. Restart Claude Desktop to activate your new MCP Server + tools :) (Cmd+R refresh does not reload config, only restarts tools)
7. Tell Claude to "run the inc tool with 123", authorize the tool and you should see an output of 124.
## What is MCP?
MCP lets you augment your AI models with Tools, Resources & Prompts:
Tools are things it can do, like query a database (e.g. Datomic).
Resources are files and data it can read, like PDF bank statements.
Prompts are templated messages and workflows.
## Use Cases
Modex is used by datomic-mcp, which exposes our production Datomic databases to an MCP client like Claude Desktop. The AI model intelligently diagnoses support queries in production by reading our database schema and running queries that checks server state & IPs, so it can try to reach it and compare the desired state of VMs against the actual state in our clusters.
Over time, I hope to automate the bulk of our recurring support queries using Modex + other MCP tools.
## What can Modex do?
### Full Example
There is an MCP server example in src/modex/mcp/core.clj that defines an MCP server with some basic tools.
Your MCP client (e.g. Claude Desktop) can connect to this server and use exposed tools to provide additional context to your AI models.
## Data Structures
### Tools
Internally, a tool is just Tool record with several Parameter arguments:
(defrecord Tool [name doc args handler])
(defrecord Parameter [name doc type required default])
However, it is more convenient to define tools using the tool & tools macros below.
### Describe a single tool with the tool macro:
The tool macro acts like defrecord, where the handler definition takes a map of arguments ala {:keys [arg1 arg2 ...]} but with additional (optional) maps for :type, :or & :doc. This metadata is used to describe the tool to the MCP Client.
The MCP spec currently only supports :string & :number tool parameter types.
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/theronic-modex/)
- Source
- awesome · https://github.com/theronic/modex
- Browse by field
- MCP servers
- Listed by
- 10 independent sources
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.