@miraigent/free-ai-ops-mcp 0.1.36 → 0.1.38
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 +15 -0
- package/README.md +16 -0
- package/examples/mcp-json-rpc-session/README.md +4 -0
- package/package.json +1 -1
- package/scripts/smoke-test.mjs +13 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.1.38] - 2026-07-14
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- Added a README tool-call preview so MCP client users can compare the expected
|
|
8
|
+
`human_review_gate` input shape before pasting synthetic data into a desktop
|
|
9
|
+
client or public issue.
|
|
10
|
+
|
|
11
|
+
## [0.1.37] - 2026-07-12
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Added smoke-test coverage that verifies unsupported JSON-RPC methods return a
|
|
16
|
+
request-scoped error instead of a successful result.
|
|
17
|
+
|
|
3
18
|
## [0.1.36] - 2026-07-11
|
|
4
19
|
|
|
5
20
|
### Added
|
package/README.md
CHANGED
|
@@ -106,6 +106,22 @@ After restarting Claude Desktop or Cursor, the four tools
|
|
|
106
106
|
(`human_review_gate`, `faq_candidate_review`, `ai_safe_crm_note`,
|
|
107
107
|
`prompt_risk_review`) will be available in the MCP tools panel.
|
|
108
108
|
|
|
109
|
+
Before connecting a real workflow, try one synthetic `human_review_gate` call in
|
|
110
|
+
your MCP client and compare the input shape with this public example:
|
|
111
|
+
|
|
112
|
+
{
|
|
113
|
+
"draftType": "support reply",
|
|
114
|
+
"audience": "customer",
|
|
115
|
+
"riskFlags": ["refund", "personal data"],
|
|
116
|
+
"reviewOwner": "support lead",
|
|
117
|
+
"sendMode": "manual"
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
For that kind of input, the expected result is `stop` or `review_required`, plus
|
|
121
|
+
a boundary note saying the tool does not send messages. If your client shows a
|
|
122
|
+
different field name or hides the returned status, open a Tried It feedback
|
|
123
|
+
issue with synthetic input only.
|
|
124
|
+
|
|
109
125
|
Claude Desktop config location:
|
|
110
126
|
|
|
111
127
|
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
@@ -20,6 +20,10 @@ From the repository root:
|
|
|
20
20
|
|
|
21
21
|
npm run mcp < examples/mcp-json-rpc-session/sample-session.jsonl
|
|
22
22
|
|
|
23
|
+
From the public npm package:
|
|
24
|
+
|
|
25
|
+
npx -y free-ai-ops-mcp@npm:@miraigent/free-ai-ops-mcp < examples/mcp-json-rpc-session/sample-session.jsonl
|
|
26
|
+
|
|
23
27
|
You should receive three JSON-RPC response lines. The final response should
|
|
24
28
|
include a human_review_gate result with:
|
|
25
29
|
|
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.38",
|
|
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
|
@@ -218,3 +218,16 @@ assert.equal(unknownToolResponses.length, 1);
|
|
|
218
218
|
assert.equal(unknownToolResponses[0].id, 7);
|
|
219
219
|
assert.equal(unknownToolResponses[0].error.code, -32000);
|
|
220
220
|
assert.equal(unknownToolResponses[0].error.message, 'Unknown tool: unknown_public_tool');
|
|
221
|
+
|
|
222
|
+
const unsupportedMethodResponses = await runServerWithRequests([
|
|
223
|
+
JSON.stringify({
|
|
224
|
+
jsonrpc: '2.0',
|
|
225
|
+
id: 8,
|
|
226
|
+
method: 'resources/list',
|
|
227
|
+
params: {}
|
|
228
|
+
})
|
|
229
|
+
]);
|
|
230
|
+
assert.equal(unsupportedMethodResponses.length, 1);
|
|
231
|
+
assert.equal(unsupportedMethodResponses[0].id, 8);
|
|
232
|
+
assert.equal(unsupportedMethodResponses[0].error.code, -32000);
|
|
233
|
+
assert.equal(unsupportedMethodResponses[0].error.message, 'Unsupported method: resources/list');
|