使用说明
OpenLoL😆
打开本地操作层——让任何AI代理直接安全地访问您的机器终端。
🔄 状态:正在积极开发中
它做什么
OpenLoL 启动本地 模型上下文协议 服务器的作用域为您计算机上的一个文件夹。将任何兼容MCP的AI客户端指向生成的URL,它可以读取文件、写入文件、运行终端命令和检查系统信息——所有这些都在您定义的边界内。
没有云。没有接力。你的机器,你的文件夹,你的代币。
快速开始
# Recommended: install globally
npm i -g openlol
# Or install locally
npm i openlol
# Expose the current folder
openlol .
CLI选项
| 标志 | 描述 | 默认值 |
|---|---|---|
[path] |
要公开的文件夹(位置) | . |
-f, --folder <path> |
要公开的文件夹(替代 [path]) |
— |
-p, --port <number> |
要收听的端口 | 3333 |
--host <host> |
要绑定的主机 | localhost |
连接到游标
添加 .cursor/mcp.json 在项目根目录中(或 ~/.cursor/mcp.json 全球):
{
"mcpServers": {
"openlol": {
"url": "http://localhost:3333/mcp?token=<your-token>",
"transport": "http"
}
}
}
每次服务器启动时都会打印令牌。每次都会生成一个新的令牌。
可用工具
| 工具 | 说明 |
|---|---|
execute_command |
在作用域文件夹中运行任何shell命令 |
read_file |
读取文件内容 |
write_file |
创建或覆盖文件 |
append_file |
将内容附加到文件 |
delete_file |
删除文件或目录 |
list_directory |
列出文件和文件夹 |
create_directory |
创建目录(递归) |
move_file |
移动或重命名文件 |
file_exists |
检查是否存在路径 |
get_system_info |
操作系统、内存、正常运行时间 |
get_disk_usage |
所有驱动器的存储使用情况 |
get_environment_variables |
检查环境变量(带可选过滤器) |
所有文件和命令操作都是 沙盒到您指定的文件夹。目录遍历被阻止。
用例
文件和项目管理
“创建一个
ideas.md归档并添加10个SaaS创业想法。” “全部重命名.txt此文件夹中的文件.md." “显示此项目的文件夹结构。”
系统检查
“我的笔记本电脑上还有多少存储空间?” “我目前的内存使用情况如何?” “列出包含单词PATH的所有环境变量。”
开发工作流程
“跑
npm install然后npm run build并向我展示输出结果。" “检查package.json存在,然后阅读并总结依赖关系。" “创建新src/utils文件夹和脚手架ahelpers.ts文件。"
脚本编写和自动化
“编写一个shell脚本来备份所有内容
.json文件到abackup/子文件夹并运行它。” “跑git status告诉我哪些文件发生了变化。"
安全模型
- 每一个请求
/mcp和/sse需要会话令牌(Bearer标头或?token=查询参数)。 - 所有文件和命令操作仅限于通过传递的文件夹
-f。转义根的路径将被拒绝。 - 令牌是每次启动时新生成的UUID v4——会话之间永远不会重用任何令牌。
/health是唯一的公共端点。
绑定到
localhost仅 (默认设置)。在没有额外加固的情况下,不要将此服务器暴露在公共互联网上。
运输支持
| 传输 | 端点 | 客户端支持 |
|---|---|---|
| 流式HTTP | POST /mcp |
Claude Desktop、Cursor、现代MCP客户端 |
| SSE(传统) | GET /sse |
较旧的MCP客户端 |
技术栈
- TypeScript --严格模式,NodeNext模块
**@modelcontextprotocol/sdk**--MCP服务器+传输- 快速 --HTTP层
- 指挥官 --CLI
- 黄道带 --运行时输入验证
- 通用唯一标识符 --会话令牌生成
路线图
- 发布到npm
openlol - 配置文件支持(
.openlolrc) - 每个会话有多个文件夹作用域
- Https隧道集成用于远程访问
- 工具允许/拒绝列表配置
- 用于会话监控的Web UI
许可证
麻省理工学院
