Back to MCP directory
publicPublicdnsLocal runtime

mcp-oci-integration

该项目提供了在Oracle OCI上开发和运行MCP服务器的代码示例,包括Python开发、AI代理集成、语义搜索、SelectAI集成以及与ChatGPT等AI助手的连接,帮助构建企业级AI应用。

article

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?

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的配置,请参阅 这里

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client