mcp-server-mcpindex 0.3.4 → 0.3.5

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/CHANGELOG.md CHANGED
@@ -4,11 +4,17 @@ All notable changes to `mcp-server-mcpindex` are recorded here.
4
4
 
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and the project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.3.5] - 2026-07-12
8
+
9
+ ### Changed
10
+
11
+ - **Honesty copy for the advisory screen vs in-path gate.** `check_tool_trust` tool description now states v1 produces REVIEW/UNVERIFIED only (ALLOW/DENY reserved) and that this package is the directory client — not `mcpindex-gate`. Package description and README integration example match: REVIEW/UNVERIFIED first; ALLOW/DENY kept as reserved contract branches.
12
+
7
13
  ## [0.3.3] - 2026-06-08
8
14
 
9
15
  ### Changed
10
16
 
11
- - **Recommended install now rides `@latest`.** The docs wire `npx -y mcp-server-mcpindex@latest` so the host fetches the newest discovery server on each restart — no manual upgrade step. This server is the *advisory* recommender (`recommend_mcp_for_task` / `check_tool_trust` / `assess_server`), **not** the in-path drift gate, so it carries no version pin (the gate, `mcpindex-preflight`, stays pinned + notify-only on purpose). The startup update notice already prints the exact `npm i -g …@latest` command for anyone who pins.
17
+ - **Recommended install now rides `@latest`.** The docs wire `npx -y mcp-server-mcpindex@latest` so the host fetches the newest discovery server on each restart — no manual upgrade step. This server is the *advisory* recommender (`recommend_mcp_for_task` / `check_tool_trust` / `assess_server`), **not** the in-path drift gate, so it carries no version pin (the gate, `mcpindex-gate`, stays pinned + notify-only on purpose). The startup update notice already prints the exact `npm i -g …@latest` command for anyone who pins.
12
18
 
13
19
  ## [0.3.2] - 2026-06-08
14
20
 
package/README.md CHANGED
@@ -83,9 +83,9 @@ npx -y mcp-server-mcpindex@latest
83
83
  | `check_tool_trust` | Pre-invocation advisory verdict for a specific tool on a server. Fail-CLOSED: returns UNVERIFIED when no verdict on file. |
84
84
  | `assess_server` | Aggregated pre-flight verdict across all tools on a server. Same shape as `check_tool_trust`. |
85
85
 
86
- ## Agent-framework integration: pre-invocation trust gate
86
+ ## Agent-framework integration: advisory pre-invocation screen
87
87
 
88
- `check_tool_trust` is the integration surface that lets agent frameworks (Composio, Mastra, LangChain, DSPy, raw LLM-tool-call loops) ask "is this tool safe to invoke right now?" before dispatching the call.
88
+ `check_tool_trust` is the **directory client** integration surface (not the in-path `mcpindex-gate`). It lets agent frameworks (Composio, Mastra, LangChain, DSPy, raw LLM-tool-call loops) ask for an advisory screen verdict before dispatching a call. At v1 you will see REVIEW or UNVERIFIED — not a safety clearance.
89
89
 
90
90
  ### Verdict contract (v1)
91
91
 
@@ -146,16 +146,9 @@ async function gateToolCall({ serverId, toolName, invoke, askHuman }) {
146
146
  audit.log({ verdict, caveats: verdict.honest_limits });
147
147
 
148
148
  switch (verdict.directive) {
149
- case 'ALLOW':
150
- return invoke();
151
-
152
- case 'DENY':
153
- throw new Error(
154
- `mcpindex denied ${serverId}/${toolName}: ${JSON.stringify(verdict.dimensions)}`,
155
- );
156
-
157
149
  case 'REVIEW':
158
150
  // Fail-CLOSED to human. Do NOT auto-execute on REVIEW.
151
+ // At v1 this is the common screened outcome (semantic-only).
159
152
  return askHuman({ verdict, action: `${serverId}/${toolName}` });
160
153
 
161
154
  case 'UNVERIFIED':
@@ -167,6 +160,17 @@ async function gateToolCall({ serverId, toolName, invoke, askHuman }) {
167
160
  note: 'No trust verdict on file. Human review required before first use.',
168
161
  });
169
162
 
163
+ case 'ALLOW':
164
+ // Reserved in the contract — not produced by the v1 public screen.
165
+ // Keep the branch for future conformance-earned ALLOW; do not expect it today.
166
+ return invoke();
167
+
168
+ case 'DENY':
169
+ // Reserved in the contract — not produced by the v1 public screen.
170
+ throw new Error(
171
+ `mcpindex denied ${serverId}/${toolName}: ${JSON.stringify(verdict.dimensions)}`,
172
+ );
173
+
170
174
  default:
171
175
  // Unknown directive. Fail-CLOSED.
172
176
  return askHuman({ verdict, action: `${serverId}/${toolName}` });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mcp-server-mcpindex",
3
- "version": "0.3.4",
4
- "description": "An MCP server for finding MCP servers, plus advisory trust verdicts (check_tool_trust, assess_server) for agent frameworks. Drop-in for Claude Desktop, Claude Code, Cursor, Gemini CLI, Cline, Zed.",
3
+ "version": "0.3.5",
4
+ "description": "An MCP server for finding MCP servers, plus advisory screen verdicts (check_tool_trust, assess_server). Directory client — not the in-path gate (mcpindex-gate). Drop-in for Claude Desktop, Claude Code, Cursor, Gemini CLI, Cline, Zed.",
5
5
  "keywords": [
6
6
  "mcp",
7
7
  "model-context-protocol",
package/src/index.mjs CHANGED
@@ -106,7 +106,7 @@ const TOOLS = [
106
106
  {
107
107
  name: 'check_tool_trust',
108
108
  description:
109
- 'Pre-invocation trust check for a specific tool on an MCP server. Returns an advisory verdict object (directive ALLOW | DENY | REVIEW | UNVERIFIED, dimensions, freshness). v1 advisory; conformance monitored not enforced; verdicts may be UNVERIFIED if not yet probed. Agents SHOULD treat UNVERIFIED as "human review required", never as ALLOW.',
109
+ 'Pre-invocation advisory screen for a specific tool on an MCP server. Returns an advisory verdict object (directive ALLOW | DENY | REVIEW | UNVERIFIED, dimensions, freshness). At v1 the public screen produces REVIEW or UNVERIFIED only ALLOW/DENY are reserved. Not the in-path gate (mcpindex-gate). Agents SHOULD treat UNVERIFIED as "human review required", never as ALLOW.',
110
110
  inputSchema: {
111
111
  type: 'object',
112
112
  properties: {