remote-access-mcp 3.0.1 → 3.0.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/AGENTS.md CHANGED
@@ -8,7 +8,7 @@ Windsurf, etc.) working in this repository. Read it fully before touching code.
8
8
  | File | What it covers |
9
9
  |---|---|
10
10
  | [`docs/ai/architecture.md`](docs/ai/architecture.md) | Module map, request lifecycle, data flow |
11
- | [`docs/ai/tools-and-cli.md`](docs/ai/tools-and-cli.md) | Every tool (44) and CLI command, with schemas and policy gates |
11
+ | [`docs/ai/tools-and-cli.md`](docs/ai/tools-and-cli.md) | Every built-in tool (45) and CLI command, with schemas and policy gates |
12
12
  | [`docs/ai/security-model.md`](docs/ai/security-model.md) | Auth, policy engine, guards, audit chain — read before security-adjacent changes |
13
13
  | [`docs/ai/transport-compatibility.md`](docs/ai/transport-compatibility.md) | The three MCP dialects we serve and why (hard-won lessons) |
14
14
  | [`docs/ai/decisions.md`](docs/ai/decisions.md) | Architecture Decision Records, including the fleet removal |
@@ -52,12 +52,13 @@ the machine: fs, shell, systemd, journalctl, apt/npm, git, sqlite …
52
52
 
53
53
  1. **TypeScript strict, ESM-only, zero `require()`** in `src/` — a `require()`
54
54
  slipped past vitest once and crash-looped production for a day (ADR-004).
55
- 2. **No native dependencies** in the runtime path. better-sqlite3 caused
56
- SIGABRT in the stateless loop; the audit log is plain JSONL now (ADR-005).
55
+ 2. **Keep native dependencies isolated.** The audit log is plain JSONL and
56
+ does not depend on native bindings (ADR-005). The optional `sqlite_*` tools
57
+ use `better-sqlite3` only when SQLite functionality is invoked.
57
58
  3. **Tests must be hermetic** — build gateway state explicitly; never read the
58
59
  host's real config. A test suite that leaks production config will fail
59
60
  whenever the service is running (ADR-006).
60
- 4. **Run `npm test` (107 tests) before any publish.** CI runs Node 18/20/22.
61
+ 4. **Run `npm test` before any publish.** CI runs Node 18/20/22; the exact test count may change as regression coverage grows.
61
62
  5. **Schema parameters must never be conditionally omitted** — the SDK
62
63
  silently drops client args that aren't in the schema, which once turned a
63
64
  "remote" command into a local execution (ADR-008).
