内容
# Nodeterm MCP 服务器
一个模型上下文协议(MCP)服务器,使 AI 代理能够与 **Nodeterm** 连接交互。这允许您的 AI(在 Cursor、Claude Desktop、Antigravity-CLI 等中)安全地列出您的 SSH 连接并通过与 NodeTerm 的本地 API 对话在远程服务器上执行命令。
## 🔒 安全与架构
与以前的版本不同,**nodeterm-mcp v1.1.0+ 不读取明文文件或存储凭证**。它作为一个安全的*薄客户端*,与 NodeTerm 内置的本地 HTTP API 进行通信。
要操作,必须满足以下条件:
1. **NodeTerm 必须在您的本地机器上运行**。
2. **密码必须在 NodeTerm 中解锁**(输入主密钥)。
3. **MCP 集成必须在 NodeTerm 设置中启用**。
4. 客户端必须使用安全的 **API 密钥**进行身份验证。
## 🚀 快速入门
### 1. 在 NodeTerm 中启用 MCP
1. 打开 NodeTerm 并进入 **设置 > 集成 > MCP**。
2. 切换 **启用 MCP 服务器**(Enable MCP server)。
3. 这将生成一个安全的 **API 密钥** 并显示端口(默认:`19800`)。
### 2. 配置您的 MCP 客户端
从 NodeTerm 复制您的 **API 密钥**,并在您的 MCP 客户端配置中设置以下环境变量:
- `NODETERM_API_KEY`:从 NodeTerm 设置中复制的 API 密钥。
- `NODETERM_PORT`:(可选)NodeTerm 的 API 正在侦听的端口(默认:`19800`)。
#### Cursor / Claude Desktop 示例(`claude_desktop_config.json`):
```json
{
"mcpServers": {
"nodeterm": {
"command": "npx",
"args": ["-y", "@kalidus/nodeterm-mcp"],
"env": {
"NODETERM_API_KEY": "您的 NODETERM_API_KEY",
"NODETERM_PORT": "19800"
}
}
}
}
```
#### OpenCode 示例(`opencode.json`):
```json
{
"mcp": {
"nodeterm-mcp": {
"type": "local",
"command": [
"npx",
"-y",
"@kalidus/nodeterm-mcp"
],
"env": {
"NODETERM_API_KEY": "您的 NODETERM_API_KEY",
"NODETERM_PORT": "19800"
},
"enabled": true
}
}
}
```
## 🧰 可用工具
| 工具 | 描述 | 参数 |
|------|-------------|------------|
| `list_connections` | 列出 Nodeterm 中可用的所有连接(SSH、RDP、SFTP 等),不包括凭证。 | `type`(可选:'ssh', 'rdp', 等) |
| `get_connection_details` | 检索特定连接的连接元数据(不包括密码/密钥)。 | `connectionName`(名称或 ID) |
| `run_ssh_command` | 使用现有的 Nodeterm SSH 连接在远程主机上执行命令。NodeTerm 管理凭证和执行。 | `connectionName`, `command` |
| `list_sections` | 列出 NodeTerm 中可用的所有部分/文件夹/组(连接组和文档/笔记文件夹)。 | `type`(可选:'connections', 'documents') |
| `list_sessions` | 列出所有配置的连接会话(SSH、RDP、SFTP 等),带有组路径。 | `type`(可选:'ssh', 'rdp', 等) |
| `list_passwords` | 安全地列出所有密码/凭证管理器条目。 | `search`(可选搜索筛选器) |
| `list_notes` | 列出 NodeTerm 中存储的所有文档/笔记。 | `search`(可选搜索筛选器) |
| `create_password` | 在 NodeTerm 中创建新的凭证、密码、加密钱包或 API 密钥。 | `name`(必填),`type`,`parentId`,`username`,`password`,`website`,`notes`,`api_key`,`wallet_seed` |
| `edit_password` | 编辑 NodeTerm 中现有的凭证、密码、加密钱包或 API 密钥。 | `id`(必填),`name`,`username`,`password`,`website`,`notes`,`api_key`,`wallet_seed` |
| `create_note` | 在 NodeTerm 中创建新的文档或笔记(或文件夹)。 | `name`(必填),`content`,`type`,`parentId` |
| `edit_note` | 编辑 NodeTerm 中现有的文档或笔记标题/内容。 | `id`(必填),`name`,`content` |
## 💻 本地开发
如果您想从源代码运行服务器:
1. 克隆存储库。
2. 安装依赖项:
```bash
npm install
```
3. 使用 node 运行,提供环境变量:
```bash
NODETERM_API_KEY="您的密钥" NODETERM_PORT="19800" node index.js
```
## License
MIT