@miraigent/free-ai-ops-mcp 0.1.30 → 0.1.32
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
|
@@ -1,5 +1,21 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.32] - 2026-07-07
|
|
4
|
+
|
|
5
|
+
### Added
|
|
6
|
+
|
|
7
|
+
- Added smoke-test assertions that parse MCP tool results from
|
|
8
|
+
`content[0].text` as JSON and verify exact public fields for the human review
|
|
9
|
+
and prompt risk JSON-RPC sessions.
|
|
10
|
+
|
|
11
|
+
## [0.1.31] - 2026-07-06
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- Clarified that MCP JSON-RPC tool results are wrapped in `content[0].text`, so
|
|
16
|
+
npm and GitHub users know where to parse the public smoke-test status before
|
|
17
|
+
connecting a real workflow or changing desktop client config.
|
|
18
|
+
|
|
3
19
|
## [0.1.30] - 2026-07-03
|
|
4
20
|
|
|
5
21
|
### Fixed
|
|
@@ -40,6 +40,10 @@ client config:
|
|
|
40
40
|
- Response 3 should return a `human_review_gate` content block whose JSON text
|
|
41
41
|
includes `gateStatus`, `reviewOwner`, `nextLogRow`, and `boundary`.
|
|
42
42
|
|
|
43
|
+
In raw JSON-RPC output, the tool result is wrapped by MCP as `content[0].text`.
|
|
44
|
+
Parse that text value as JSON, then check `gateStatus` before connecting a real
|
|
45
|
+
workflow or changing a desktop client config.
|
|
46
|
+
|
|
43
47
|
If those fields appear in the terminal but not in Claude Desktop, Cursor, or
|
|
44
48
|
another client, the package is likely running and the next thing to check is the
|
|
45
49
|
client config, restart behavior, or command path.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@miraigent/free-ai-ops-mcp",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.32",
|
|
4
4
|
"description": "Free MCP server for developers adding human review gates, prompt risk checks, FAQ review, and CRM note safety to AI tools.",
|
|
5
5
|
"homepage": "https://github.com/Miraigent/miraigent-free-ai-ops-mcp",
|
|
6
6
|
"type": "module",
|
package/scripts/smoke-test.mjs
CHANGED
|
@@ -174,6 +174,11 @@ assert.deepEqual(
|
|
|
174
174
|
assert.match(sampleResponses[2].result.content[0].text, /gateStatus/);
|
|
175
175
|
assert.match(sampleResponses[2].result.content[0].text, /reviewOwner/);
|
|
176
176
|
assert.match(sampleResponses[2].result.content[0].text, /boundary/);
|
|
177
|
+
const sampleToolResult = JSON.parse(sampleResponses[2].result.content[0].text);
|
|
178
|
+
assert.equal(sampleToolResult.tool, 'human_review_gate');
|
|
179
|
+
assert.equal(sampleToolResult.gateStatus, 'stop');
|
|
180
|
+
assert.equal(sampleToolResult.nextLogRow.gate_status, 'stop');
|
|
181
|
+
assert.equal(sampleToolResult.boundary, 'This tool is a review helper. It does not send messages.');
|
|
177
182
|
|
|
178
183
|
const promptRiskSession = await readFile(
|
|
179
184
|
new URL('../examples/prompt-risk-json-rpc-session/sample-session.jsonl', import.meta.url),
|
|
@@ -192,3 +197,11 @@ assert.match(promptRiskResponses[2].result.content[0].text, /prompt_risk_review/
|
|
|
192
197
|
assert.match(promptRiskResponses[2].result.content[0].text, /stop_before_ai_use/);
|
|
193
198
|
assert.match(promptRiskResponses[2].result.content[0].text, /customer_facing/);
|
|
194
199
|
assert.match(promptRiskResponses[2].result.content[0].text, /sensitive_data_possible/);
|
|
200
|
+
const promptRiskToolResult = JSON.parse(promptRiskResponses[2].result.content[0].text);
|
|
201
|
+
assert.equal(promptRiskToolResult.tool, 'prompt_risk_review');
|
|
202
|
+
assert.equal(promptRiskToolResult.recommendation, 'stop_before_ai_use');
|
|
203
|
+
assert.deepEqual(promptRiskToolResult.riskFlags, ['customer_facing', 'sensitive_data_possible']);
|
|
204
|
+
assert.equal(
|
|
205
|
+
promptRiskToolResult.boundary,
|
|
206
|
+
'This tool is a prompt risk helper. It is not legal advice and does not call an AI API.'
|
|
207
|
+
);
|