package/CHANGELOG.md ADDED
@@ -0,0 +1,25 @@
1
+ # Changelog
2
+
3
+ All notable changes to Remote Access MCP are documented here.
4
+
5
+ ## [3.0.2] - 2026-09-01
6
+
7
+ - Standardized the core runtime requirement at Node.js 18+.
8
+ - Moved optional MCP integrations out of the mandatory dependency set so the core gateway can install on supported Node.js 18 environments.
9
+ - Hardened the dedicated Codebase Memory runtime isolation used by Remote Access MCP.
10
+ - Kept Codebase Memory state separate from other services on the same machine.
11
+ - Added regression coverage for per-instance runtime, cache, data, and workspace paths.
12
+
13
+ ## [3.0.1]
14
+
15
+ - Initial 3.0.x patch release before the documentation, packaging, and isolation hardening in 3.0.2.
16
+
17
+ ## [3.0.0] - 2026-09-01
18
+
19
+ - Removed fleet / multi-server orchestration to keep the gateway focused on one machine per instance.
20
+ - Retained webhooks and configuration backup/restore as local gateway capabilities.
21
+ - Improved transport compatibility and security boundaries around local operations.
22
+
23
+ ## [2.x]
24
+
25
+ See the repository history for changes from the 2.x development line.
@@ -0,0 +1,35 @@
1
+ # Contributing
2
+
3
+ Thanks for contributing to Remote Access MCP.
4
+
5
+ ## Before opening a pull request
6
+
7
+ ```bash
8
+ npm ci
9
+ npm run lint
10
+ npm run build
11
+ npm test
12
+ ```
13
+
14
+ Changes that affect authentication, filesystem policy, shell execution, SSRF protection, audit logging, transport handling, or Codebase Memory isolation should include regression tests.
15
+
16
+ ## Development rules
17
+
18
+ - TypeScript is strict and ESM-only.
19
+ - Keep changes focused and small.
20
+ - Do not weaken security checks to make a test or integration pass.
21
+ - Tests must not depend on a developer's real Remote Access MCP configuration.
22
+ - Never commit tokens, credentials, generated configuration backups, or runtime state.
23
+ - Update documentation when a public CLI command, environment variable, security boundary, or supported runtime changes.
24
+
25
+ ## Commit messages
26
+
27
+ Use concise conventional commit-style messages, for example:
28
+
29
+ - `fix: isolate codebase memory runtime`
30
+ - `docs: update node compatibility`
31
+ - `test: cover token policy regression`
32
+
33
+ ## Pull requests
34
+
35
+ Describe what changed, why it changed, how it was tested, and any security or compatibility implications.
package/README.fa.md CHANGED
@@ -4,7 +4,7 @@
4
4
  [![CI](https://github.com/AmirAliManzar/remote-access-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/AmirAliManzar/remote-access-mcp/actions/workflows/ci.yml)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
6
 
7
- هر سرور لینوکسی رو با MCP ([Model Context Protocol](https://modelcontextprotocol.io)) به ماشینی تبدیل کن که هوش مصنوعی بهش وصل بشه.
7
+ هر ماشینی رو با MCP ([Model Context Protocol](https://modelcontextprotocol.io)) به یک نقطهٔ امن و قابل‌کنترل برای عامل‌های هوش مصنوعی تبدیل کن.
8
8
 
9
9
  ChatGPT (حالت Developer)، Claude، Grok و هر کلاینت MCP-دیگه از طریق HTTPS وصل میشن و به‌صورت امن سرورت رو کنترل می‌کنن — همه پشت دسترسی‌های per-token.
10
10
 
@@ -17,6 +17,8 @@ ramcp init
17
17
 
18
18
  ## نصب
19
19
 
20
+ هستهٔ پروژه با Node.js 18 و بالاتر اجرا می‌شود و روی لینوکس، macOS و ویندوز طراحی شده است. بعضی یکپارچه‌سازی‌های اختیاری ممکن است به نسخهٔ بالاتری از Node.js نیاز داشته باشند؛ در این حالت هسته بدون آن یکپارچه‌سازی همچنان اجرا می‌شود.
21
+
20
22
  ```bash
21
23
  curl -fsSL https://raw.githubusercontent.com/AmirAliManzar/remote-access-mcp/main/install.sh | bash
22
24
  ramcp init
@@ -58,9 +60,9 @@ ramcp token add --name deploy --paths /srv/app --scopes filesystem,git,shell --s
58
60
 
59
61
  هر توکن خودش داره: مسیرهای مجاز/غیرمجاز، گروه ابزارها (scopes)، فلگ شل، حالت فقط-خواندنی، محدودیت نرخ، و تاریخ انقضا.
60
62
 
61
- ## ۳۸ ابزار در ۱۵ گروه
63
+ ## ۴۵ ابزار داخلی در ۱۶ گروه
62
64
 
63
- فایل‌سیستم (۷)، شل (۳)، سیستم (۳)، HTTP با محافظ SSRF (۳)، گیت با whitelist فعل‌ها (۱)، SQLite تک-دستوره (۲)، لاگ/journalctl (۳)، سرویس‌های systemd (۲)، پکیج‌ها apt/npm (۳)، زمان‌بند (۳)، اسکن امنیتی (۲)، تحلیل پروژه (۲)، پلنینگ + اسنپ‌شات/rollback (۴)، مدیریت پالیسی (۴).
65
+ فایل‌سیستم (۷)، شل (۳)، سیستم (۳)، HTTP با محافظ SSRF (۳)، گیت با whitelist فعل‌ها (۱)، SQLite تک-دستوره (۲)، لاگ/journalctl (۳)، سرویس‌ها (۲)، پکیج‌ها (۳)، زمان‌بند (۳)، اسکن امنیتی (۲)، تحلیل پروژه (۲)، پلنینگ + اسنپ‌شات/rollback (۴)، مدیریت پالیسی (۴)، عملیات (۲). یکپارچه‌سازی‌های MCP اختیاری می‌توانند ابزارهای نام‌گذاری‌شدهٔ بیشتری اضافه کنند.
64
66
 
65
67
  ## Webhook و بکاپ
66
68
 
@@ -73,6 +75,7 @@ ramcp config import backup.json --merge # ادغام با حفظ هویت مح
73
75
  ## مدل امنیتی
74
76
 
75
77
  - **فقط loopback** — سرور روی `127.0.0.1` گوش میده
78
+ - **هشدار بکاپ** — خروجی `ramcp config export` شامل توکن‌های فعال است؛ آن را هرگز در Git، issue tracker یا جای عمومی قرار نده و در صورت افشا توکن‌ها را بچرخان.
76
79
  - **توکن timing-safe** روی هر درخواست — در لاگ‌ها فقط fingerprint ذخیره میشه
77
80
  - **Sandbox per-token** — resolve سیم‌لینک و `..` قبل از چک؛ deny همیشه برنده‌ست
78
81
  - **محدوده‌های SSRF بسته** — AI نمیتونه به metadata کلود یا سرویس‌های داخلی برسه
@@ -91,14 +94,14 @@ MIT — [LICENSE](LICENSE)
91
94
 
92
95
  ---
93
96
 
94
- 📚 [English README](README.md) | [نقشه راه](ROADMAP.md)
97
+ 📚 [English README](README.md) | [نقشه راه](ROADMAP.md) | [سیاست امنیتی](SECURITY.md) | [تغییرات](CHANGELOG.md) | [مشارکت](CONTRIBUTING.md)
95
98
 
96
99
  ## یکپارچه‌سازی‌های MCP اختیاری
97
100
 
98
- در نسخه ۲.۳، یک لایهٔ یکپارچه‌سازی برای ابزارهای توسعه‌دهنده اضافه شده است:
101
+ Remote Access MCP می‌تواند برخی MCPهای مرتبط با توسعه را به‌صورت ابزارهای نام‌گذاری‌شده در اختیار عامل قرار دهد:
99
102
 
100
103
  - **Context7** — به‌صورت ابزارهای نام‌گذاری‌شده مانند `context7_resolve-library-id` و `context7_get-library-docs` داخل دروازه در دسترس قرار می‌گیرد.
101
- - **Codebase Memory** — در صورت تنظیم `RAMCP_ENABLE_CODEBASE_MEMORY=1` ابزارهای `codebase_memory_*` را ارائه می‌کند. این یکپارچه‌سازی عمداً اختیاری است، چون Codebase Memory از daemon و cache بومیِ سطح حساب استفاده می‌کند و نباید بدون هماهنگی با نشست‌های دیگر آن multiplex شود. با `RAMCP_CODEBASE_ROOT` ریشهٔ مخزن کدی را که این نمونه باید در اختیار Codebase Memory قرار دهد مشخص کنید؛ `index_repository` نیز در خود Remote Access MCP به همین ریشه محدود شده است.
104
+ - **Codebase Memory** — در صورت موجود بودن وابستگی اختیاری، ابزارهای `codebase_memory_*` را ارائه می‌کند؛ با `RAMCP_ENABLE_CODEBASE_MEMORY=0` می‌توان آن را غیرفعال کرد. هر نمونهٔ Remote Access MCP یک runtime، home، cache، data، runtime directory و هویت سرویس اختصاصی برای Codebase Memory دارد و وضعیت نمونه‌های دیگر را استفاده نمی‌کند. با `RAMCP_CODEBASE_ROOT` ریشهٔ مخزن کدی را که این نمونه باید در اختیار Codebase Memory قرار دهد مشخص کنید؛ `index_repository` نیز به همین ریشه محدود شده است.
102
105
  - **Context Mode** — فقط به‌عنوان وابستگی اختیاری محلی نصب می‌شود و به‌عنوان سرویس میزبانی‌شده از طریق Remote Access MCP ارائه نمی‌شود، چون مجوز Elastic License 2.0 آن ارائهٔ نرم‌افزار به‌عنوان سرویس میزبانی‌شده یا مدیریت‌شده را محدود می‌کند.
103
106
 
104
107
  اگر یک یکپارچه‌سازی اختیاری در زمان راه‌اندازی قابل اجرا نباشد، هستهٔ Remote Access MCP همچنان در دسترس می‌ماند و آن یکپارچه‌سازی با پیام تشخیصی کنار گذاشته می‌شود.
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
  [![CI](https://github.com/AmirAliManzar/remote-access-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/AmirAliManzar/remote-access-mcp/actions/workflows/ci.yml)
5
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
6
6
 
7
- Turn any Linux server into an AI-agent-accessible machine via the [Model Context Protocol](https://modelcontextprotocol.io) (MCP).
7
+ Turn any machine into a secure AI-agent-accessible endpoint via the [Model Context Protocol](https://modelcontextprotocol.io) (MCP).
8
8
 
9
9
  ChatGPT (Developer Mode), Claude, Grok, and any MCP-compatible client connect over HTTPS and securely control your server: read/write files, run shell commands, manage services, query databases, audit everything — all behind per-token permissions.
10
10
 
@@ -23,7 +23,9 @@ The server binds to `127.0.0.1` only. You put it behind nginx (with Cloudflare o
23
23
 
24
24
  ## Install
25
25
 
26
- ### Any machine with Node 18+ — Linux, macOS, or Windows
26
+ ### Any machine with Node.js 18+ — Linux, macOS, or Windows
27
+
28
+ The core gateway supports Node.js 18 and newer. Optional MCP integrations may have higher runtime requirements; on Node.js 18 they are skipped when their packages cannot run, while the core gateway remains available.
27
29
 
28
30
  ```bash
29
31
  npm install -g remote-access-mcp
@@ -88,6 +90,13 @@ launchd on macOS, systemd on Linux for the autostart service.
88
90
  | `ramcp service install` | systemd unit (+ nginx vhost with `--domain`). |
89
91
  | `ramcp service logs -f` | Tail gateway logs. |
90
92
  | `ramcp schedule list` | List scheduled tasks. |
93
+ | `ramcp webhook add --url URL --events EVENTS` | Add a webhook subscription. |
94
+ | `ramcp webhook list` | List configured webhooks. |
95
+ | `ramcp webhook on URL` / `off URL` | Enable or disable a webhook. |
96
+ | `ramcp webhook remove URL` | Remove a webhook. |
97
+ | `ramcp config export --out FILE` | Export configuration and credentials for backup. |
98
+ | `ramcp config import FILE [--merge]` | Restore or merge a configuration backup. |
99
+ | `ramcp tunnel` | Start a temporary public tunnel. |
91
100
 
92
101
  ### `token add` options
93
102
 
@@ -122,7 +131,9 @@ Get it ready-made: `ramcp url`
122
131
 
123
132
  Endpoint `https://your-domain.com/mcp` + header `Authorization: Bearer <token>`
124
133
 
125
- ## Tools (44 across 17 suites)
134
+ ## Tools (45 built-in tools across 16 suites)
135
+
136
+ The built-in tool count is stable. Optional MCP integrations can add additional namespaced tools when their upstream packages are available.
126
137
 
127
138
  **Filesystem** (7) `list_directory` `read_file` (offset/limit) `write_file` `edit_file` `delete_path` `search_code` `file_info`
128
139
 
@@ -152,6 +163,8 @@ Endpoint `https://your-domain.com/mcp` + header `Authorization: Bearer <token>`
152
163
 
153
164
  **Policy** (4) `list_allowed_paths` `allow_path` `deny_path` `shell_enabled` — each token manages only its own sandbox
154
165
 
166
+ **Operations** (2) `environment_inspect` `nginx_inspect`
167
+
155
168
  ## Webhooks
156
169
 
157
170
  Get notified when tools run (or fail) — incident bots, Slack relays, anything that accepts a POST:
@@ -171,6 +184,8 @@ ramcp config import backup.json # replace
171
184
  ramcp config import backup.json --merge # union: keeps local identity, adds new tokens/hosts/hooks
172
185
  ```
173
186
 
187
+ > ⚠️ **Security warning:** configuration exports contain active authentication tokens. Treat backup files as secrets: never commit them to Git, upload them to issue trackers, or share them publicly. Store them with restricted permissions and rotate tokens if a backup is exposed.
188
+
174
189
  ## Security model
175
190
 
176
191
  - **Loopback only.** The gateway listens on `127.0.0.1` — unreachable directly from the network.
@@ -204,7 +219,7 @@ cd remote-access-mcp
204
219
  npm ci && npm run build && npm test
205
220
  ```
206
221
 
207
- 107 tests: policy engine, auth matrix, transport compatibility (stateful, stateless, legacy SSE), cross-platform layer, tunnel wiring, webhooks, config backup, CLI lifecycle, crash regressions. CI runs on Node 18/20/22.
222
+ The test suite covers policy enforcement, authentication, transport compatibility (stateful, stateless, legacy SSE), cross-platform behavior, tunnel wiring, webhooks, configuration backup, CLI lifecycle, and crash regressions. CI runs on Node.js 18, 20, and 22.
208
223
 
209
224
  ## License
210
225
 
@@ -212,14 +227,14 @@ MIT — see [LICENSE](LICENSE).
212
227
 
213
228
  ---
214
229
 
215
- 📚 [README فارسی](README.fa.md) | [Roadmap](ROADMAP.md)
230
+ 📚 [README فارسی](README.fa.md) | [Roadmap](ROADMAP.md) | [Security Policy](SECURITY.md) | [Changelog](CHANGELOG.md) | [Contributing](CONTRIBUTING.md)
216
231
 
217
232
  ## Optional MCP integrations
218
233
 
219
- Remote Access MCP 2.3 adds a small integration layer for developer-context MCPs:
234
+ Remote Access MCP can expose selected developer-context MCPs as namespaced tools:
220
235
 
221
236
  - **Context7** — proxied into the gateway as namespaced tools such as `context7_resolve-library-id` and `context7_query-docs`. The MIT-licensed `@upstash/context7-mcp` package is bundled as a normal dependency. A `CONTEXT7_API_KEY` environment variable can be supplied for higher limits/private repositories.
222
- - **Codebase Memory** — the MIT-licensed `codebase-memory-mcp` package is integrated as namespaced `codebase_memory_*` tools when `RAMCP_ENABLE_CODEBASE_MEMORY=1` is set. It is opt-in because Codebase Memory uses a per-account native daemon/cache and should not be multiplexed blindly with unrelated Codebase Memory sessions. Set `RAMCP_CODEBASE_ROOT` to the repository that this gateway instance should expose; `index_repository` is additionally restricted by Remote Access MCP to that root.
237
+ - **Codebase Memory** — the MIT-licensed `codebase-memory-mcp` package is integrated as namespaced `codebase_memory_*` tools when its optional package is available. Set `RAMCP_ENABLE_CODEBASE_MEMORY=0` to disable it. Each Remote Access MCP instance uses a dedicated Codebase Memory runtime, home, cache, data directory, runtime directory, and service identity; it never reuses another service's Codebase Memory state. Set `RAMCP_CODEBASE_ROOT` to the repository this gateway instance should expose; `index_repository` is additionally restricted to that root.
223
238
  - **Context Mode** — shipped as an optional local dependency only. It is a client/plugin-side context optimization layer and is **not proxied as a hosted service** because its Elastic License 2.0 prohibits providing the software as a hosted or managed service.
224
239
 
225
240
  Integrations are loaded before the MCP transport connects, so the initial `tools/list` includes them when the upstream MCP is available. If an optional integration cannot start, the core Remote Access MCP remains available and the integration is omitted with a diagnostic message.
package/SECURITY.md ADDED
@@ -0,0 +1,41 @@
1
+ # Security Policy
2
+
3
+ Remote Access MCP can execute commands, modify files, manage services, and inspect a machine on behalf of an AI agent. Security issues are therefore treated as high priority.
4
+
5
+ ## Reporting a vulnerability
6
+
7
+ Please do **not** open a public GitHub issue for an undisclosed security vulnerability.
8
+
9
+ Report security issues privately to the repository owner through GitHub's private vulnerability reporting feature when available. Include:
10
+
11
+ - affected version or commit;
12
+ - operating system and Node.js version;
13
+ - clear reproduction steps or a minimal proof of concept;
14
+ - impact and required permissions/token scopes;
15
+ - any suggested mitigation.
16
+
17
+ Do not include real passwords, API keys, private keys, production tokens, or other secrets in a report.
18
+
19
+ ## Scope
20
+
21
+ Security reports are especially valuable for:
22
+
23
+ - authentication or token bypasses;
24
+ - filesystem sandbox escapes, including symlink/path traversal issues;
25
+ - shell or command injection;
26
+ - SSRF bypasses;
27
+ - privilege escalation;
28
+ - audit-log tampering or credential leakage;
29
+ - cross-instance Codebase Memory isolation failures;
30
+ - unsafe transport or webhook behavior;
31
+ - release or package supply-chain issues.
32
+
33
+ ## Supported versions
34
+
35
+ The `main` branch and the latest published release are the primary supported versions. Older releases may not receive security fixes.
36
+
37
+ ## Security model
38
+
39
+ See [`docs/ai/security-model.md`](docs/ai/security-model.md) for the detailed threat model, authentication, policy enforcement, SSRF protections, audit chain, and protected operations.
40
+
41
+ For production deployments, use a TLS-terminating reverse proxy, least-privilege tokens, read-only mode where possible, and rotate tokens immediately if a credential backup or token is exposed.
@@ -9,6 +9,22 @@ interface IntegrationClient {
9
9
  tools: Tool[];
10
10
  }
11
11
  declare function zodFromJsonSchema(schema: any): z.ZodTypeAny;
12
+ export interface CodebaseMemoryRuntimePaths {
13
+ root: string;
14
+ home: string;
15
+ cache: string;
16
+ data: string;
17
+ runtime: string;
18
+ binDir: string;
19
+ bin: string;
20
+ workspace: string;
21
+ }
22
+ /**
23
+ * Resolve the complete private filesystem layout for this gateway's
24
+ * Codebase Memory instance. These paths intentionally never fall back to the
25
+ * service user's normal HOME/XDG directories.
26
+ */
27
+ export declare function resolveCodebaseMemoryRuntimePaths(env?: NodeJS.ProcessEnv): CodebaseMemoryRuntimePaths;
12
28
  declare class IntegrationManager {
13
29
  private readonly clients;
14
30
  get(name: IntegrationName): Promise<IntegrationClient>;
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../src/core/integrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,iBAAiB,CAAC;AAE7D,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,IAAI,EAAE,CAAC;CACjB;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,UAAU,CAsEpD;AAMD,cAAM,kBAAkB;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0D;IAE5E,GAAG,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAS9C,KAAK;IAkFnB,OAAO,CAAC,aAAa;IAef,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAiB1F,IAAI,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;CAGrD;AAED,eAAO,MAAM,YAAY,oBAA2B,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"integrations.d.ts","sourceRoot":"","sources":["../../src/core/integrations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAI/D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,iBAAiB,CAAC;AAE7D,UAAU,iBAAiB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,IAAI,EAAE,CAAC;CACjB;AAED,iBAAS,iBAAiB,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,UAAU,CAsEpD;AAMD,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,0BAA0B,CAYlH;AAED,cAAM,kBAAkB;IACpB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0D;IAE5E,GAAG,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,iBAAiB,CAAC;YAS9C,KAAK;IA6EnB,OAAO,CAAC,aAAa;IAef,IAAI,CAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAiB1F,IAAI,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;CAGrD;AAED,eAAO,MAAM,YAAY,oBAA2B,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -82,6 +82,24 @@ function zodFromJsonSchema(schema) {
82
82
  function packageScript(packageName, relativeEntry) {
83
83
  return new URL(`../../node_modules/${packageName}/${relativeEntry}`, import.meta.url).pathname;
84
84
  }
85
+ /**
86
+ * Resolve the complete private filesystem layout for this gateway's
87
+ * Codebase Memory instance. These paths intentionally never fall back to the
88
+ * service user's normal HOME/XDG directories.
89
+ */
90
+ export function resolveCodebaseMemoryRuntimePaths(env = process.env) {
91
+ const root = env.RAMCP_CODEBASE_RUNTIME || '/var/lib/remote-access-mcp/codebase-memory';
92
+ return {
93
+ root,
94
+ home: env.RAMCP_CODEBASE_HOME || path.join(root, 'home'),
95
+ cache: env.RAMCP_CODEBASE_CACHE || path.join(root, 'cache'),
96
+ data: env.RAMCP_CODEBASE_DATA || path.join(root, 'data'),
97
+ runtime: path.join(root, 'runtime'),
98
+ binDir: path.join(root, 'bin'),
99
+ bin: path.join(root, 'bin', 'codebase-memory-mcp'),
100
+ workspace: env.RAMCP_CODEBASE_WORKSPACE || path.join(root, 'workspace'),
101
+ };
102
+ }
85
103
  class IntegrationManager {
86
104
  clients = new Map();
87
105
  async get(name) {
@@ -104,70 +122,65 @@ class IntegrationManager {
104
122
  // Codebase Memory gets a private runtime owned by Remote Access MCP.
105
123
  // Never inherit the service user's normal HOME/cache/config: other
106
124
  // agents on the host may have their own Codebase Memory instances.
107
- const runtimeRoot = process.env.RAMCP_CODEBASE_RUNTIME || '/var/lib/remote-access-mcp/codebase-memory';
108
- const runtimeHome = process.env.RAMCP_CODEBASE_HOME || path.join(runtimeRoot, 'home');
109
- const runtimeCache = process.env.RAMCP_CODEBASE_CACHE || path.join(runtimeRoot, 'cache');
110
- const runtimeData = process.env.RAMCP_CODEBASE_DATA || path.join(runtimeRoot, 'data');
111
- const runtimeBinDir = path.join(runtimeRoot, 'bin');
112
- const runtimeBin = path.join(runtimeBinDir, 'codebase-memory-mcp');
125
+ const paths = resolveCodebaseMemoryRuntimePaths(process.env);
113
126
  const sourceBin = packageScript('codebase-memory-mcp', 'bin/codebase-memory-mcp');
114
- fs.mkdirSync(runtimeHome, { recursive: true, mode: 0o750 });
115
- fs.mkdirSync(runtimeCache, { recursive: true, mode: 0o750 });
116
- fs.mkdirSync(runtimeData, { recursive: true, mode: 0o750 });
117
- fs.mkdirSync(runtimeBinDir, { recursive: true, mode: 0o750 });
127
+ fs.mkdirSync(paths.home, { recursive: true, mode: 0o750 });
128
+ fs.mkdirSync(paths.cache, { recursive: true, mode: 0o750 });
129
+ fs.mkdirSync(paths.data, { recursive: true, mode: 0o750 });
130
+ fs.mkdirSync(paths.binDir, { recursive: true, mode: 0o750 });
118
131
  const sourceStat = fs.statSync(sourceBin);
119
132
  let needsRefresh = true;
120
133
  try {
121
- const runtimeStat = fs.statSync(runtimeBin);
134
+ const runtimeStat = fs.statSync(paths.bin);
122
135
  needsRefresh = runtimeStat.size !== sourceStat.size || runtimeStat.mtimeMs !== sourceStat.mtimeMs;
123
136
  }
124
137
  catch {
125
138
  needsRefresh = true;
126
139
  }
127
140
  if (needsRefresh) {
128
- const staged = `${runtimeBin}.new`;
141
+ const staged = `${paths.bin}.new`;
129
142
  fs.copyFileSync(sourceBin, staged);
130
143
  fs.chmodSync(staged, 0o750);
131
- fs.renameSync(staged, runtimeBin);
144
+ fs.renameSync(staged, paths.bin);
132
145
  }
133
- fs.chmodSync(runtimeBin, 0o750);
146
+ fs.chmodSync(paths.bin, 0o750);
134
147
  try {
135
- fs.chownSync(runtimeHome, 995, 987);
136
- fs.chownSync(runtimeCache, 995, 987);
137
- fs.chownSync(runtimeData, 995, 987);
138
- fs.chownSync(runtimeBinDir, 995, 987);
139
- fs.chownSync(runtimeBin, 995, 987);
148
+ fs.chownSync(paths.home, 995, 987);
149
+ fs.chownSync(paths.cache, 995, 987);
150
+ fs.chownSync(paths.data, 995, 987);
151
+ fs.chownSync(paths.binDir, 995, 987);
152
+ fs.chownSync(paths.bin, 995, 987);
140
153
  }
141
154
  catch {
142
155
  // Non-root local development can still use the isolated runtime.
143
156
  }
144
157
  const isolatedEnv = {
145
158
  ...env,
146
- HOME: runtimeHome,
147
- XDG_CACHE_HOME: runtimeCache,
148
- XDG_DATA_HOME: runtimeData,
149
- CODEBASE_MEMORY_HOME: runtimeHome,
150
- CBM_CACHE_DIR: runtimeCache,
151
- CBM_RUNTIME_DIR: path.join(runtimeRoot, 'runtime'),
152
- CBM_ALLOWED_ROOT: process.env.RAMCP_CODEBASE_WORKSPACE || path.join(runtimeRoot, 'workspace'),
159
+ HOME: paths.home,
160
+ XDG_CACHE_HOME: paths.cache,
161
+ XDG_DATA_HOME: paths.data,
162
+ CODEBASE_MEMORY_HOME: paths.home,
163
+ CBM_CACHE_DIR: paths.cache,
164
+ CBM_RUNTIME_DIR: paths.runtime,
165
+ CBM_ALLOWED_ROOT: paths.workspace,
153
166
  CBM_MEM_BUDGET_MB: process.env.RAMCP_CODEBASE_MEM_BUDGET_MB || '512',
154
167
  CBM_WORKERS: process.env.RAMCP_CODEBASE_WORKERS || '1',
155
168
  CBM_LOG_LEVEL: process.env.RAMCP_CODEBASE_LOG_LEVEL || 'warn',
156
169
  };
157
- fs.mkdirSync(isolatedEnv.CBM_RUNTIME_DIR, { recursive: true, mode: 0o750 });
158
- fs.mkdirSync(isolatedEnv.CBM_ALLOWED_ROOT, { recursive: true, mode: 0o750 });
170
+ fs.mkdirSync(paths.runtime, { recursive: true, mode: 0o750 });
171
+ fs.mkdirSync(paths.workspace, { recursive: true, mode: 0o750 });
159
172
  try {
160
- fs.chownSync(isolatedEnv.CBM_ALLOWED_ROOT, 995, 987);
173
+ fs.chownSync(paths.workspace, 995, 987);
161
174
  }
162
175
  catch { /* non-root */ }
163
176
  try {
164
- fs.chownSync(isolatedEnv.CBM_RUNTIME_DIR, 995, 987);
177
+ fs.chownSync(paths.runtime, 995, 987);
165
178
  }
166
179
  catch { /* non-root */ }
167
180
  return {
168
181
  command: '/usr/sbin/runuser',
169
- args: ['-u', 'remote-access-mcp', '--', runtimeBin],
170
- cwd: isolatedEnv.CBM_ALLOWED_ROOT,
182
+ args: ['-u', 'remote-access-mcp', '--', paths.bin],
183
+ cwd: paths.workspace,
171
184
  env: isolatedEnv,
172
185
  };
173
186
  })();
@@ -1 +1 @@
1
- {"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../src/core/integrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"integrations.js","sourceRoot":"","sources":["../../src/core/integrations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=webcrypto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webcrypto.d.ts","sourceRoot":"","sources":["../../src/core/webcrypto.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { webcrypto } from 'node:crypto';
2
+ /**
3
+ * Node.js 18 does not guarantee a global `crypto` in every execution
4
+ * environment (notably some test/embedded runtimes). The MCP SDK uses the
5
+ * Web Crypto global, so provide the standards-compatible Node implementation
6
+ * when it is missing.
7
+ */
8
+ if (!globalThis.crypto) {
9
+ Object.defineProperty(globalThis, 'crypto', {
10
+ value: webcrypto,
11
+ configurable: true,
12
+ enumerable: true,
13
+ });
14
+ }
15
+ //# sourceMappingURL=webcrypto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webcrypto.js","sourceRoot":"","sources":["../../src/core/webcrypto.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;;;GAKG;AACH,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,cAAc,CAAC,UAAU,EAAE,QAAQ,EAAE;QACxC,KAAK,EAAE,SAAS;QAChB,YAAY,EAAE,IAAI;QAClB,UAAU,EAAE,IAAI;KACnB,CAAC,CAAC;AACP,CAAC"}
@@ -1,3 +1,4 @@
1
+ import '../core/webcrypto.js';
1
2
  import express from 'express';
2
3
  import { type RamcpConfig } from '../core/config.js';
3
4
  import { ConfigWatcher } from '../core/context.js';
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/server/app.ts"],"names":[],"mappings":"AAAA,OAAO,OAA2D,MAAM,SAAS,CAAC;AAQlF,OAAO,EAA4C,KAAK,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AACjH,OAAO,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAc,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,WAAW,CAAC;IACjB,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,cAAc,CAAC;IAC1B,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAkBjD;AAED,wBAAgB,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG;IAAE,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;IAAC,GAAG,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAuY9G;AAGD,wBAAgB,kBAAkB;SA1YqB,OAAO,CAAC,OAAO;SAAO,WAAW;WAAS,YAAY;EA4Y5G"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/server/app.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAC;AAC9B,OAAO,OAA2D,MAAM,SAAS,CAAC;AAQlF,OAAO,EAA4C,KAAK,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AACjH,OAAO,EAAE,aAAa,EAAoB,MAAM,oBAAoB,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAc,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,WAAW,CAAC;IACjB,OAAO,EAAE,aAAa,CAAC;IACvB,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,WAAW,CAAC;IACrB,QAAQ,EAAE,YAAY,CAAC;IACvB,SAAS,EAAE,cAAc,CAAC;IAC1B,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,wBAAgB,kBAAkB,IAAI,YAAY,CAkBjD;AAED,wBAAgB,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,GAAG;IAAE,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC;IAAC,GAAG,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAuY9G;AAGD,wBAAgB,kBAAkB;SA1YqB,OAAO,CAAC,OAAO;SAAO,WAAW;WAAS,YAAY;EA4Y5G"}
@@ -1,3 +1,4 @@
1
+ import '../core/webcrypto.js';
1
2
  import express from 'express';
2
3
  import fs from 'node:fs';
3
4
  import path from 'node:path';
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/server/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/server/app.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  # Tools & CLI Reference
2
2
 
3
- Complete inventory of what the gateway exposes, as of v3.0.0.
4
- Counts: **44 tools / 17 suites**, **17 CLI commands**.
3
+ Complete inventory of what the gateway exposes, as of v3.0.2.
4
+ Counts: **45 built-in tools / 16 suites**. Optional MCP integrations may add additional namespaced tools. CLI commands are documented by group below.
5
5
 
6
6
  Every tool handler runs inside the audit wrapper (app.ts): execution is
7
7
  timed, arguments redacted, outcome appended to the hash chain, webhooks
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "remote-access-mcp",
3
- "version": "3.0.1",
4
- "description": "Turn any Linux server into an AI-agent-accessible machine via MCP. ChatGPT, Claude, and Grok connect over HTTPS and control files, shell, git, and more — securely and with zero Python dependencies.",
3
+ "version": "3.0.2",
4
+ "description": "Turn any machine into a secure AI-agent-accessible endpoint via MCP. Connect ChatGPT, Claude, Grok, and other MCP clients to files, shell, git, services, and more.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "remote-access-mcp": "dist/cli.js",
@@ -14,10 +14,13 @@
14
14
  "LICENSE",
15
15
  "install.sh",
16
16
  "AGENTS.md",
17
+ "SECURITY.md",
18
+ "CHANGELOG.md",
19
+ "CONTRIBUTING.md",
17
20
  "docs/ai"
18
21
  ],
19
22
  "engines": {
20
- "node": ">=20.18.1"
23
+ "node": ">=18"
21
24
  },
22
25
  "scripts": {
23
26
  "build": "tsc",
@@ -30,14 +33,18 @@
30
33
  },
31
34
  "keywords": [
32
35
  "mcp",
36
+ "mcp-server",
37
+ "mcp-gateway",
33
38
  "model-context-protocol",
34
- "ai",
35
- "agent",
39
+ "ai-agent",
40
+ "ai-ops",
36
41
  "remote-access",
37
42
  "server-management",
43
+ "infrastructure",
44
+ "devops",
45
+ "linux",
38
46
  "chatgpt",
39
- "claude",
40
- "devops"
47
+ "claude"
41
48
  ],
42
49
  "author": "Amir Ali Manzar (https://amiralimanzar.ir)",
43
50
  "license": "MIT",
@@ -51,13 +58,13 @@
51
58
  "homepage": "https://github.com/AmirAliManzar/remote-access-mcp#readme",
52
59
  "dependencies": {
53
60
  "@modelcontextprotocol/sdk": "^1.20.0",
54
- "@upstash/context7-mcp": "^4.0.4",
55
61
  "better-sqlite3": "^11.6.0",
56
- "codebase-memory-mcp": "^0.10.8",
57
62
  "express": "^4.21.0",
58
63
  "zod": "^3.24.0"
59
64
  },
60
65
  "optionalDependencies": {
66
+ "@upstash/context7-mcp": "^4.0.4",
67
+ "codebase-memory-mcp": "^0.10.8",
61
68
  "context-mode": "^1.0.169"
62
69
  },
63
70
  "devDependencies": {
package/dist/cli.d.ts DELETED
@@ -1,3 +0,0 @@
1
- #!/usr/bin/env node
2
- export {};
3
- //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
package/dist/cli.js DELETED
@@ -1,7 +0,0 @@
1
- #!/usr/bin/env node
2
- import { main } from './cli/main.js';
3
- main(process.argv.slice(2)).catch((e) => {
4
- console.error(e);
5
- process.exit(1);
6
- });
7
- //# sourceMappingURL=cli.js.map
package/dist/cli.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAErC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE;IACtC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1,71 +0,0 @@
1
- /**
2
- * Fleet: run tools on remote machines over SSH.
3
- *
4
- * Design decisions, deliberately narrow:
5
- *
6
- * - Outbound SSH only. The gateway machine holds one private key; remote
7
- * machines need nothing installed except an SSH server and a POSIX shell.
8
- * No agent daemons, no listening ports, no new attack surface inbound.
9
- *
10
- * - Per-host allowlists of tools. `ramcp fleet add --tools shell,fs` is the
11
- * whole security model: a host that was never granted a tool group
12
- * refuses it with a clear error. Local-only tools (schedule, policy
13
- * management, ops) ignore `host` entirely.
14
- *
15
- * - File transfer for fs tools is piped over stdin via base64, so writes
16
- * don't touch the remote disk with temp files (which would race, leak
17
- * into other users' listings, or fail on full filesystems).
18
- *
19
- * - SSH_BIN env override exists for tests (fake ssh) and for Windows hosts
20
- * that want a specific OpenSSH path.
21
- */
22
- export interface FleetHost {
23
- name: string;
24
- host: string;
25
- port?: number;
26
- tools: string[];
27
- note?: string;
28
- added: string;
29
- }
30
- /** Tool group → fleet capability check. Local-only groups have no remote path. */
31
- export declare const FLEET_CAPABILITIES: readonly ["shell", "fs", "services", "packages", "logs"];
32
- export declare function isFleetCapability(g: string): boolean;
33
- export declare function sshBin(): string;
34
- export interface SshOpts {
35
- timeoutMs?: number;
36
- stdin?: string;
37
- }
38
- /** Run one command over SSH. Throws on non-zero exit with combined output. */
39
- export declare function sshRun(host: string, port: number | undefined, command: string, opts?: SshOpts): Promise<{
40
- stdout: string;
41
- stderr: string;
42
- }>;
43
- /** Exit status of a probe command; 0 = reachable. */
44
- export declare function fleetProbe(host: FleetHost): Promise<{
45
- ok: boolean;
46
- detail: string;
47
- }>;
48
- /** shell group */
49
- export declare function buildRunCommand(command: string, cwd?: string, timeoutMs?: number): string;
50
- /** fs group */
51
- export declare function buildReadCommand(path: string): string;
52
- export declare function buildWriteCommand(path: string, content: string, mkdir: boolean): string;
53
- export declare function buildDeleteCommand(path: string): string;
54
- export declare function buildListCommand(path: string): string;
55
- export declare function buildFileInfoCommand(path: string): string;
56
- export declare function buildTailCommand(path: string, lines: number): string;
57
- export declare function buildSearchCommand(path: string, pattern: string, maxResults: number): string;
58
- /** services group */
59
- export declare function buildServiceStatusCommand(unit: string): string;
60
- export declare function buildServiceActionCommand(unit: string, action: string): string;
61
- /** packages group */
62
- export declare function buildPackageListCommand(filter?: string): string;
63
- /** logs group */
64
- export declare function buildJournalCommand(unit: string, lines: number): string;
65
- export declare class FleetError extends Error {
66
- constructor(msg: string);
67
- }
68
- export declare function findHost(hosts: FleetHost[], name: string): FleetHost;
69
- /** Throws unless the host was granted the tool group at `ramcp fleet add` time. */
70
- export declare function assertCapability(hosts: FleetHost[], name: string, group: string): FleetHost;
71
- //# sourceMappingURL=fleet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fleet.d.ts","sourceRoot":"","sources":["../../src/core/fleet.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,0DAA2D,CAAC;AAE3F,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,MAAM,IAAI,MAAM,CAE/B;AAED,MAAM,WAAW,OAAO;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,8EAA8E;AAC9E,wBAAsB,MAAM,CAC1B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,OAAY,GACjB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA0C7C;AAED,qDAAqD;AACrD,wBAAsB,UAAU,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAO1F;AAYD,kBAAkB;AAClB,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,SAAS,SAAU,GAAG,MAAM,CAM1F;AAED,eAAe;AACf,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,MAAM,CAIvF;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzD;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAI5F;AAED,qBAAqB;AACrB,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE9E;AAED,qBAAqB;AACrB,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED,iBAAiB;AACjB,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEvE;AAMD,qBAAa,UAAW,SAAQ,KAAK;gBACvB,GAAG,EAAE,MAAM;CACxB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,CAIpE;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAM3F"}
@@ -1,148 +0,0 @@
1
- import { execFile, spawn } from 'node:child_process';
2
- import { promisify } from 'node:util';
3
- const exec = promisify(execFile);
4
- /** Tool group → fleet capability check. Local-only groups have no remote path. */
5
- export const FLEET_CAPABILITIES = ['shell', 'fs', 'services', 'packages', 'logs'];
6
- export function isFleetCapability(g) {
7
- return FLEET_CAPABILITIES.includes(g);
8
- }
9
- export function sshBin() {
10
- return process.env.SSH_BIN || 'ssh';
11
- }
12
- /** Run one command over SSH. Throws on non-zero exit with combined output. */
13
- export async function sshRun(host, port, command, opts = {}) {
14
- const args = [
15
- // -T: no pty (we want clean pipes), BatchMode: never prompt — a hung
16
- // password prompt inside an AI tool call is a deadlock.
17
- '-o', 'BatchMode=yes',
18
- '-o', 'StrictHostKeyChecking=accept-new',
19
- '-o', 'ConnectTimeout=10',
20
- '-o', 'ServerAliveInterval=15',
21
- ];
22
- if (port)
23
- args.push('-p', String(port));
24
- args.push(host, '--', command);
25
- // NOTE: promisify(execFile) does not forward the `input` option (a known
26
- // footgun — the child's stdin never closes and the call hangs to timeout).
27
- // stdin piping is therefore done by hand: write, then end.
28
- if (opts.stdin !== undefined) {
29
- return await new Promise((resolve, reject) => {
30
- const child = spawn(sshBin(), args, { stdio: ['pipe', 'pipe', 'pipe'] });
31
- let stdout = '';
32
- let stderr = '';
33
- const timer = setTimeout(() => {
34
- child.kill();
35
- reject(new Error(`ssh timed out after ${Math.round((opts.timeoutMs ?? 120_000) / 1000)}s`));
36
- }, opts.timeoutMs ?? 120_000);
37
- child.stdout.on('data', c => { stdout += c; });
38
- child.stderr.on('data', c => { stderr += c; });
39
- child.on('error', e => { clearTimeout(timer); reject(e); });
40
- child.on('close', code => {
41
- clearTimeout(timer);
42
- if (code === 0)
43
- resolve({ stdout, stderr });
44
- else
45
- reject(Object.assign(new Error(`ssh exited with ${code}`), { stdout, stderr }));
46
- });
47
- child.stdin.write(opts.stdin);
48
- child.stdin.end();
49
- });
50
- }
51
- const { stdout, stderr } = await exec(sshBin(), args, {
52
- timeout: opts.timeoutMs ?? 120_000,
53
- maxBuffer: 10 * 1024 * 1024,
54
- });
55
- return { stdout, stderr };
56
- }
57
- /** Exit status of a probe command; 0 = reachable. */
58
- export async function fleetProbe(host) {
59
- try {
60
- const { stdout } = await sshRun(host.host, host.port, 'echo ramcp-ok', { timeoutMs: 15_000 });
61
- return { ok: stdout.includes('ramcp-ok'), detail: stdout.trim() };
62
- }
63
- catch (e) {
64
- return { ok: false, detail: (e.stderr || e.stdout || e.message || '').split('\n')[0].slice(0, 120) };
65
- }
66
- }
67
- // ---------------------------------------------------------------------------
68
- // Command builders — single source of truth for what runs remotely.
69
- // All of these are invoked via `ssh … -- command`, so each one gets ONE
70
- // shell string. Keep them quoting-tight: paths arrive validated from the
71
- // tool schema (zod), but we still quote everything with double quotes.
72
- // ---------------------------------------------------------------------------
73
- const q = (s) => `"${s.replace(/(["\\$`])/g, '\\$1')}"`;
74
- const b64 = (s) => Buffer.from(s, 'utf8').toString('base64');
75
- /** shell group */
76
- export function buildRunCommand(command, cwd, timeoutMs = 120_000) {
77
- const secs = Math.min(Math.round(timeoutMs / 1000), 600);
78
- const inner = cwd
79
- ? `cd ${q(cwd)} 2>/dev/null && ${command}`
80
- : command;
81
- return `timeout ${secs} sh -c ${q(inner)} 2>&1`;
82
- }
83
- /** fs group */
84
- export function buildReadCommand(path) {
85
- return `[ -f ${q(path)} ] && base64 ${q(path)}`;
86
- }
87
- export function buildWriteCommand(path, content, mkdir) {
88
- const pre = mkdir ? `mkdir -p ${q(path.replace(/\/[^/]*$/, ''))} && ` : '';
89
- // stdin carries the base64; the command decodes it. No temp files.
90
- return `${pre}base64 -d > ${q(path)}`;
91
- }
92
- export function buildDeleteCommand(path) {
93
- return `rm -rf ${q(path)}`;
94
- }
95
- export function buildListCommand(path) {
96
- // trailing / on dirs; -F suffixes symlinks with @
97
- return `ls -1F ${q(path)} 2>&1 | head -2000`;
98
- }
99
- export function buildFileInfoCommand(path) {
100
- return `stat ${q(path)} 2>&1`;
101
- }
102
- export function buildTailCommand(path, lines) {
103
- return `tail -n ${Math.max(1, Math.min(lines, 1000))} ${q(path)} 2>&1`;
104
- }
105
- export function buildSearchCommand(path, pattern, maxResults) {
106
- // pattern is ERE; validated as a string by zod, quoted single to avoid interpolation
107
- const p = pattern.replace(/'/g, `'\\''`);
108
- return `grep -rEn ${q(p)} ${q(path)} 2>/dev/null | head -${Math.min(maxResults, 200)} || echo "(no matches)"`;
109
- }
110
- /** services group */
111
- export function buildServiceStatusCommand(unit) {
112
- return `systemctl is-active ${q(unit)}; systemctl is-enabled ${q(unit)} 2>&1`;
113
- }
114
- export function buildServiceActionCommand(unit, action) {
115
- return `systemctl ${q(action)} ${q(unit)} 2>&1`;
116
- }
117
- /** packages group */
118
- export function buildPackageListCommand(filter) {
119
- const base = `dpkg-query -W -f '\"\${Package}\\t\${Version}\\n\"' 2>/dev/null`;
120
- if (!filter)
121
- return base;
122
- return `${base} | grep -i ${q(filter)} || true`;
123
- }
124
- /** logs group */
125
- export function buildJournalCommand(unit, lines) {
126
- return `journalctl -u ${q(unit)} -n ${Math.min(lines, 500)} --no-pager -o short-iso 2>&1 | tail -${Math.min(lines, 500)}`;
127
- }
128
- // ---------------------------------------------------------------------------
129
- // Host lookup + capability gate
130
- // ---------------------------------------------------------------------------
131
- export class FleetError extends Error {
132
- constructor(msg) { super(msg); this.name = 'FleetError'; }
133
- }
134
- export function findHost(hosts, name) {
135
- const h = hosts.find(h => h.name === name);
136
- if (!h)
137
- throw new FleetError(`Unknown fleet host "${name}". Known: ${hosts.map(h => h.name).join(', ') || '(none)'}`);
138
- return h;
139
- }
140
- /** Throws unless the host was granted the tool group at `ramcp fleet add` time. */
141
- export function assertCapability(hosts, name, group) {
142
- const h = findHost(hosts, name);
143
- if (!h.tools.includes(group)) {
144
- throw new FleetError(`Host "${name}" does not allow the ${group} tool group (allowed: ${h.tools.join(', ') || 'none'}). Grant it with: ramcp fleet edit ${name} --tools ${group}`);
145
- }
146
- return h;
147
- }
148
- //# sourceMappingURL=fleet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fleet.js","sourceRoot":"","sources":["../../src/core/fleet.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import type { ToolContext } from '../core/context.js';
3
- export declare function registerFleetTools(server: McpServer, ctx: ToolContext): void;
4
- //# sourceMappingURL=fleet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fleet.d.ts","sourceRoot":"","sources":["../../src/tools/fleet.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAetD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,WAAW,GAAG,IAAI,CA+B5E"}
@@ -1,39 +0,0 @@
1
- import { fleetProbe } from '../core/fleet.js';
2
- /**
3
- * Fleet meta-tools: listing and probing the machines this gateway can drive.
4
- * The actual remote operations (run_command, read_file, …) live in their own
5
- * suites — each gained an optional `host` parameter that routes over SSH
6
- * when provided. This split keeps one tool per verb (the AI does not have
7
- * to learn "remote_run_command") while the per-host allowlist gates access.
8
- */
9
- function hostList(ctx) {
10
- return ctx.cfg.fleet?.hosts || [];
11
- }
12
- export function registerFleetTools(server, ctx) {
13
- // ---- fleet_list ---------------------------------------------------------
14
- server.registerTool('fleet_list', {
15
- description: 'List fleet machines this gateway can reach over SSH, with their granted tool groups.',
16
- inputSchema: {},
17
- }, async () => {
18
- const hosts = hostList(ctx);
19
- if (!hosts.length)
20
- return { content: [{ type: 'text', text: '(no fleet hosts — add with `ramcp fleet add`)' }] };
21
- const out = hosts.map(h => `${h.name.padEnd(14)} ${h.host}${h.port ? ':' + h.port : ''} tools: ${h.tools.join(',') || '(none)'}${h.note ? ' — ' + h.note : ''}`);
22
- return { content: [{ type: 'text', text: out.join('\n') }] };
23
- });
24
- // ---- fleet_status ----------------------------------------------------------
25
- server.registerTool('fleet_status', {
26
- description: 'Probe every fleet machine over SSH. Reports reachable/unreachable per host.',
27
- inputSchema: {},
28
- }, async () => {
29
- const hosts = hostList(ctx);
30
- if (!hosts.length)
31
- return { content: [{ type: 'text', text: '(no fleet hosts)' }] };
32
- const results = await Promise.all(hosts.map(async (h) => {
33
- const r = await fleetProbe(h);
34
- return `${r.ok ? '✔' : '✖'} ${h.name.padEnd(14)} ${h.host}${h.port ? ':' + h.port : ''} ${r.ok ? 'reachable' : 'unreachable — ' + r.detail}`;
35
- }));
36
- return { content: [{ type: 'text', text: results.join('\n') }] };
37
- });
38
- }
39
- //# sourceMappingURL=fleet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fleet.js","sourceRoot":"","sources":["../../src/tools/fleet.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAkB,MAAM,kBAAkB,CAAC;AAE9D;;;;;;GAMG;AAEH,SAAS,QAAQ,CAAC,GAAgB;IAChC,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAiB,EAAE,GAAgB;IACpE,4EAA4E;IAC5E,MAAM,CAAC,YAAY,CAAC,YAAY,EAC9B;QACE,WAAW,EAAE,sFAAsF;QACnG,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE;QACT,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE,CAAC,EAAE,CAAC;QACjH,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CACxB,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACvI,CAAC;QACF,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEL,+EAA+E;IAC/E,MAAM,CAAC,YAAY,CAAC,cAAc,EAChC;QACE,WAAW,EAAE,6EAA6E;QAC1F,WAAW,EAAE,EAAE;KAChB,EACD,KAAK,IAAI,EAAE;QACT,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC;QACpF,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YACpD,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/I,CAAC,CAAC,CAAC,CAAC;QACJ,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;IACnE,CAAC,CAAC,CAAC;AACP,CAAC"}