remote-access-mcp 1.0.4 → 1.0.6
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.fa.md +114 -0
- package/README.md +8 -1
- package/install.sh +2 -2
- package/package.json +6 -5
package/README.fa.md
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# remote-access-mcp
|
|
2
|
+
|
|
3
|
+
[](https://www.npmjs.com/package/remote-access-mcp)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
6
|
+
هر سرور لینوکسی رو با MCP ([Model Context Protocol](https://modelcontextprotocol.io)) به ماشینی تبدیل کن که هوش مصنوعی بهش وصل بشه.
|
|
7
|
+
|
|
8
|
+
ChatGPT (حالت Developer)، Claude، Grok و هر کلاینت MCP-دیگه از طریق HTTPS وصل میشن و بهصورت امن سرورت رو کنترل میکنن: خواندن و نوشتن فایل، اجرای دستورات شل، وضعیت سیستم، دیتابیس SQLite و کار با گیت — همه پشت یک توکن.
|
|
9
|
+
|
|
10
|
+
**بدون پایتون. بدون داکر. فقط Node.js.**
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm install -g remote-access-mcp
|
|
14
|
+
ramcp init
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## فلسفه
|
|
18
|
+
|
|
19
|
+
دستیارهای هوش مصنوعی قویان ولی از زیرساخت شما دورن. این گیتوی اون رو برعکس میکنه: چتبات شما خودش مهندس DevOps میشه. «ببین چرا دیسک سرور پر میشه» یا «برنچ جدید رو دیپلوی کن و لاگها رو نگاه کن» تبدیل به گفتگوهای واقعی میشن.
|
|
20
|
+
|
|
21
|
+
سرور فقط روی `127.0.0.1` گوش میده. پشت nginx/Caddy (با Cloudflare یا هر لبه TLS دیگه) قرارش میدی و دقیقاً یک endpoint HTTPS به دنیا ارائه میشه. هر درخواست باید توکن داشته باشه — یا بهصورت هدر `Authorization: Bearer` یا داخل مسیر URL (`/<token>/mcp`) برای کلاینتهایی مثل کانکتور ChatGPT که نمیتونن هدر سفارشی ست کنن.
|
|
22
|
+
|
|
23
|
+
## نصب
|
|
24
|
+
|
|
25
|
+
### یک خطی (هر سرور اوبونتو/دبیان)
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
curl -fsSL https://raw.githubusercontent.com/AmirAliManzar/remote-access-mcp/main/install.sh | bash
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
سپس:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
ramcp init
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
### دستی
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
npm install -g remote-access-mcp
|
|
41
|
+
ramcp init
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## دستورات
|
|
45
|
+
|
|
46
|
+
| دستور | توضیح |
|
|
47
|
+
|---|---|
|
|
48
|
+
| `ramcp init` | ساخت کانفیگ + توکن. اجرای مجدد امنه. |
|
|
49
|
+
| `ramcp start` | اجرا در foreground. |
|
|
50
|
+
| `ramcp url` | چاپ URL کانکتور برای چتبات. |
|
|
51
|
+
| `ramcp token rotate` | تولید توکن جدید (قبلی فوراً باطل میشه). |
|
|
52
|
+
| `ramcp policy` | نمایش مسیرهای مجاز. |
|
|
53
|
+
| `ramcp policy allow <path>` | دادن دسترسی AI به یک دایرکتوری. |
|
|
54
|
+
| `ramcp policy deny <path>` | سلب دسترسی از یک دایرکتوری. |
|
|
55
|
+
| `ramcp policy shell on/off` | فعال/غیرفعال کردن اجرای شل. |
|
|
56
|
+
| `ramcp service install` | نصب سرویس systemd + vhostnginx. |
|
|
57
|
+
| `ramcp service uninstall` | حذف سرویس و کانفیگ nginx. |
|
|
58
|
+
| `ramcp status` | وضعیت سرویس. |
|
|
59
|
+
|
|
60
|
+
## اتصال چتبات
|
|
61
|
+
|
|
62
|
+
### ChatGPT (Developer Mode → Connectors)
|
|
63
|
+
|
|
64
|
+
از فرمت URL استفاده کن (ChatGPT نمیتونه هدر سفارشی ست کنه):
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
https://دامنه.com/<token>/mcp
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
آمادهش رو بگیر:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
$ ramcp url
|
|
74
|
+
https://mcp.example.com/6kX9mQf2.../mcp
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Claude و هر کلاینت MCP با پشتیبانی هدر
|
|
78
|
+
|
|
79
|
+
Endpoint: `https://دامنه.com/mcp`
|
|
80
|
+
هدر: `Authorization: Bearer <token>`
|
|
81
|
+
|
|
82
|
+
## ابزارها
|
|
83
|
+
|
|
84
|
+
**فایلسیستم** (۷) — `list_directory`, `read_file`, `write_file`, `edit_file`, `delete_path`, `search_code`, `file_info`
|
|
85
|
+
|
|
86
|
+
**شل** (۳) — `run_command`, `process_list`, `kill_process`
|
|
87
|
+
|
|
88
|
+
**سیستم** (۳) — `system_info`, `disk_usage`, `network_interfaces`
|
|
89
|
+
|
|
90
|
+
**HTTP** (۲) — `http_request`, `port_check`
|
|
91
|
+
|
|
92
|
+
**گیت** (۱) — `git`
|
|
93
|
+
|
|
94
|
+
**SQLite** (۲) — `sqlite_query`, `sqlite_schema`
|
|
95
|
+
|
|
96
|
+
**سیاست دسترسی** (۴) — `list_allowed_paths`, `allow_path`, `deny_path`, `shell_enabled`
|
|
97
|
+
|
|
98
|
+
## مدل امنیتی
|
|
99
|
+
|
|
100
|
+
- **فقط loopback.** گیتوی روی `127.0.0.1:8765` گوش میده — از شبکه مستقیم قابل دسترسی نیست.
|
|
101
|
+
- **احراز هویت توکنی روی هر درخواست.** دو فرمت: هدر bearer یا مسیر URL.
|
|
102
|
+
- **موتور سیاست مسیر.** ابزارهای فایلسیستم symlinkها رو resolve و `..` رو قبل از چک allow/deny نرمالسازی میکنن. deny همیشه برندهست.
|
|
103
|
+
- **شل پشت فلگ.** تا صریحاً فعالش نکنی خاموشه.
|
|
104
|
+
- **بدون لو رفتن رازها در لاگها.**
|
|
105
|
+
|
|
106
|
+
انتظار اینه که TLS جلوش باشه (nginx + Let's Encrypt یا لبه CDN). خود گیتوی HTTP ساده روی loopback حرف میزنه.
|
|
107
|
+
|
|
108
|
+
## مجوز
|
|
109
|
+
|
|
110
|
+
MIT — [LICENSE](LICENSE)
|
|
111
|
+
|
|
112
|
+
---
|
|
113
|
+
|
|
114
|
+
📚 [English README](README.md) | [نقشه راه](ROADMAP.md)
|
package/README.md
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
# remote-access-mcp
|
|
2
2
|
|
|
3
|
+
[](https://www.npmjs.com/package/remote-access-mcp)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
|
|
3
6
|
Turn any Linux server into an AI-agent-accessible machine via the [Model Context Protocol](https://modelcontextprotocol.io) (MCP).
|
|
4
7
|
|
|
5
8
|
ChatGPT (Developer Mode), Claude, Grok, and any MCP-compatible client connect over HTTPS and securely control your server: read/write files, run shell commands, inspect system state, query SQLite databases, work with git — all behind a single bearer token.
|
|
@@ -22,7 +25,7 @@ The server binds to `127.0.0.1` only. You put it behind nginx/Caddy (with Cloudf
|
|
|
22
25
|
### One-liner (any Ubuntu/Debian server)
|
|
23
26
|
|
|
24
27
|
```bash
|
|
25
|
-
curl -fsSL https://raw.githubusercontent.com/
|
|
28
|
+
curl -fsSL https://raw.githubusercontent.com/AmirAliManzar/remote-access-mcp/main/install.sh | bash
|
|
26
29
|
```
|
|
27
30
|
|
|
28
31
|
Installs Node.js (if missing) via NodeSource, then the package globally. Then run:
|
|
@@ -139,3 +142,7 @@ It can, and on a dedicated server that's often simplest — the tools need broad
|
|
|
139
142
|
## License
|
|
140
143
|
|
|
141
144
|
MIT — see [LICENSE](LICENSE).
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
📚 [README فارسی](README.fa.md) | [Roadmap](ROADMAP.md)
|
package/install.sh
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
#
|
|
3
3
|
# remote-access-mcp — one-liner installer for Ubuntu/Debian servers.
|
|
4
4
|
#
|
|
5
|
-
# curl -fsSL https://raw.githubusercontent.com/
|
|
5
|
+
# curl -fsSL https://raw.githubusercontent.com/AmirAliManzar/remote-access-mcp/main/install.sh | bash
|
|
6
6
|
#
|
|
7
7
|
# What it does:
|
|
8
8
|
# 1. Checks for Node.js >= 18. Installs it via NodeSource if missing.
|
|
@@ -76,4 +76,4 @@ printf ' 1. ramcp init # generate config + token\n'
|
|
|
76
76
|
printf ' 2. ramcp start # run in foreground\n'
|
|
77
77
|
printf ' 3. ramcp service install # systemd + nginx vhost (production)\n'
|
|
78
78
|
printf ' 4. ramcp url # connector URL for your chatbot\n'
|
|
79
|
-
printf '\nDocs: https://github.com/
|
|
79
|
+
printf '\nDocs: https://github.com/AmirAliManzar/remote-access-mcp\n'
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "remote-access-mcp",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.6",
|
|
4
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.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
"files": [
|
|
11
11
|
"dist",
|
|
12
12
|
"README.md",
|
|
13
|
+
"README.fa.md",
|
|
13
14
|
"LICENSE",
|
|
14
15
|
"install.sh"
|
|
15
16
|
],
|
|
@@ -36,16 +37,16 @@
|
|
|
36
37
|
"claude",
|
|
37
38
|
"devops"
|
|
38
39
|
],
|
|
39
|
-
"author": "Ali Manzar
|
|
40
|
+
"author": "Amir Ali Manzar (https://amiralimanzar.ir)",
|
|
40
41
|
"license": "MIT",
|
|
41
42
|
"repository": {
|
|
42
43
|
"type": "git",
|
|
43
|
-
"url": "git+https://github.com/
|
|
44
|
+
"url": "git+https://github.com/AmirAliManzar/remote-access-mcp.git"
|
|
44
45
|
},
|
|
45
46
|
"bugs": {
|
|
46
|
-
"url": "https://github.com/
|
|
47
|
+
"url": "https://github.com/AmirAliManzar/remote-access-mcp/issues"
|
|
47
48
|
},
|
|
48
|
-
"homepage": "https://github.com/
|
|
49
|
+
"homepage": "https://github.com/AmirAliManzar/remote-access-mcp#readme",
|
|
49
50
|
"dependencies": {
|
|
50
51
|
"@modelcontextprotocol/sdk": "^1.20.0",
|
|
51
52
|
"express": "^4.21.0",
|