Dolphin MCP 使用指南:通过 OpenAI API 扩展 MCP 协议与 GPT 模型集成
作者:API传播员 · 2025-10-20 · 阅读时间:5分钟
Dolphin-MCP是一个开源实现,扩展了Anthropic的模型上下文协议,使其能与多种语言模型协同工作。本指南详细介绍了如何通过OpenAI的API配置和使用Dolphin-MCP,以利用MCP架构充分发挥GPT模型的潜力。内容包括安装步骤、配置方法、基本和高级用法示例,以及性能优化和常见问题排除。
简介
Claude 之外的多种语言模型协同工作。本技术指南将详细介绍如何通过 OpenAI 的 API 配置和使用 Dolphin-MCP,从而利用 MCP 架构充分发挥 GPT 模型的潜力。
技术概述
Dolphin-MCP 作为 MCP 规范与多种大型语言模型(LLM)API 之间的转换层,主要功能包括:
- 将 MCP 协议消息转换为 OpenAI API 格式。
- 处理不同模型之间的令牌映射差异。
- 管理对话状态及历史记录。
- 提供与模型无关的工具执行功能。
先决条件
在开始使用 Dolphin-MCP 之前,请确保满足以下条件:
- 已安装 Python 3.8+。
- 配备 pip(包管理器)。
- 拥有有效的 OpenAI API 密钥。
- 已安装 Git。
- 对 LLM 和 API 概念有基本了解。
安装步骤
按照以下步骤安装 Dolphin-MCP:
# 克隆 Dolphin MCP 仓库
git clone https://github.com/cognitivecomputations/dolphin-mcp.git
cd dolphin-mcp
# 创建虚拟环境
python -m venv venv
source venv/bin/activate# Windows 用户请使用 venvScriptsactivate# 安装依赖项
pip install -r requirements.txt# 以开发模式安装软件包
pip install -e .
配置
1. 设置环境变量
在项目根目录中创建 .env 文件,并添加以下内容:
OPENAI_API_KEY=sk-your-OPENAI-API-KEY-here
MCP_MODEL=gpt-4-0125-preview
MCP_PROVIDER=OPENAI
2. 创建配置文件
在项目根目录创建 config.json 文件,内容如下:
{
"provider": "openai",
"model_settings": {
"model": "gpt-4-0125-preview",
"temperature": 0.7,
"max_tokens": 2048
},
"api_config": {
"base_url": "https://api.openai.com/v1",
"timeout": 120
}
}
基本用法示例
示例 1:简单对话
以下代码展示了如何使用 Dolphin-MCP 进行简单的对话:
from dolphin_mcp import DolphinMCP
# 初始化客户端
mcp_client = DolphinMCP.from_config("./config.json")# 创建对话
conversation = mcp_client.create_conversation()# 添加系统消息
conversation.add_system_message("你是一个有用的 AI 助手。")
示例 2:在 OpenAI 中使用工具
以下代码展示了如何通过 Dolphin-MCP 使用工具:
from dolphin_mcp import DolphinMCP
from dolphin_mcp.tools import WebSearchTool, CodeExecutionTool
# 初始化客户端并注册工具
mcp_client = DolphinMCP.from_config("./config.json")
conversation = mcp_client.create_conversation()# 用户查询
response = conversation.add_user_message(
"纽约的当前天气如何?另外,你能告诉我如何计算 Python 中数字的因子吗?"
)# 输出响应及工具执行结果
print(response.content)
print("nTool executions:")
for tool_name, tool_result in response.tool_results.items():
print(f"{tool_name}: {tool_result}")
高级配置
使用与 OpenAI 兼容的端点
如果需要使用其他 自托管模型),可以修改 config.json 文件:
{
"provider": "openai",
"model_settings": {
"model": "your-custom-model-deployment",
"temperature": 0.7,
"max_tokens": 2048
},
"api_config": {
"api_key": "your-api-key",
"base_url": "https://your-custom-endpoint.com/v1",
"api_version": "2023-07-01-preview",
"api_type": "azure"
}
}
自定义工具的实现
Dolphin-MCP 支持为 OpenAI 模型创建自定义工具。以下是一个实现简单计算器工具的示例:
from dolphin_mcp.tools import BaseTool
import math
class CalculatorTool(BaseTool):
name = "calculator"
description = "执行数学计算" async def execute(self, expression: str):
try:# 安全环境下执行数学表达式
safe_env = {
"sqrt": math.sqrt,
"sin": math.sin,
"cos": math.cos,
"tan": math.tan,
"pi": math.pi,
"e": math.e
}
result = eval(expression, {"__builtins__": {}}, safe_env)
return str(result)
except Exception as e:
return f"计算错误:{str(e)}" @property
def parameters(self):
return {
"type": "object",
"properties": {
"expression": {
"type": "string",
"description": "要计算的数学表达式"
}
},
"required": ["expression"]
}# 注册工具
mcp_client = DolphinMCP.from_config("./config.json")
mcp_client.register_tool(CalculatorTool())
性能优化
在生产环境中,可以通过以下方式优化性能:
- 复用连接池以减少网络开销。
- 使用异步任务高效处理多个对话。
示例代码如下:
from dolphin_mcp import DolphinMCP
import aiohttp
import asyncio
async def optimized_mcp_usage():
async with aiohttp.ClientSession() as session:
mcp_client = DolphinMCP.from_config(
"./config.json",
session=session,
request_timeout=60,
connection_pool_size=10
) tasks = []
for i in range(5):
conversation = mcp_client.create_conversation()
conversation.add_system_message("你是一个有用的助手。")
tasks.append(conversation.add_user_message_async(f"问题 {i}: 什么是机器学习?")) responses = await asyncio.gather(*tasks)
for i, response in enumerate(responses):
print(f"响应 {i}: {response.content[:100]}...")
常见问题排除
错误 1:API 密钥无效
- 检查 OpenAI API 密钥是否正确。
- 确保密钥具有足够的权限。
错误 2:请求超时
- 增加超时时间。
- 检查网络连接。
错误 3:模型名称无效
- 验证模型名称是否在 OpenAI 提供的模型列表中。
结论
Dolphin-MCP 是一个灵活的开源解决方案,能够将 OpenAI 模型与 MCP 协议结合使用。通过本指南的步骤,开发者可以轻松配置和使用 Dolphin-MCP,从而在不同的 LLM 提供商之间实现一致的接口,充分利用 GPT 模型的强大功能。
原文链接: http://anakin.ai/blog/how-to-use-mcp-with-openais-api-using-dolphin-mcp/
热门推荐
一个账号试用1000+ API
助力AI无缝链接物理世界 · 无需多次注册
3000+提示词助力AI大模型
和专业工程师共享工作效率翻倍的秘密
最新文章
- Envoy Gateway 的 Gateway API 扩展功能介绍 – Tetrate
- 使用Django REST Framework构建API——第二部分
- 鸿蒙应用实践:利用扣子API开发起床文案生成器
- 如何获取OpenRouter API Key 密钥(分步指南)
- OpenAI Responses API 使用指南:构建智能响应的强大引擎
- 解码API Key 密钥:基本用途和安全最佳实践
- .NET Core微服务之路:基于Ocelot的API网关实现–http/https协议篇
- 利用Python调用百度千帆大模型接口实战指南
- WebSocket与REST:深入解析两者之间的区别
- 探索 DeepSeek API – 聊天补全及更多功能 – SerpApi
- 如何高效使用Nextjs API路由 – NextBuild
- Go-Zero定义API实战:探索API语法规范与最佳实践