norc-mcp 0.1.0 → 0.2.2
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 +42 -2
- package/package.json +8 -7
package/README.md
CHANGED
|
@@ -5,15 +5,55 @@ MCP server for connecting AI platforms (Claude, ChatGPT, etc.) to your [norc](ht
|
|
|
5
5
|
## Setup
|
|
6
6
|
|
|
7
7
|
1. Generate a norc API key: vault → Settings → API Keys → Generate key.
|
|
8
|
-
2.
|
|
8
|
+
2. Install it for your client (below). Hosted option: point a client that supports remote servers at `https://mcp.norc.app/mcp` with your key as the Bearer token (exact field depends on the client).
|
|
9
|
+
|
|
10
|
+
## Install
|
|
11
|
+
|
|
12
|
+
### Claude Desktop
|
|
13
|
+
|
|
14
|
+
1. Install [Node.js](https://nodejs.org) 20 or newer (Claude Desktop runs the server with `npx`).
|
|
15
|
+
2. Open Claude Desktop → Settings → Developer → Edit Config. This opens `claude_desktop_config.json`:
|
|
16
|
+
- macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
17
|
+
- Windows: `%APPDATA%\Claude\claude_desktop_config.json` (Microsoft Store install: `%LOCALAPPDATA%\Packages\Claude_pzs8sxrjxfjjc\LocalCache\Roaming\Claude\claude_desktop_config.json`)
|
|
18
|
+
3. Add norc under `mcpServers` (keep any servers already there) and use your own key (vault → Settings → API Keys):
|
|
19
|
+
```json
|
|
20
|
+
{
|
|
21
|
+
"mcpServers": {
|
|
22
|
+
"norc": {
|
|
23
|
+
"command": "npx",
|
|
24
|
+
"args": ["-y", "norc-mcp"],
|
|
25
|
+
"env": { "NORC_API_KEY": "norc_sk_..." }
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
On Windows, `npx` is a `.cmd` script and may fail to launch directly; use `cmd` instead:
|
|
31
|
+
```json
|
|
32
|
+
"command": "cmd",
|
|
33
|
+
"args": ["/c", "npx", "-y", "norc-mcp"]
|
|
34
|
+
```
|
|
35
|
+
4. Quit Claude Desktop completely and reopen it. Closing the window is not enough. norc's tools then appear in the tools menu.
|
|
36
|
+
|
|
37
|
+
### Claude Code
|
|
38
|
+
|
|
39
|
+
Install the [norc plugin](https://github.com/norcapp/norc-claude-plugin), which adds slash commands and starts this server for you, or add it directly:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
claude mcp add norc --env NORC_API_KEY=norc_sk_... -- npx -y norc-mcp
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Other local MCP clients (Cursor, etc.)
|
|
46
|
+
|
|
47
|
+
Use the same `command` / `args` / `env` block as the Claude Desktop config above. Without `NORC_API_KEY` (or `--stdio`) the server starts in HTTP mode instead, and a missing or malformed key in stdio mode exits with an error.
|
|
9
48
|
|
|
10
49
|
## Tools
|
|
11
50
|
|
|
12
51
|
- `list_jobs`, `create_job`, `update_job`, `delete_job`
|
|
13
52
|
- `list_machines`, `rename_machine`, `delete_machine`
|
|
14
53
|
- `list_runs`
|
|
54
|
+
- `sync_jobs` — declarative sync of your full job set (like `norc gitops`). Dry run by default; jobs not listed are deleted when `apply` is true. Needs the gitops sync feature enabled on your account.
|
|
15
55
|
|
|
16
|
-
## Self-hosting
|
|
56
|
+
## Self-hosting (HTTP)
|
|
17
57
|
|
|
18
58
|
This server is a thin, stateless client — it holds no secrets and no database access of its own. It only forwards your API key to `vault.norc.app` (or `$NORC_VAULT_URL`). Run your own instance if you'd like:
|
|
19
59
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "norc-mcp",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "MCP server for connecting AI platforms to your norc account — manage cron jobs, machines, and run history.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -31,13 +31,14 @@
|
|
|
31
31
|
"test": "vitest run"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
35
|
-
"zod": "^4.
|
|
34
|
+
"@modelcontextprotocol/sdk": "^1.32.1",
|
|
35
|
+
"zod": "^4.6.7"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"
|
|
39
|
-
"tsx": "^4.
|
|
40
|
-
"
|
|
41
|
-
"
|
|
38
|
+
"@types/node": "^22.20.5",
|
|
39
|
+
"tsx": "^4.23.15",
|
|
40
|
+
"typescript": "^5.9.3",
|
|
41
|
+
"vite": "^8.3.5",
|
|
42
|
+
"vitest": "^5.0.5"
|
|
42
43
|
}
|
|
43
44
|
}
|