@iris-eval/mcp-server 0.1.7 → 0.1.9
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 +98 -2
- package/dist/config/defaults.js +1 -1
- package/dist/dashboard/assets/index-BTiYZFEQ.js +43 -0
- package/dist/dashboard/index.html +1 -1
- package/dist/dashboard/validation.d.ts +6 -6
- package/dist/dashboard/validation.js +2 -2
- package/dist/eval/engine.js +4 -2
- package/dist/eval/rules/custom.js +8 -2
- package/dist/storage/sqlite-adapter.js +5 -2
- package/dist/types/query.d.ts +1 -1
- package/package.json +7 -7
- package/server.json +2 -2
- package/dist/dashboard/assets/index-BwFrX6Zx.js +0 -70
package/README.md
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
# Iris — The Agent Eval Standard for MCP
|
|
2
2
|
|
|
3
3
|
[](https://glama.ai/mcp/servers/iris-eval/mcp-server)
|
|
4
|
+
[](cursor://anysphere.cursor-deeplink/mcp/install?name=server&config=eyJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBpcmlzLWV2YWwvbWNwLXNlcnZlciJdLCJlbnYiOnsiSVJJU19MT0dfTEVWRUwiOiJpbmZvIn19)
|
|
4
5
|
[](https://npmjs.com/package/@iris-eval/mcp-server)
|
|
5
6
|
[](https://npmjs.com/package/@iris-eval/mcp-server)
|
|
6
7
|
[](https://github.com/iris-eval/mcp-server)
|
|
7
8
|
[](https://github.com/iris-eval/mcp-server/actions/workflows/ci.yml)
|
|
8
9
|
[](LICENSE)
|
|
9
10
|
[](https://github.com/iris-eval/mcp-server/pkgs/container/mcp-server)
|
|
11
|
+
[](https://www.pulsemcp.com/servers/iris-eval)
|
|
12
|
+
[](https://mcp.so/server/iris/iris-eval)
|
|
10
13
|
|
|
11
14
|
**Know whether your AI agents are actually good enough to ship.** Iris is an open-source MCP server that scores output quality, catches safety failures, and enforces cost budgets across all your agents. Any MCP-compatible agent discovers and uses it automatically — no SDK, no code changes.
|
|
12
15
|
|
|
@@ -32,9 +35,11 @@ Iris evaluates all of it.
|
|
|
32
35
|
| **Cost Visibility** | Aggregate cost across all agents over any time window. Set budget thresholds. Get flagged when agents overspend. |
|
|
33
36
|
| **Web Dashboard** | Real-time dark-mode UI with trace visualization, eval results, and cost breakdowns. |
|
|
34
37
|
|
|
38
|
+
**Requires Node.js 20 or later.** Check with `node --version`.
|
|
39
|
+
|
|
35
40
|
## Quickstart
|
|
36
41
|
|
|
37
|
-
Add Iris to your
|
|
42
|
+
Add Iris to your MCP config. Works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible agent.
|
|
38
43
|
|
|
39
44
|
```json
|
|
40
45
|
{
|
|
@@ -56,10 +61,37 @@ npx @iris-eval/mcp-server --dashboard
|
|
|
56
61
|
# Open http://localhost:6920
|
|
57
62
|
```
|
|
58
63
|
|
|
64
|
+
<details>
|
|
65
|
+
<summary><strong>Setup by tool</strong></summary>
|
|
66
|
+
|
|
67
|
+
#### Claude Desktop
|
|
68
|
+
|
|
69
|
+
Edit your MCP config file:
|
|
70
|
+
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
71
|
+
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
|
|
72
|
+
|
|
73
|
+
Add the JSON config above, then restart Claude Desktop.
|
|
74
|
+
|
|
75
|
+
#### Claude Code
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
claude mcp add --transport stdio iris-eval -- npx @iris-eval/mcp-server
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Then restart the session (`/clear` or relaunch) for tools to load.
|
|
82
|
+
|
|
83
|
+
> **Windows note:** Do *not* use `cmd /c` wrapper — it causes path parsing issues. The `npx` command works directly.
|
|
84
|
+
|
|
85
|
+
#### Cursor / Windsurf
|
|
86
|
+
|
|
87
|
+
Add to your workspace `.cursor/mcp.json` or global MCP settings using the JSON config above.
|
|
88
|
+
|
|
89
|
+
</details>
|
|
90
|
+
|
|
59
91
|
### Other Install Methods
|
|
60
92
|
|
|
61
93
|
```bash
|
|
62
|
-
# Global install
|
|
94
|
+
# Global install (recommended for persistent data and faster startup)
|
|
63
95
|
npm install -g @iris-eval/mcp-server
|
|
64
96
|
iris-mcp --dashboard
|
|
65
97
|
|
|
@@ -67,6 +99,8 @@ iris-mcp --dashboard
|
|
|
67
99
|
docker run -p 3000:3000 -v iris-data:/data ghcr.io/iris-eval/mcp-server
|
|
68
100
|
```
|
|
69
101
|
|
|
102
|
+
> **Tip:** Global install (`npm install -g`) stores traces persistently at `~/.iris/iris.db`. With `npx`, traces persist in the same location, but startup is slower due to package resolution.
|
|
103
|
+
|
|
70
104
|
## MCP Tools
|
|
71
105
|
|
|
72
106
|
Iris registers three tools that any MCP-compatible agent can invoke:
|
|
@@ -143,6 +177,68 @@ iris-mcp --transport http --port 3000 --api-key "$(openssl rand -hex 32)" --dash
|
|
|
143
177
|
|
|
144
178
|
</details>
|
|
145
179
|
|
|
180
|
+
<details>
|
|
181
|
+
<summary><strong>Troubleshooting</strong></summary>
|
|
182
|
+
|
|
183
|
+
### Iris won't start / `ERR_MODULE_NOT_FOUND`
|
|
184
|
+
|
|
185
|
+
You may have a cached older version. Clear the npx cache and retry:
|
|
186
|
+
|
|
187
|
+
```bash
|
|
188
|
+
npx --yes @iris-eval/mcp-server@latest
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
Or install globally to avoid cache issues entirely:
|
|
192
|
+
|
|
193
|
+
```bash
|
|
194
|
+
npm install -g @iris-eval/mcp-server@latest
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### Tools not showing up in Claude Code
|
|
198
|
+
|
|
199
|
+
MCP tools only load at session start. After adding iris-eval, restart the session with `/clear` or relaunch the terminal.
|
|
200
|
+
|
|
201
|
+
### Version check
|
|
202
|
+
|
|
203
|
+
Verify which version is running:
|
|
204
|
+
|
|
205
|
+
```bash
|
|
206
|
+
npx @iris-eval/mcp-server --help
|
|
207
|
+
# Shows "Iris MCP-Native Agent Eval & Observability Server vX.Y.Z"
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
### Updating
|
|
211
|
+
|
|
212
|
+
```bash
|
|
213
|
+
# If using npx (clears cache and fetches latest)
|
|
214
|
+
npx --yes @iris-eval/mcp-server@latest
|
|
215
|
+
|
|
216
|
+
# If installed globally
|
|
217
|
+
npm update -g @iris-eval/mcp-server
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Node.js version
|
|
221
|
+
|
|
222
|
+
Iris requires Node.js 20 or later. Node 18 reached EOL in April 2025 and is not supported.
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
node --version # Must be v20.x or v22.x+
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
### Windows: `cmd /c` not needed
|
|
229
|
+
|
|
230
|
+
Claude Code's `/doctor` may suggest wrapping npx with `cmd /c`. This is not needed and causes path parsing issues. Use `npx` directly:
|
|
231
|
+
|
|
232
|
+
```bash
|
|
233
|
+
# Correct
|
|
234
|
+
claude mcp add --transport stdio iris-eval -- npx @iris-eval/mcp-server
|
|
235
|
+
|
|
236
|
+
# Wrong (causes /c to be parsed as a path)
|
|
237
|
+
claude mcp add --transport stdio iris-eval -- cmd /c "npx @iris-eval/mcp-server"
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
</details>
|
|
241
|
+
|
|
146
242
|
---
|
|
147
243
|
|
|
148
244
|
If Iris is useful to you, [consider starring the repo](https://github.com/iris-eval/mcp-server) — it helps others find it.
|
package/dist/config/defaults.js
CHANGED
|
@@ -3,7 +3,7 @@ import { readFileSync } from 'node:fs';
|
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
4
|
const irisHome = join(homedir(), '.iris');
|
|
5
5
|
// Read version from package.json to avoid hardcoded drift
|
|
6
|
-
let pkgVersion = '0.1.
|
|
6
|
+
let pkgVersion = '0.1.8';
|
|
7
7
|
try {
|
|
8
8
|
const pkg = JSON.parse(readFileSync(new URL('../../package.json', import.meta.url), 'utf8'));
|
|
9
9
|
pkgVersion = pkg.version;
|