MCP聊天适配器
MCP(模型上下文协议)服务器,为LLM提供干净的接口,以便通过MCP协议使用聊天完成功能。该服务器充当LLM客户端和任何兼容OpenAI的API之间的桥梁。主要用例是 聊天模型,因为服务器不支持文本补全。
概述
OpenAI聊天MCP服务器实现了模型上下文协议(MCP),允许语言模型以标准化的方式与OpenAI的聊天完成API交互。它能够实现用户和语言模型之间的无缝对话,同时处理API交互、对话管理和状态持久性的复杂性。
特性
- 内置于 FastMCP 用于稳健和干净的实施
- 提供会话管理和聊天完成工具
- 正确的错误处理和超时
- 支持与本地存储的对话持久性
- 设置简单,配置最少
- 可配置的模型参数和默认值
- 与OpenAI和OpenAI兼容的API兼容
典型工作流程
这个想法是,你可以让克劳德分拆出来,并在后台与其他模特保持多次对话。所有对话都存储在 CONVERSATION_DIR 目录,您应该在 env 你的部分 mcp.json 文件。
可以告诉克劳德创建一个新的对话,或者继续一个现有的对话(由整数标识 conversation_id).即使你在新的环境中重新开始,你也可以继续进行旧的对话,尽管在这种情况下,你可能想让克劳德在继续使用之前阅读旧的对话 get_conversation 工具。
请注意,您还可以在 CONVERSATION_DIR 手动目录。在这种情况下,您可能需要重新启动服务器才能看到更改。
配置
所需的环境变量
必须设置这些环境变量,服务器才能运行:
OPENAI_API_KEY=your-api-key # Your API key for OpenAI or compatible service
OPENAI_API_BASE=https://openrouter.ai/api/v1 # The base URL for the API (can be changed for compatible services)您还应该设置 CONVERSATION_DIR 环境变量指向要存储对话数据的目录。使用绝对路径。
可选环境变量
以下环境变量是可选的,具有默认值:
# Model Configuration
DEFAULT_MODEL=google/gemini-2.0-flash-001 # Default model to use if not specified
DEFAULT_SYSTEM_PROMPT="You are an unhelpful assistant." # Default system prompt
DEFAULT_MAX_TOKENS=50000 # Default maximum tokens for completion
DEFAULT_TEMPERATURE=0.7 # Default temperature setting
DEFAULT_TOP_P=1.0 # Default top_p setting
DEFAULT_FREQUENCY_PENALTY=0.0 # Default frequency penalty
DEFAULT_PRESENCE_PENALTY=0.0 # Default presence penalty
# Storage Configuration
CONVERSATION_DIR=./convos # Directory to store conversation data
MAX_CONVERSATIONS=1000 # Maximum number of conversations to store与Claude UI等集成。
你的 mcp.json 文件应该看起来像这样:
{
"mcpServers": {
"chat-adapter": {
"command": "npx",
"args": [
"-y",
"mcp-chat-adapter"
],
"env": {
"CONVERSATION_DIR": "/Users/aiamblichus/mcp-convos",
"OPENAI_API_KEY": "xoxoxo",
"OPENAI_API_BASE": "https://openrouter.ai/api/v1",
"DEFAULT_MODEL": "qwen/qwq-32b"
}
}
}
}最新版本的包发布到npm 这里.
可用工具
1.创建对话
创建新的聊天对话。
{
"name": "create_conversation",
"arguments": {
"model": "gpt-4",
"system_prompt": "You are a helpful assistant.",
"parameters": {
"temperature": 0.7,
"max_tokens": 1000
},
"metadata": {
"title": "My conversation",
"tags": ["important", "work"]
}
}
}2.聊天
在对话中添加消息并获得响应。
{
"name": "chat",
"arguments": {
"conversation_id": "123",
"message": "Hello, how are you?",
"parameters": {
"temperature": 0.8
}
}
}3.列出对话
获取可用对话的列表。
{
"name": "list_conversations",
"arguments": {
"filter": {
"tags": ["important"]
},
"limit": 10,
"offset": 0
}
}4.进行对话
获取对话的完整内容。
{
"name": "get_conversation",
"arguments": {
"conversation_id": "123"
}
}5.删除对话
删除对话。
{
"name": "delete_conversation",
"arguments": {
"conversation_id": "123"
}
}发展
安装
# Clone the repository
git clone https://github.com/aiamblichus/mcp-chat-adapter.git
cd mcp-chat-adapter
# Install dependencies
yarn install
# Build the project
yarn build运行服务器
对于FastMCP cli运行:
yarn cli对于FastMCP检查运行:
yarn inspect贡献
欢迎投稿!请随时提交拉取请求。
许可证
麻省理工学院

