一个安全的模型上下文协议(MCP)服务器,用于连接Claude Code与OpenAI和Google Gemini API。
<a href="https://glama.ai/mcp/servers/@fakoli/mcp-ai-bridge"> <img width="380" height="200" src="https://gips1.baidu.com/it/u=3158655532,1425528055&fm=3081&app=3081&f=PNG?w=760&h=400" alt="AI Bridge MCP服务器" /> </a>将mcp-ai-bridge目录克隆或复制到您喜欢的位置
安装依赖项:
cd mcp-ai-bridge
npm install
使用以下方法之一配置您的API密钥:
选项A:在您的主目录中使用全局.env文件(推荐)
~/.env文件OPENAI_API_KEY=your_openai_api_key_here
GOOGLE_AI_API_KEY=your_google_ai_api_key_here
选项B:使用本地.env文件
.env文件:
cp .env.example .env
.env文件中选项C:在Claude Code配置中使用环境变量
服务器将按以下顺序检查环境变量:
~/.env(您的主目录)
./.env(mcp-ai-bridge目录本地)
系统环境变量
可选配置变量:
# 日志级别(error, warn, info, debug)
LOG_LEVEL=info
# 服务器标识
MCP_SERVER_NAME=AI Bridge
MCP_SERVER_VERSION=1.0.0
# 安全配置
SECURITY_LEVEL=moderate # disabled, basic, moderate, strict
# 内容过滤(细粒度控制)
BLOCK_EXPLICIT_CONTENT=true # 主内容过滤开关
BLOCK_VIOLENCE=true # 阻止暴力内容
BLOCK_ILLEGAL_ACTIVITIES=true # 阻止非法活动请求
BLOCK_ADULT_CONTENT=true # 阻止成人/性内容
# 注入检测(细粒度控制)
DETECT_PROMPT_INJECTION=true # 主注入检测开关
DETECT_SYSTEM_PROMPTS=true # 检测系统角色注入
DETECT_INSTRUCTION_OVERRIDE=true # 检测“忽略指令”尝试
# 输入净化(细粒度控制)
SANITIZE_INPUT=true # 主净化开关
REMOVE_SCRIPTS=true # 移除脚本标签和JS
LIMIT_REPEATED_CHARS=true # 通过重复字符限制DoS
# 性能与灵活性
ENABLE_PATTERN_CACHING=true # 缓存编译模式以提高速度
MAX_PROMPT_LENGTH_FOR_DEEP_SCAN=1000 # 跳过长提示的深度扫描
ALLOW_EDUCATIONAL_CONTENT=false # 白名单教育内容
WHITELIST_PATTERNS= # 逗号分隔的正则表达式模式以允许
使用交互式的MCP设置向导:
claude mcp add
或者直接添加服务器配置:
claude mcp add-json ai-bridge '{"command": "node", "args": ["/path/to/mcp-ai-bridge/src/index.js"]}'
将以下内容添加到您的Claude Code MCP设置中。配置文件的位置取决于您的环境:
settings.json(通常位于~/.claude/或$CLAUDE_CONFIG_DIR)~/.claude/claude_desktop_config.json为了兼容Claude Desktop:
{
"mcpServers": {
"ai-bridge": {
"command": "node",
"args": ["/path/to/mcp-ai-bridge/src/index.js"],
"env": {
"OPENAI_API_KEY": "your_openai_api_key",
"GOOGLE_AI_API_KEY": "your_google_ai_api_key"
}
}
}
}
如果已经配置了.env文件,可以省略env部分:
{
"mcpServers": {
"ai-bridge": {
"command": "node",
"args": ["/path/to/mcp-ai-bridge/src/index.js"]
}
}
}
如果您已经在Claude Desktop中进行了配置,可以导入该配置:
claude mcp add-from-claude-desktop
ask_openai查询OpenAI模型时带有完整的验证和安全特性。
参数:
prompt(必需):要发送的问题或提示(最大10,000个字符)model(可选):从'gpt-4o'、'gpt-4o-mini'、'gpt-4-turbo'、'gpt-4'、'o1'、'o1-mini'、'o1-pro'、'o3-mini'、'chatgpt-4o-latest'以及其他可用模型中选择(默认:'gpt-4o-mini')temperature(可选):控制随机性(0-2,默认:0.7)安全特性:
ask_gemini查询Google Gemini模型时带有完整的验证和安全特性。
参数:
prompt(必需):要发送的问题或提示(最大10,000个字符)model(可选):从'gemini-1.5-pro-latest'、'gemini-1.5-pro-002'、'gemini-1.5-pro'、'gemini-1.5-flash-latest'、'gemini-1.5-flash'、'gemini-1.5-flash-002'、'gemini-1.5-flash-8b'、'gemini-1.0-pro-vision-latest'、'gemini-pro-vision'中选择(默认:'gemini-1.5-flash-latest')temperature(可选):控制随机性(0-1,默认:0.7)安全特性:
server_info获取全面的服务器状态和配置信息。
返回:
在Claude Code中,您可以像这样使用这些工具:
mcp__ai-bridge__ask_openai
prompt: "解释编程中的递归概念"
model: "gpt-4o"
temperature: 0.5
mcp__ai-bridge__ask_gemini
prompt: "Python和JavaScript之间的主要区别是什么?"
model: "gemini-1.5-flash-latest"
mcp__ai-bridge__server_info
如果您遇到MCP服务器问题,可以使用Claude Code的调试功能:
# 启用MCP调试模式以获得详细的错误信息
claude --mcp-debug
# 检查MCP服务器状态和工具
claude
# 然后使用/mcp斜杠命令查看服务器详情
项目包括全面的单元测试和安全测试。运行测试:
# 运行所有测试(包括安全测试)
npm test
# 在监视模式下运行测试
npm run test:watch
# 运行测试并生成覆盖率报告
npm run test:coverage
.env文件或Claude Code配置中npm installMCP服务器无法加载:
claude --mcp-debug查看详细的错误消息配置问题:
claude mcp add进行交互式设置CLAUDE_CONFIG_DIR环境变量MCP_TIMEOUT和MCP_TOOL_TIMEOUT环境变量服务器启动失败:
node /path/to/mcp-ai-bridge/src/index.js安全级别:
disabled - 不进行安全检查(最大性能)basic - 只进行基本保护(良好性能)moderate - 平衡保护(默认,良好平衡)strict - 最大保护(可能影响性能)个别功能控制:
# 主开关
SECURITY_LEVEL=moderate
BLOCK_EXPLICIT_CONTENT=true
DETECT_PROMPT_INJECTION=true
SANITIZE_INPUT=true
# 细粒度内容过滤
BLOCK_VIOLENCE=true # “如何杀人”,暴力
BLOCK_ILLEGAL_ACTIVITIES=true # “如何黑客攻击”,非法行为
BLOCK_ADULT_CONTENT=true # 成人/性内容
# 细粒度注入检测
DETECT_SYSTEM_PROMPTS=true # “system: 作为管理员”
DETECT_INSTRUCTION_OVERRIDE=true # “忽略之前的指令”
# 细粒度净化
REMOVE_SCRIPTS=true # 移除<script>标签
LIMIT_REPEATED_CHARS=true # 防止字符泛滥
# 性能优化
ENABLE_PATTERN_CACHING=true # 缓存模式以提高速度
MAX_PROMPT_LENGTH_FOR_DEEP_SCAN=1000 # 跳过长提示的密集检查
# 灵活性选项
ALLOW_EDUCATIONAL_CONTENT=true # 白名单“研究关于”,“解释”
WHITELIST_PATTERNS="educational,academic" # 自定义正则表达式模式
性能考虑:
.env文件提交到版本控制系统server_info工具验证服务器配置服务器实现了滑动窗口速率限制: