Cruxes
Connect Cruxes to your AI host
Cruxes works as a remote MCP connector, so Claude, ChatGPT or Gemini CLI can read the decisions you made in Cruxes and record new ones. The connector is a launch preview.
Server URL
https://www.cruxes.io/api/mcpIt is a remote server reached over HTTPS. Nothing is installed on your computer.
How sign-in works
The connector signs you in with OAuth. Your host registers itself with Cruxes automatically (dynamic client registration) and uses PKCE, so there is no key to copy and no client secret to store. You sign in to Cruxes in your browser and approve what the host may do.
The permissions you are asked to approve are:
- Read your sessions, cruxes and decisions.
- Record the answer you give to an open crux, and save questions your agent asks you.
- Use model calls on a plan: finding new cruxes saved to a new session in your account, billed against your plan like the web app, and the free quick check where it is offered.
A host that was not granted a permission cannot use the tools that need it.
Set up in Claude
- Open Customize, then Connectors.
- Choose to add a custom connector.
- Enter the server URL
https://www.cruxes.io/api/mcpand save. - Choose Connect, sign in to Cruxes and approve the permissions.
Set up in ChatGPT
- Open ChatGPT settings and turn on developer mode, where your account has it.
- Add a custom MCP server (connector).
- Enter the server URL
https://www.cruxes.io/api/mcpand choose OAuth for authentication. - Sign in to Cruxes when asked and approve the permissions.
Set up in Gemini CLI
Run this once in a terminal:
gemini mcp add -s user -t http cruxes https://www.cruxes.io/api/mcpThen start gemini and follow the sign-in prompt the first time you use a Cruxes tool.
Menu names in these hosts change from time to time. If a step does not match what you see, look for the setting that adds a custom or remote MCP server, and use the same URL. Claude, ChatGPT and Gemini are products of their own makers; Cruxes is an independent connector.
What each tool does
The tools below are the ones to know. Reading is free. Anything that has Cruxes find new cruxes is metered against your plan.
| Tool | What it does | Reads or writes | Cost |
|---|---|---|---|
get_handoff | Returns the cruxes you decided, each with the option you chose, any still open, and the plan. The place to start when continuing your work. | Reads | Free |
list_sessions | Lists your Cruxes web sessions, newest first, with title, goal and how many cruxes are decided and open. Can filter by a word in the title or goal. | Reads | Free |
get_session | Returns one session in full: the recent conversation, every crux with your decision, open questions and the plan. | Reads | Free |
list_cruxes | Lists cruxes (questions whose answers change what to do) with headline, deadline and status. Open ones by default; can show decided ones or all. | Reads | Free |
get_crux | Returns one crux in full: the question, options with probabilities and expected value, evidence, assumptions and the recommended action. | Reads | Free |
resolve_crux | Records the option you choose for an open crux. The host is told to call it only after you say which option you choose. | Writes | Free |
detect_cruxes | Finds the cruxes in a plan or answer you give it, and saves them to a new session in your account so you can answer them. It decides nothing. Takes up to about 15 seconds, longer at walkthrough depth. | Writes | Metered: each crux returned counts against your plan's allowance, the same as in the web app |
Other tools the server lists
| Tool | What it does | Reads or writes | Cost |
|---|---|---|---|
get_harness | Shows your Cruxes settings (mode, cutoff, what happens when Jev is unavailable). Settings change only from your own controls in Cruxes. | Reads | Free |
requirements | Requirements mode, only when you ask for discovery before a task. The first call returns four fixed questions; the second, with your answers, finds the cruxes they raise and saves them to a session. | Writes | First call free; the second is metered like detect_cruxes |
gate_cruxes | Agents mode, only when you chose it: checks what the agent is about to do and returns STOP or PROCEED, sending the weightier questions to you. Saves the result to a session. | Writes | Metered like detect_cruxes |
record_crux | Saves a question the agent is about to ask you, with its exact wording, so it appears as an open crux. When the agent does not pass Jev's pick, Cruxes sends the question, its options, the title and the thread name if given, and the why and quote if given, to Jev, a model, and stores only the pick. Where the card's decision truth table is on, the agent may also give each option a line on what it costs if wrong and a cost estimate, and up to five criteria the options differ on; the table shows those as recorded by the agent and as its estimates, and none of them is sent to Jev. A key the tool does not take is ignored, or refused by name where strict checking is on. Listed only where enabled. | Writes | Free |
check_cruxes | A free, fast check before a billed detect: says whether a plan, answer or draft has open questions that would change the decision, how many (at most 5), and the biggest one in a line. Sends the text to a fast model (google/gemini-3.5-flash-lite, or its fallback), which answers or fails within 14 seconds, and saves nothing; the result names the model and the time it took. Listed only where enabled. | Scores only | Free and not metered, with its own allowance apart from detection's: 300 an hour per connection and 1,500 a day per person (both move with the deployment's cost scale). It spends model calls, so it needs the same permission as the tools that find cruxes |
crux_video | The short overview video for one crux: a trade-off map of its options, about 30 seconds. status says whether it exists and gives a link that works for an hour; generate is not available yet, and says so. Listed only where enabled. | Reads | Status is free. Once rendering is built, generate needs the permission to find cruxes, and a render costs about $0.10 |
rank_decision | Scores a decision before it is put to you: sends the decision, its options and any context to Jev, a model, which returns how consequential it is and which option it would pick. Saves nothing and finds no cruxes. Listed only where enabled. | Scores only | Not metered, though it needs the same permission as the tools that find cruxes |
get_artifact | Draws the decision artefact for one crux: a decision matrix, a consequence table, or a chart of each option's estimated cost. By default built from the crux's own fields with no model call, so it adds no figure the crux does not hold; estimates are labelled as estimates. Where the model option is enabled, a fast model can add up to four criteria on request, each labelled as a model suggestion; a new draw spends a model call, so it needs the same permission as the tools that find cruxes. Listed only where enabled. | Reads | Free |
Your host decides which tools to show and when to call them. Tools that write are marked in the table. See billing for your plan's allowance.
Example prompts
Try these once the connector is on. Replace the parts in angle brackets.
| Prompt | Tool it uses |
|---|---|
| What did I decide in my last Cruxes session? | get_handoff |
| List my open cruxes. | list_cruxes |
| Show my Cruxes sessions that mention pricing. | list_sessions |
| Open my most recent Cruxes session and summarize the plan. | get_session |
| Show the details of crux <id>. | get_crux |
| Check this plan for questions that would change the decision: <paste your plan> | detect_cruxes (metered) |
| Record that I picked option 2 for crux <id>. | resolve_crux |
Crux ids come from list_cruxes or get_handoff, so ask for the list first if you do not have one.
Disconnect and revoke access
- In Cruxes, open Connected apps, find the host and choose Disconnect. Access ends at once, and you can connect again later.
- In your host, remove the connector. A host can also revoke its own token through the standard OAuth revocation endpoint.
To also delete what Cruxes holds about you, see support and the privacy page.
Data handling
When a tool runs, Cruxes sends the result, such as your cruxes, decisions, plan and recent conversation, to the host you connected, and that host's model reads it. What the host does with it afterwards is governed by the host's own terms. When you ask detect_cruxes to check a plan, the text you pass is processed by Cruxes and the AI model providers named on the privacy page.
Cruxes does not sell your data or train on it. The full description of what is stored, for how long and with whom it is shared is on the privacy page.