consult-llm-mcp 2.7.4 → 2.9.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.
Files changed (3) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/README.md +88 -67
  3. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # Changelog
2
2
 
3
+ ## v2.8.0 (2026-03-13)
4
+
5
+ - Replaced hardcoded model enum with abstract selectors (`gemini`, `openai`,
6
+ `deepseek`) that resolve to the best available model at query time. This
7
+ avoids the need to hardcode a specific model in the caller side.
8
+ - Responses now include a `[model:xxx]` prefix showing which concrete model was
9
+ used
10
+ - Default Codex reasoning effort to "high" (was previously unset)
11
+ - Monitor: added Task column to active and history tables
12
+ - Monitor: show task mode and reasoning effort in detail view header
13
+ - Monitor: press `s` in detail view to toggle system prompt display
14
+ - Monitor: system prompt is now recorded in sidecar event files for viewing in
15
+ the TUI
16
+
17
+ ## v2.7.4 (2026-03-13)
18
+
19
+ - Fixed Linux prebuilt binaries failing on older distros due to glibc version
20
+ mismatch by switching to musl static linking
21
+
3
22
  ## v2.7.1 (2026-03-09)
4
23
 
5
24
  - Monitor: show "Thinking..." spinner when thinking events are streaming
package/README.md CHANGED
@@ -29,12 +29,10 @@ to bring in the heavy artillery. Supports multi-turn conversations.
29
29
 
30
30
  - Query powerful AI models (GPT-5.4, Gemini 3.1 Pro, DeepSeek Reasoner) with
31
31
  relevant files as context
