@rvry/mcp 0.12.2 → 1.0.0

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/README.md CHANGED
@@ -15,13 +15,13 @@ The wizard will:
15
15
  2. Auto-detect supported clients on your machine
16
16
  3. Configure them automatically
17
17
 
18
- Supported clients: **Claude Code**, **Claude Desktop**, **Cursor**, **Gemini CLI**, **Codex**, **Anti-Gravity**
18
+ Supported clients: **Claude Code**, **Claude Desktop**
19
19
 
20
20
  Restart any running clients after setup, and RVRY is ready.
21
21
 
22
22
  ### Manual Configuration
23
23
 
24
- For any MCP client that supports **stdio transport** (runs a local process), add this to your MCP config:
24
+ For Claude Desktop or any other MCP client that supports **stdio transport**, add this to your MCP config:
25
25
 
26
26
  ```json
27
27
  {
@@ -37,33 +37,18 @@ For any MCP client that supports **stdio transport** (runs a local process), add
37
37
 
38
38
  Get your token at [rvry.ai/dashboard](https://rvry.ai/dashboard) after signing up.
39
39
 
40
- ### HTTP Transport (Web-Based Clients)
41
-
42
- For clients that connect via HTTP URL (ChatGPT, Perplexity, etc.):
43
-
44
- **MCP Server URL:** `https://engine.rvry.ai/mcp`
45
-
46
- Authentication is handled via OAuth — you'll be prompted to sign in with Google when you first connect. No token configuration needed.
47
-
48
- ### Compatibility
49
-
50
- RVRY supports both **stdio** and **HTTP** transports:
51
-
52
- | Transport | Client | Setup |
53
- |-----------|--------|-------|
54
- | stdio | Claude Code, Claude Desktop, Cursor, Gemini CLI, Codex, Anti-Gravity | `npx --yes --package @rvry/mcp@latest rvry-mcp setup` |
55
- | stdio | Any client with `command` + `args` config | Manual JSON config (see above) |
56
- | HTTP | ChatGPT (custom GPTs), Perplexity, any HTTP MCP client | URL: `https://engine.rvry.ai/mcp` |
57
-
58
40
  ## Tools
59
41
 
60
42
  | Tool | What it does | Tier |
61
43
  |------|-------------|------|
62
- | **`RVRY_deepthink`** | Extended multi-round analysis. Catches assumptions, tests them, and doesn't let your AI wrap up until it's dealt with what it found. | All |
63
- | **`RVRY_think`** | Lighter single-session analysis for questions that need structure but not the full deepthink loop. | All |
64
- | **`RVRY_problem_solve`** | Structured decision-making. Forces orientation, anticipation, and evaluation before committing to a recommendation. | Pro+ |
65
- | **`RVRY_challenge`** | Adversarial stress-testing. Finds weaknesses, tests assumptions, and surfaces failure modes in a proposal before you commit. | Pro+ |
66
- | **`RVRY_meta`** | Sustained metacognitive observation. Examines how your AI is thinking, not just what it's thinking. | Max |
44
+ | **`rvry`** | Lighter single-session analysis for questions that need structure but not the full deepthink loop. (Renamed from `think` in 1.0.0.) | All |
45
+ | **`deepthink`** | Extended multi-round analysis. Catches assumptions, tests them, and doesn't let your AI wrap up until it's dealt with what it found. | All |
46
+ | **`shimmer`** | Three-round reflective answering: a protected observation round surfaces commitments the answer must honor, then the answer is produced under them, then at most one resolution round. | All |
47
+ | **`problem_solve`** | Structured decision-making. Forces orientation, anticipation, and evaluation before committing to a recommendation. | Pro+ |
48
+ | **`challenge`** | Adversarial stress-testing. Finds weaknesses, tests assumptions, and surfaces failure modes in a proposal before you commit. | Pro+ |
49
+ | **`meta`** | Sustained metacognitive observation. Examines how your AI is thinking, not just what it's thinking. | Max |
50
+
51
+ A `think` tombstone tool remains for backward compatibility — calling it returns a notice pointing at `rvry`. It will be removed at 2.0.0.
67
52
 
68
53
  ### Parameters
69
54
 
@@ -71,35 +56,42 @@ All tools accept:
71
56
 
72
57
  | Parameter | Type | Required | Description |
73
58
  |-----------|------|----------|-------------|
