
mcp-server-llmling

2025.03.27
5
PythonLLM 配置YAML 配置系统开发效率
mcp-server-llmling 是一个基于 Machine Chat Protocol (MCP) 的服务器,专为 LLM(大型语言模型)应用提供 YAML 配置系统。它允许用户通过 YAML 文件定义 LLM 的环境,包括资源管理、工具系统和提示管理,无需编写代码即可实现复杂的 LLM 交互功能。
View on GitHub
Overview
基本能力
产品定位
mcp-server-llmling 是一个为 LLM 应用提供配置和交互支持的服务器,通过 YAML 文件定义资源、工具和提示,简化 LLM 的集成和使用。
核心功能
- 资源管理:支持多种资源类型(文本文件、原始文本、CLI 输出、Python 代码、可调用函数、图像等),支持资源热重载和 URI 访问。
- 工具系统:注册和执行 Python 函数作为 LLM 工具,支持 OpenAPI 工具和工具验证。
- 提示管理:静态和动态提示模板,支持参数验证和自动补全。
- 多传输选项:支持 Stdio、Server-Sent Events (SSE) 和自定义传输实现。
适用场景
- LLM 应用开发:快速配置 LLM 环境,集成资源和工具。
- 自动化任务:通过 CLI 或 Python 脚本调用 LLM 功能。
- 编辑器集成:与 Zed Editor 或 Claude Desktop 等工具集成,提供上下文支持。
工具列表
- 资源工具:管理文件、文本、CLI 输出等资源。
- Python 工具:调用 Python 函数扩展 LLM 能力。
- OpenAPI 工具:集成外部 API 服务。
常见问题解答
- 资源加载失败:检查文件路径和权限。
- 工具执行错误:验证工具参数和依赖。
- 传输问题:确保传输协议配置正确。
使用教程
使用依赖
安装 Python 3.7+ 和 uvx
工具:
pip install uvx
安装教程
通过 uvx
安装最新版本:
uvx mcp-server-llmling@latest
调试方式
启动服务器并检查日志:
uvx mcp-server-llmling start path/to/config.yml
程序化使用
from llmling import RuntimeConfig
from mcp_server_llmling import LLMLingServer
async def main() -> None:
async with RuntimeConfig.open(config) as runtime:
server = LLMLingServer(runtime, enable_injection=True)
await server.start()
asyncio.run(main())
自定义传输
server = LLMLingServer(
config,
transport="sse",
transport_options={
"host": "localhost",
"port": 8000,
"cors_origins": ["http://localhost:3000"]
}
)