32
- - Direct queries with optional file context
33
- - Include git changes for code review and analysis
34
- - Comprehensive logging with cost estimation
32
+ - Include git changes for code review
33
+ - Comprehensive logging with cost estimation (if using API)
35
34
  - [Monitor TUI](#monitor): Real-time dashboard for watching active consultations
36
- - [Gemini CLI backend](#gemini-cli): Use the `gemini` CLI to take advantage of
37
- [free quota](https://developers.google.com/gemini-code-assist/resources/quotas#quotas-for-agent-mode-gemini-cli)
35
+ - [Gemini CLI backend](#gemini-cli): Use the `gemini` CLI for Gemini models
38
36
  - [Codex CLI backend](#codex-cli): Use the `codex` CLI for OpenAI models
39
37
  - [Cursor CLI backend](#cursor-cli): Use the `cursor-agent` CLI to route GPT and
40
38
  Gemini models through a single tool
@@ -55,37 +53,40 @@ to bring in the heavy artillery. Supports multi-turn conversations.
55
53
 
56
54
  ```bash
57
55
  claude mcp add consult-llm \
58
- -e OPENAI_API_KEY=your_key \
59
- -e GEMINI_API_KEY=your_key \
56
+ -e CONSULT_LLM_GEMINI_BACKEND=gemini-cli \
57
+ -e CONSULT_LLM_OPENAI_BACKEND=codex-cli \
60
58
  -- npx -y consult-llm-mcp
61
59
  ```
62
60
 
61
+ This is the recommended setup. Uses [Gemini CLI](#gemini-cli) and
62
+ [Codex CLI](#codex-cli). No API keys required, just `gemini login` and
63
+ `codex login`.
64
+
63
65
  **With binary** (no Node.js required):
64
66
 
65
67
  ```bash
66
68
  curl -fsSL https://raw.githubusercontent.com/raine/consult-llm-mcp/main/scripts/install.sh | bash
69
+ ```
70
+
71
+ ```bash
67
72
  claude mcp add consult-llm \
68
- -e OPENAI_API_KEY=your_key \
69
- -e GEMINI_API_KEY=your_key \
73
+ -e CONSULT_LLM_GEMINI_BACKEND=gemini-cli \
74
+ -e CONSULT_LLM_OPENAI_BACKEND=codex-cli \
70
75
  -- consult-llm-mcp
71
76
  ```
72
77
 
73
78
  For global availability across projects, add `--scope user`.
74
79
 
75
- <details>
76
- <summary>Using multiple API keys or CLI backends</summary>
80
+ **Using API keys instead of CLI backends:**
77
81
 
78
82
  ```bash
79
83
  claude mcp add consult-llm \
80
84
  -e OPENAI_API_KEY=your_openai_key \
81
85
  -e GEMINI_API_KEY=your_gemini_key \
82
86
  -e DEEPSEEK_API_KEY=your_deepseek_key \
83
- -e CONSULT_LLM_GEMINI_BACKEND=gemini-cli \
84
87
  -- npx -y consult-llm-mcp
85
88
  ```
86
89
 
87
- </details>
88
-
89
90
  2. **Verify connection** with `/mcp`:
90
91
 
91
92
  ```
@@ -380,8 +381,9 @@ claude mcp add consult-llm -e CONSULT_LLM_OPENAI_BACKEND=codex-cli -- npx -y con
380
381
 
381
382
  <!-- prettier-ignore -->
382
383
  > [!TIP]
383
- > Set reasoning effort with `-e CONSULT_LLM_CODEX_REASONING_EFFORT=high`. Options:
384
- > `none`, `minimal`, `low`, `medium`, `high`, `xhigh`.
384
+ > Reasoning effort defaults to `high`. Override with
385
+ > `-e CONSULT_LLM_CODEX_REASONING_EFFORT=xhigh`. Options: `none`, `minimal`,
386
+ > `low`, `medium`, `high`, `xhigh`.
385
387
 
386
388
  #### Cursor CLI
387
389
 
@@ -405,8 +407,7 @@ claude mcp add consult-llm -e CONSULT_LLM_GEMINI_BACKEND=cursor-cli -- npx -y co
405
407
  claude mcp add consult-llm \
406
408
  -e CONSULT_LLM_OPENAI_BACKEND=cursor-cli \
407
409
  -e CONSULT_LLM_GEMINI_BACKEND=cursor-cli \
408
- -e CONSULT_LLM_CODEX_REASONING_EFFORT=high \
409
- -e CONSULT_LLM_ALLOWED_MODELS="gemini-3-pro-preview,gpt-5.3-codex" \
410
+ -e CONSULT_LLM_ALLOWED_MODELS="gemini-3.1-pro-preview,gpt-5.3-codex" \
410
411
  -- npx -y consult-llm-mcp
411
412
  ```
412
413
 
@@ -419,11 +420,7 @@ review), allow them in `~/.cursor/cli-config.json`:
419
420
  ```json
420
421
  {
421
422
  "permissions": {
422
- "allow": [
423
- "Shell(git diff*)",
424
- "Shell(git log*)",
425
- "Shell(git show*)"
426
- ],
423
+ "allow": ["Shell(git diff*)", "Shell(git log*)", "Shell(git show*)"],
427
424
  "deny": []
428
425
  }
429
426
  }
@@ -495,31 +492,38 @@ See the "Using web mode..." example above for a concrete transcript.
495
492
  mode)
496
493
  - `DEEPSEEK_API_KEY` - Your DeepSeek API key (required for DeepSeek models)
497
494
  - `CONSULT_LLM_DEFAULT_MODEL` - Override the default model (optional)
498
- - Options: `gpt-5.2` (default), `gpt-5.4`, `gemini-2.5-pro`,
499
- `gemini-3-pro-preview`, `gemini-3.1-pro-preview`, `deepseek-reasoner`,
500
- `gpt-5.3-codex`, `gpt-5.2-codex`
495
+ - Accepts selectors (`gemini`, `openai`, `deepseek`) or exact model IDs
496
+ (`gpt-5.4`, `gemini-3.1-pro-preview`, etc.)
497
+ - Selectors are resolved to the best available model at startup
501
498
  - `CONSULT_LLM_GEMINI_BACKEND` - Backend for Gemini models (optional)
502
499
  - Options: `api` (default), `gemini-cli`, `cursor-cli`
503
500
  - `CONSULT_LLM_OPENAI_BACKEND` - Backend for OpenAI models (optional)
504
501
  - Options: `api` (default), `codex-cli`, `cursor-cli`
505
- - `CONSULT_LLM_CODEX_REASONING_EFFORT` - Configure reasoning effort for Codex
506
- CLI (optional)
507
- - See [Codex CLI](#codex-cli) for details and available options
502
+ - `CONSULT_LLM_ALLOWED_MODELS` - Restrict which concrete models can be used
503
+ (optional)
504
+ - Comma-separated list, e.g., `gpt-5.4,gemini-3.1-pro-preview`
505
+ - Selectors resolve against this list — e.g., if only `gemini-2.5-pro` is
506
+ allowed, the `gemini` selector resolves to it
507
+ - Useful when a backend doesn't support all models (e.g., Cursor CLI)
508
+ - See [Tips](#controlling-which-models-are-used) for usage examples
508
509
  - `CONSULT_LLM_EXTRA_MODELS` - Add models not in the built-in list (optional)
509
510
  - Comma-separated list, e.g., `grok-3,kimi-k2.5`
510
511
  - Merged with built-in models and included in the tool schema
511
512
  - Useful for newly released models with a known provider prefix (`gpt-`,
512
513
  `gemini-`, `deepseek-`)
513
- - `CONSULT_LLM_ALLOWED_MODELS` - List of models to advertise (optional)
514
- - Comma-separated list, e.g., `gpt-5.2,gemini-3-pro-preview`
515
- - When set, only these models appear in the tool schema
516
- - Filters the combined catalog (built-in + extra models)
517
- - If `CONSULT_LLM_DEFAULT_MODEL` is set, it must be in this list
518
- - See [Tips](#controlling-which-models-claude-uses) for usage examples
514
+ - `CONSULT_LLM_CODEX_REASONING_EFFORT` - Configure reasoning effort for Codex
515
+ CLI (optional, default: `high`)
516
+ - See [Codex CLI](#codex-cli) for details and available options
519
517
  - `CONSULT_LLM_SYSTEM_PROMPT_PATH` - Custom path to system prompt file
520
518
  (optional)
521
519
  - Overrides the default `~/.consult-llm-mcp/SYSTEM_PROMPT.md` location
522
520
  - Useful for project-specific prompts
521
+ - `CONSULT_LLM_NO_UPDATE_CHECK` - Disable automatic update checking on server
522
+ startup (optional)
523
+ - Set to `1` to disable
524
+ - By default, the server checks for new versions in the background every 24
525
+ hours and logs a notice when an update is available
526
+ - Only applies to binary installs — npm installs are never checked
523
527
  - `MCP_DEBUG_STDIN` - Log raw JSON-RPC messages received on stdin (optional)
524
528
  - Set to `1` to enable
525
529
  - Logs every message as `RAW RECV` entries and poll timing gaps as
@@ -558,30 +562,33 @@ claude mcp add consult-llm \
558
562
 
559
563
  ## Tips
560
564
 
561
- ### Controlling which models Claude uses
565
+ ### Controlling which models are used
562
566
 
563
- When you ask Claude to "consult an LLM" without specifying a model, it picks one
564
- from the available options in the tool schema. The `CONSULT_LLM_DEFAULT_MODEL`
565
- only affects the fallback when no model is specified in the tool call.
567
+ The `model` parameter accepts **selectors** (`gemini`, `openai`, `deepseek`)
568
+ that the server resolves to the best available concrete model. When no model is
569
+ specified, the server uses `CONSULT_LLM_DEFAULT_MODEL` or its built-in fallback.
566
570
 
567
- To control which models Claude can choose from, use
568
- `CONSULT_LLM_ALLOWED_MODELS`:
571
+ **Selector resolution order** (first available wins):
569
572
 
570
- ```bash
571
- claude mcp add consult-llm \
572
- -e GEMINI_API_KEY=your_key \
573
- -e CONSULT_LLM_ALLOWED_MODELS='gemini-3-pro-preview,gpt-5.2-codex' \
574
- -- npx -y consult-llm-mcp
575
- ```
573
+ | Selector | Priority |
574
+ | ---------- | -------------------------------------------------------------- |
575
+ | `gemini` | gemini-3.1-pro-preview gemini-3-pro-preview → gemini-2.5-pro |
576
+ | `openai` | gpt-5.4 → gpt-5.3-codex → gpt-5.2 → gpt-5.2-codex |
577
+ | `deepseek` | deepseek-reasoner |
576
578
 
577
- This restricts the tool schema to only advertise these models. For example, to
578
- ensure Claude always uses Gemini 3 Pro:
579
+ **Restricting models with `CONSULT_LLM_ALLOWED_MODELS`:**
580
+
581
+ If your backend doesn't support all models (e.g., Cursor CLI can't use
582
+ `gpt-5.4`), use `CONSULT_LLM_ALLOWED_MODELS` to filter. Selectors will
583
+ automatically resolve to the best model within the allowed list:
579
584
 
580
585
  ```bash
586
+ # Only allow codex models through Cursor CLI
581
587
  claude mcp add consult-llm \
582
- -e GEMINI_API_KEY=your_key \
583
- -e CONSULT_LLM_ALLOWED_MODELS='gemini-3-pro-preview' \
588
+ -e CONSULT_LLM_OPENAI_BACKEND=cursor-cli \
589
+ -e CONSULT_LLM_ALLOWED_MODELS='gpt-5.3-codex,gemini-3.1-pro-preview' \
584
590
  -- npx -y consult-llm-mcp
591
+ # "openai" selector → gpt-5.3-codex (gpt-5.4 filtered out)
585
592
  ```
586
593
 
587
594
  ## MCP tool: consult_llm
@@ -596,10 +603,12 @@ models complex questions.
596
603
  - **files** (optional): Array of file paths to include as context
597
604
  - All files are added as context with file paths and code blocks
598
605
 
599
- - **model** (optional): LLM model to use
600
- - Options: `gpt-5.2` (default), `gpt-5.4`, `gemini-2.5-pro`,
601
- `gemini-3-pro-preview`, `gemini-3.1-pro-preview`, `deepseek-reasoner`,
602
- `gpt-5.3-codex`, `gpt-5.2-codex`
606
+ - **model** (optional): Model selector or exact model ID
607
+ - Selectors: `gemini`, `openai`, `deepseek` — the server resolves to the best
608
+ available model for each family
609
+ - Exact model IDs (`gpt-5.4`, `gemini-3.1-pro-preview`, etc.) are also
610
+ accepted as an advanced override
611
+ - When omitted, the server uses the configured default
603
612
 
604
613
  - **task_mode** (optional): Controls the system prompt persona. The calling LLM
605
614
  should choose based on the task:
@@ -631,15 +640,12 @@ models complex questions.
631
640
 
632
641
  ## Supported models
633
642
 
634
- - **gemini-2.5-pro**: Google's Gemini 2.5 Pro ($1.25/$10 per million tokens)
635
- - **gemini-3-pro-preview**: Google's Gemini 3 Pro Preview ($2/$12 per million
636
- tokens for prompts ≤200k tokens, $4/$18 for prompts >200k tokens)
637
- - **gemini-3.1-pro-preview**: Google's Gemini 3.1 Pro Preview ($2/$12 per
638
- million tokens for prompts ≤200k tokens, $4/$18 for prompts >200k tokens)
639
- - **deepseek-reasoner**: DeepSeek's reasoning model ($0.55/$2.19 per million
640
- tokens)
641
- - **gpt-5.4**: OpenAI's GPT-5.4 model ($2.50/$15 per million tokens)
642
- - **gpt-5.2**: OpenAI's GPT-5.2 model ($1.75/$14 per million tokens)
643
+ - **gemini-2.5-pro**: Google's Gemini 2.5 Pro
644
+ - **gemini-3-pro-preview**: Google's Gemini 3 Pro Preview
645
+ - **gemini-3.1-pro-preview**: Google's Gemini 3.1 Pro Preview
646
+ - **deepseek-reasoner**: DeepSeek's reasoning model
647
+ - **gpt-5.4**: OpenAI's GPT-5.4 model
648
+ - **gpt-5.2**: OpenAI's GPT-5.2 model
643
649
  - **gpt-5.3-codex**: OpenAI's Codex model based on GPT-5.3
644
650
  - **gpt-5.2-codex**: OpenAI's Codex model based on GPT-5.2
645
651
 
@@ -739,7 +745,9 @@ always reliably triggered. See the [consult skill](#consult) below.
739
745
  **Recommendation:** Start with no custom activation. Use skills if you need
740
746
  custom instructions for how the MCP is invoked.
741
747
 
742
- ## Installing skills
748
+ ## Skills
749
+
750
+ ### Installing skills
743
751
 
744
752
  Install all skills globally with a single command:
745
753
 
@@ -759,8 +767,6 @@ To uninstall:
759
767
  curl -fsSL https://raw.githubusercontent.com/raine/consult-llm-mcp/main/scripts/install-skills | bash -s uninstall
760
768
  ```
761
769
 
762
- ## Skills
763
-
764
770
  ### consult
765
771
 
766
772
  An example [Claude Code skill](https://code.claude.com/docs/en/skills) that uses
@@ -816,6 +822,21 @@ forth before synthesizing and implementing. See
816
822
  > /debate-vs --gemini design the multi-tenant isolation strategy
817
823
  ```
818
824
 
825
+ ## Updating
826
+
827
+ **Binary installs:**
828
+
829
+ ```bash
830
+ consult-llm-mcp update
831
+ ```
832
+
833
+ Downloads the latest release from GitHub with SHA-256 checksum verification. If
834
+ `consult-llm-monitor` is found alongside the binary, it's updated too.
835
+
836
+ The server also checks for updates in the background on startup (every 24 hours)
837
+ and logs a notice when a newer version is available. Disable with
838
+ `CONSULT_LLM_NO_UPDATE_CHECK=1`.
839
+
819
840
  ## Development
820
841
 
821
842
  To work on the MCP server locally and use your development version:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "consult-llm-mcp",
3
- "version": "2.7.4",
3
+ "version": "2.9.0",
4
4
  "description": "MCP server for consulting powerful AI models",
5
5
  "repository": {
6
6
  "type": "git",
@@ -31,9 +31,9 @@
31
31
  "ai"
32
32
  ],
33
33
  "optionalDependencies": {
34
- "consult-llm-mcp-darwin-arm64": "2.7.4",
35
- "consult-llm-mcp-darwin-x64": "2.7.4",
36
- "consult-llm-mcp-linux-x64": "2.7.4",
37
- "consult-llm-mcp-linux-arm64": "2.7.4"
34
+ "consult-llm-mcp-darwin-arm64": "2.9.0",
35
+ "consult-llm-mcp-darwin-x64": "2.9.0",
36
+ "consult-llm-mcp-linux-x64": "2.9.0",
37
+ "consult-llm-mcp-linux-arm64": "2.9.0"
38
38
  }
39
39
  }