使用说明
LM Studio MCP服务器
一种模型上下文协议(MCP)服务器 LM工作室 通过标准化工具实现模型管理。
特性
- 📋 列出型号 -查看所有可用型号及其当前状态
- 🚀 负荷模型 -使用可配置的TTL将模型加载到内存中
- 🛑 卸载模型 -立即从内存中卸载模型
- ⚙️ 配置模型 -调整TTL和草稿模型等模型设置
- 📊 型号详细信息 -获取特定型号的详细信息
先决条件
安装
npm install
npm run build
快速启动(构建和运行)
按照以下步骤在本地构建和运行MCP服务器。
- 安装依赖项并构建项目:
npm install
npm run build
- 启动服务器(使用中的编译文件
dist):
npm start
- 服务器将MCP通信写入
stdout并记录到stderr.
环境变量提示:
- 默认LM Studio URL:
http://localhost:1234. - 要使用自定义LM Studio URL,请设置
LM_STUDIO_BASE_URL在开始之前。
PowerShell(Windows)示例:
$env:LM_STUDIO_BASE_URL = "http://localhost:1234"
npm start
命令提示符(Windows)示例:
set LM_STUDIO_BASE_URL=http://localhost:1234 && npm start
macOS/Linux示例:
LM_STUDIO_BASE_URL="http://localhost:1234" npm start
开发工作流程:
- 更改后重建(在一个终端中):
npm run watch - 运行服务器(在另一个终端中):
npm run dev(用检查器启动Node)
您还可以直接使用以下命令运行编译后的脚本 node dist/index.js 如果愿意的话。
配置
LM工作室设置
- 打开LM工作室
- 去 开发者 标签
- 启用本地服务器(默认端口:1234)
- 如果远程访问,可选择启用“在本地网络上服务”
环境变量
LM_STUDIO_BASE_URL-LM Studio API的基本URL(默认值:http://localhost:1234)
用法
使用克劳德桌面
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"lmstudio": {
"command": "node",
"args": ["/path/to/lmstudio-mcp/dist/index.js"],
"env": {
"LM_STUDIO_BASE_URL": "http://localhost:1234"
}
}
}
}
与其他MCP客户端
直接运行服务器:
node dist/index.js
服务器按照MCP协议通过stdio进行通信。
可用工具
list_models
列出所有可用型号及其当前状态(已加载/未加载)。
参数: 无
示例响应:
[
{
"id": "lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF",
"type": "llm",
"publisher": "Meta",
"architecture": "llama",
"state": "loaded",
"max_context_length": 8192
}
]
get_model_details
获取特定型号的详细信息。
参数:
model_id(string,必填)-模型的ID
例子:
{
"model_id": "lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF"
}
load_model
使用可配置的生存时间将模型加载到内存中。
参数:
model_id(string,必填)-要加载的模型的IDttl(数字,可选)-自动卸载前的生存时间(秒)(默认值:3600)
例子:
{
"model_id": "lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF",
"ttl": 7200
}
unload_model
立即从内存中卸载模型。
参数:
model_id(string,必填)-要卸载的模型的ID
例子:
{
"model_id": "lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF"
}
configure_model
配置TTL和草稿模型等模型设置以进行推测解码。
参数:
model_id(string,必填)-要配置的模型的IDttl(数字,可选)-生存时间(秒)draft_model(字符串,可选)-用于推测解码的模型ID草案
例子:
{
"model_id": "lmstudio-community/Meta-Llama-3-8B-Instruct-GGUF",
"ttl": 1800,
"draft_model": "small-draft-model"
}
运作原理
LM Studio使用JIT(准时制)模型加载。当发出推理请求时,模型会按需加载:
- 加载中:发出推理请求会自动加载具有指定TTL的模型
- 卸载:TTL到期后或TTL设置为0时,型号会自动卸载
- 配置:模型设置通过推理请求参数应用
发展
构建
npm run build
观看模式
npm run watch
调试
npm run dev
API 参考
此服务器与 LM Studio开发人员API:
GET /api/v0/models-列出所有可用型号GET /api/v0/models/{model}-获取模型详细信息POST /api/v0/chat/completions-用于加载/配置模型
故障排除
连接被拒绝
- 确保LM Studio正在运行
- 验证是否在开发人员设置中启用了本地服务器
- 检查端口1234(或自定义端口)是否可访问
未找到型号
- 使用验证型号ID是否正确
list_models - 确保模型已在LM Studio中下载
模型无法加载
- 检查可用系统内存
- 验证模型与您的系统的兼容性
- 查看LM Studio日志中的错误
许可证
麻省理工学院
贡献
欢迎投稿!请随时提交拉取请求。