74
- | `input` | string | Yes | Your question (new session) or analysis (continuation) |
75
- | `sessionId` | string | No | Session ID for continuing an existing session |
76
- | `requiresCurrentData` | boolean | No | Set to `true` when the question involves facts, policies, prices, or events that may have changed. Seeds a verification constraint that persists across all rounds. |
77
- | `skipShimmer` | boolean | No | Set to `true` to skip the self-observation priming phase and go directly to analysis. Default `false`. Not available on `RVRY_meta`. |
59
+ | `input` | string | Yes | Your question (new session) or analysis findings (continuation). |
60
+ | `sessionId` | string | No | Session ID for continuing an existing session. |
61
+ | `skipScoping` | boolean | No | Skip the scoping questions phase and begin analysis immediately. |
62
+ | `userConstraints` | string[] | No | User-stated directives or requirements to track across rounds. |
63
+ | `requiresCurrentData` | boolean | No | Set to `true` when the question depends on facts, policies, prices, or events that may have changed. Seeds a verification constraint that persists across all rounds. |
64
+ | `record` | boolean | No | When `true` on every call, the local client archives each round's body to `.rvry/<op>/<slug>/round-N-<mode>.md`. Passed from slash commands via the `--record` flag. |
65
+ | `harvest` | object | No | Final-call-only. The client includes its synthesis (`title`, `summary`, `keyFindings`, `shimmer`, `openQuestions`, `followUps`, plus operation-specific fields) so it can be persisted to the local session file. |
66
+ | `rounds` | array | No | Final-call-only, present only when `--record` was set. Array of `{round, mode, body}` for each analytical round. |
78
67
 
79
68
  **When to use `requiresCurrentData`:** Any question about regulations, pricing, legal rulings, market conditions, API specifications, or current events. The engine will require the model to explicitly classify every cited fact as either verified-current or training-data-dependent before concluding.
80
69
 
81
- **When to use `skipShimmer`:** If you want to minimize round count and have a well-scoped, specific question, skipping shimmer removes one round of priming. For exploratory or open-ended questions, leave shimmer enabled the self-observation priming improves cold-start depth.
70
+ **SHIMMER display:** SHIMMER is always round 1. The model displays `RVRY SHIMMER` with the revery definition before its self-observation this is the priming phase, where the model observes its own processing before structured analysis begins.
82
71
 
83
- **SHIMMER display:** When shimmer runs, the model displays `RVRY SHIMMER` with the revery definition before its self-observation. This is the priming phase the model observes its own processing before structured analysis begins.
72
+ **Client-owned harvest (Path B):** On the call that completes the session, the client constructs and passes a `harvest` object describing the final synthesis; the local writer renders `.rvry/<op>/<slug>/harvest.md` from it. With `--record`, each round is also written as `round-N-<mode>.md` in that folder.
84
73
 
85
74
  ## Slash Commands (Claude Code)
86
75
 
87
- When you run `npx --yes --package @rvry/mcp@latest rvry-mcp setup` and select Claude Code, the wizard installs 4 slash commands:
76
+ When you run `npx --yes --package @rvry/mcp@latest rvry-mcp setup` and select Claude Code, the wizard installs these slash commands:
88
77
 
89
78
  | Command | Tool | What it does |
90
79
  |---------|------|-------------|
91
- | `/deepthink` | RVRY_deepthink | Deep multi-round analysis |
92
- | `/problem-solve` | RVRY_problem_solve | Structured decision-making |
93
- | `/challenge` | RVRY_challenge | Adversarial stress-testing |
94
- | `/meta` | RVRY_meta | Metacognitive observation |
80
+ | `/rvry` | rvry | Structured single-session analysis with a Difficulty Gate |
81
+ | `/deepthink` | deepthink | Deep multi-round analysis |
82
+ | `/shimmer` | shimmer | Reflective answering under surfaced commitments |
83
+ | `/problem-solve` | problem_solve | Structured decision-making |
84
+ | `/challenge` | challenge | Adversarial stress-testing |
85
+ | `/meta` | meta | Metacognitive observation |
86
+ | `/think` | rvry | Deprecated alias for `/rvry` (removed next major) |
95
87
 
96
88
  Usage: type `/deepthink [your question]` in Claude Code. Each command routes to the corresponding RVRY MCP tool and includes rendering instructions so analysis appears as visible markdown rather than hidden in tool calls.
97
89
 
98
- **Updating commands:** Existing slash command files are never overwritten. To get the latest specs, delete the old files in `~/.claude/commands/` and re-run setup.
90
+ **`--record` flag:** Append `--record` to any command (e.g. `/deepthink --record [question]`) to archive per-round bodies under `.rvry/<op>/<slug>/round-N-<mode>.md` alongside the harvest file.
99
91
 
100
- `RVRY_think` is available as a tool, but the setup wizard does not install a `/think` slash command. Use it from clients that show the full MCP tool list or invoke it manually.
92
+ **Updating commands:** Re-running setup refreshes the RVRY-owned command files. Any pre-existing file is backed up to `<name>.md.bak` before it is overwritten.
101
93
 
