LLM桥接服务

MCP LLM Bridge是一个连接Model Context Protocol (MCP)服务器与OpenAI兼容的LLM的桥接服务,支持OpenAI API及本地端点,实现协议转换和功能调用映射。

  • by bartolli
  • Python
  • 本地部署
  • 333 星标
  • 更新于
在 GitHub 查看 bartolli/mcp-llm-bridge

使用说明

MCP LLM桥

连接模型上下文协议(MCP)服务器和OpenAI兼容LLM的桥梁。对OpenAI API的主要支持,以及对实现OpenAI API规范的本地端点的额外兼容性。

该实现在MCP和OpenAI的函数调用接口之间提供了一个双向协议转换层。它将MCP工具规范转换为OpenAI函数模式,并处理函数调用到MCP工具执行的映射。这使得任何与OpenAI兼容的语言模型都可以通过标准化的接口利用符合MCP的工具,无论是使用基于云的模型还是像Ollama这样的本地实现。

点击此处阅读更多关于Anthropic的MCP:

演示:

快速开始

# Install
curl -LsSf https://astral.sh/uv/install.sh | sh
git clone https://github.com/bartolli/mcp-llm-bridge.git
cd mcp-llm-bridge
uv venv
source .venv/bin/activate
uv pip install -e .

# Create test database
python -m mcp_llm_bridge.create_test_db

配置

OpenAI(初级)

创建 .env:

OPENAI_API_KEY=your_key
OPENAI_MODEL=gpt-4o # or any other OpenAI model that supports tools

注意:如果需要使用中的密钥,请重新激活环境 .env: source .venv/bin/activate

然后在中配置网桥 src/mcpullm_bridge/main.py

config = BridgeConfig(
    mcp_server_params=StdioServerParameters(
        command="uvx",
        args=["mcp-server-sqlite", "--db-path", "test.db"],
        env=None
    ),
    llm_config=LLMConfig(
        api_key=os.getenv("OPENAI_API_KEY"),
        model=os.getenv("OPENAI_MODEL", "gpt-4o"),
        base_url=None
    )
)

附加端点支持

该网桥还与实现OpenAI API规范的任何端点一起工作:

没有

llm_config=LLMConfig(
    api_key="not-needed",
    model="mistral-nemo:12b-instruct-2407-q8_0",
    base_url="http://localhost:11434/v1"
)

注:测试各种型号后,包括 llama3.2:3b-instruct-fp16,我发现了 mistral-nemo:12b-instruct-2407-q8_0 更有效地处理复杂的查询。

LM工作室

llm_config=LLMConfig(
    api_key="not-needed",
    model="local-model",
    base_url="http://localhost:1234/v1"
)

我没有测试这个,但它应该有效。

用法

python -m mcp_llm_bridge.main

# Try: "What are the most expensive products in the database?"
# Exit with 'quit' or Ctrl+C

运行测试

安装带有测试依赖关系的包:

uv pip install -e ".[test]"

然后运行测试:

python -m pytest -v tests/

许可证

麻省理工学院

贡献

PR欢迎。