README
🚀 MCP Oracle OCI集成项目
本项目提供了代码和示例,助力以下任务的完成:
- 开发:使用Python开发MCP服务器。
- 运行:在Oracle OCI上运行MCP服务器。
- 集成:将MCP服务器与AI智能体集成。
- 集成:将MCP服务器与其他OCI资源(如ADB、Select AI等)集成。
- 集成:将运行在OCI上的MCP服务器与ChatGPT、Claude.ai、MS Copilot等AI助手集成。
- 集成:将MCP服务器与OCI APM集成,实现可观测性。
- 指南:为你的MCP服务器创建Docker镜像。

🚀 快速开始
什么是MCP?
MCP(模型上下文协议) 是一种开源标准,它允许AI模型(如大语言模型或智能体)通过统一接口与外部工具、数据源和服务进行双向连接。
它用一种标准协议取代了 “N×M” 集成问题(即每个AI与数据源的集成都需要定制代码)。
MCP支持对可用工具和上下文的动态发现,实现以下功能:
- 使AI助手能够访问企业知识库中的相关信息。
- 使智能体能够在不同系统之间进行推理和链式操作。
它正迅速获得关注:像OpenAI、Google DeepMind、Oracle等主要参与者都在采用它,以使AI系统更具可组合性和互操作性。
在当今的智能AI领域,MCP至关重要,因为它允许模型在现实世界系统中发挥有意义的作用,而不是成为孤立的黑盒。
使用Python开发MCP服务器
最简单的方法是使用 FastMCP 库。
示例:
- 在 Minimal MCP Server 中,你将找到一个优秀的最小化示例,该服务器公开了两个工具,并可选择使用 JWT 进行保护。
如果你想从更简单的示例开始,可以查看 如何开始开发MCP。它更简单,不支持JWT令牌。
如何测试
如果你想快速测试你开发的MCP服务器(或这里提供的最小化示例),可以使用 Streamlit UI。
在Streamlit应用程序中,你可以:
- 指定MCP服务器的URL(默认值在 mcp_servers_config.py 中)。
- 选择OCI生成式AI中可用的模型之一。
- 测试使用MCP服务器公开的工具回答问题。
在 llm_with_mcp.py 中,有工具调用循环的完整实现。
语义搜索
本仓库中有一个完整的MCP服务器实现,它基于Oracle 23AI实现了语义搜索。 要使用它,你只需要:
- 将文档加载到Oracle数据库中。
- 在config_private.py中设置正确的配置以连接到数据库。
代码可在 这里 找到。
通过新的 langchain-oci集成库 可以访问Oracle 23AI向量搜索。
添加安全性
如果你想将MCP服务器投入生产,需要在多个层面添加安全性。
仅提及几个重要点:
- 不要直接将MCP服务器暴露在互联网上。
- 与MCP服务器的通信必须加密(例如,使用TLS)。
- 要对客户端进行身份验证和授权。
使用OCI服务,你可以采取以下措施来实现适当的安全级别:
- 可以在前面放置一个OCI API网关,将其用作TLS终止点。
- 可以启用使用JWT令牌进行身份验证。
- 可以使用OCI IAM生成JWT令牌。
- 可以使用OCI网络安全功能。
更多详细信息请参考专门页面。
将MCP语义搜索与ChatGPT集成
如果你部署了 MCP语义搜索 服务器,可以在开发者模式下测试与ChatGPT的集成。它提供了一个符合OpenAI规范的搜索工具。
不久后,我们将添加一个完全符合OpenAI规范的服务器,该服务器可集成到深度研究中。该服务器必须实现两种方法(搜索和获取),并严格遵循OpenAI规范。
初始实现可在 这里 找到。
详细信息可在 这里 查看。
集成OCI ADB Select AI
另一个选择是使用MCP服务器将OCI SelectAI集成到ChatGPT或其他支持MCP的助手中。 通过这种方式,你可以对数据库模式进行完整的文本转SQL搜索。然后,AI助手可以处理你检索到的数据。
一个示例可在 这里 找到。
有关Select AI的配置,请参阅 这里。
微信扫一扫