102
- Commands are installed to `~/.claude/commands/`. Existing files are never overwritten — re-running setup is safe.
94
+ Commands are installed to `~/.claude/commands/`.
103
95
 
104
96
  ## How it Works
105
97
 
@@ -115,8 +107,8 @@ On hard questions, a smaller model with RVRY outperforms a bigger model without
115
107
 
116
108
  | Plan | Sessions | Tools | Price |
117
109
  |------|----------|-------|-------|
118
- | Free | 5/month | deepthink | $0 |
119
- | Pro | 21/month | deepthink, problem_solve, challenge | $20/mo |
110
+ | Free | 5/month | deepthink, think | $0 |
111
+ | Pro | 21/month | deepthink, think, problem_solve, challenge | $20/mo |
120
112
  | Max | Unlimited | All tools including meta | $99/mo |
121
113
 
122
114
  Sign up at [rvry.ai](https://rvry.ai).
package/dist/client.d.ts CHANGED
@@ -2,7 +2,7 @@
2
2
  * RVRY MCP Client -- HTTP client for the RVRY engine /api/v1/think endpoint.
3
3
  */
4
4
  /** Valid tool names for the RVRY engine */
5
- export type RvryTool = 'deepthink' | 'problem_solve' | 'think' | 'challenge' | 'meta';
5
+ export type RvryTool = 'deepthink' | 'problem_solve' | 'think' | 'challenge' | 'meta' | 'shimmer';
6
6
  export interface ScopingQuestion {
7
7
  question: string;
8
8
  options: Array<{
@@ -13,7 +13,7 @@ export interface ScopingQuestion {
13
13
  }
14
14
  export interface ThinkResponse {
15
15
  sessionId: string;
16
- status: 'scoping' | 'orient' | 'active' | 'complete';
16
+ status: 'scoping' | 'shimmer' | 'orient' | 'active' | 'complete';
17
17
  round: number;
18
18
  prompt: string;
19
19
  instruction: string;
package/dist/index.d.ts CHANGED
@@ -5,7 +5,9 @@
5
5
  * Thin client that proxies tool calls to the RVRY engine HTTP API.
6
6
  * Auth via RVRY_TOKEN env var (static rvry_ token).
7
7
  *
8
- * Exposes 5 tools (RVRY_deepthink, RVRY_problem_solve, RVRY_think, RVRY_challenge, RVRY_meta) + backward-compat aliases + 5 MCP Prompts.
8
+ * Exposes 6 tools (rvry, deepthink, problem_solve, challenge, meta, shimmer)
9
+ * + RVRY_* backward-compat aliases + a `think` tombstone (renamed to rvry,
10
+ * removed at 2.0.0) + MCP Prompts.
9
11
  *
10
12
  * Also supports `npx --yes --package @rvry/mcp@latest rvry-mcp setup` to install Claude Code commands.
11
13
  */
@@ -14,11 +16,20 @@ import { type RvryTool, type ThinkResponse } from './client.js';
14
16
  /** Cache original question per session for response enrichment */
15
17
  declare const questionCache: Map<string, string>;
16
18
  /**
17
- * Map tool name to RvryTool.
18
- * Primary entries use rvry_ prefix; unprefixed entries are backward-compat aliases.
19
+ * Map tool name to RvryTool (the engine wire name).
20
+ * `rvry` maps to the engine's think operation. `think`/`RVRY_think` are
21
+ * tombstones handled before this map is consulted.
19
22
  */
20
23
  declare const TOOL_MAP: Record<string, RvryTool>;
24
+ /** Non-error tombstone notice for the renamed think tool. Removed at 2.0.0. */
25
+ declare const THINK_TOMBSTONE_NOTICE = "The think tool has been renamed to rvry. Call the rvry tool with the same arguments (input, sessionId, ...).";
21
26
  declare const TOOL_DEFS: Tool[];
22
- /** Strip response fields based on status for context-efficient MCP responses */
23
- declare function stripResponse(result: ThinkResponse, question: string): Record<string, unknown>;
24
- export { TOOL_MAP, TOOL_DEFS, stripResponse, questionCache };
27
+ /**
28
+ * Strip response fields based on status for context-efficient MCP responses.
29
+ *
30
+ * `toolName` is the public MCP tool name of the call in scope. The 'shimmer'
31
+ * status passthrough applies ONLY when the called tool is shimmer (R-6):
32
+ * legacy ops keep dropping prompt/instruction on their priming round.
33
+ */
34
+ declare function stripResponse(result: ThinkResponse, question: string, toolName?: string): Record<string, unknown>;
35
+ export { TOOL_MAP, TOOL_DEFS, stripResponse, questionCache, THINK_TOMBSTONE_NOTICE };