OpenAI Agents SDK + Neo4j 集成

概述

OpenAI Agents SDK 是 OpenAI 用于构建 AI 代理的 Python 工具包。基于轻量且灵活的架构,它提供原生工具集成、代理之间的无缝交接、输入/输出验证的安全护栏,以及生产必备功能,如追踪、错误处理和会话管理。

安装

pip install openai-agents

核心功能

  • 原生 MCP(模型上下文协议)服务器支持

  • 使用 @function_tool 装饰器创建自定义工具

  • 用于输入/输出验证的安全护栏

  • 内置追踪和错误处理

  • LiteLLM 集成以支持其他大模型提供商

示例

Notebook 描述

openai_agents.ipynb

OpenAI Agent SDK 与 Neo4j 集成的演练指南,涵盖 MCP 服务器设置、自定义工具创建和查询执行

扩展点

1. MCP 集成

OpenAI Agent SDK 具备 原生 MCP 支持。MCP 服务器通过 mcp_servers 参数直接添加到 Agent 中。

  • Neo4j MCP 服务器: 利用官方 Neo4j MCP 服务器,实现对模式读取和 Cypher 执行的即插即用集成

2. 直接 Neo4j 集成

若需在 MCP 服务器之外获得更细粒度的控制,可直接使用 Neo4j Python 驱动

  • 驱动: 用于在自定义工具中执行 Cypher 的 neo4j 异步驱动

3. 自定义工具/函数

使用 @function_tool 装饰器定义自定义 Neo4j 工具

  • 通过函数签名和文档字符串指定工具名称和描述

  • 通过 tools 参数直接将工具传递给 Agent

MCP 身份验证

支持的机制

环境变量(STDIO 传输) - 对于本地 MCP 服务器,凭证通过生成时的 env 参数传递。

HTTP 头部(HTTP/SSE 传输) - 对于远程 MCP 服务器,通过 headers 参数传递 API 密钥或 Bearer 令牌(例如 Authorization: Basic ${CREDENTIALS}Authorization: Bearer ${TOKEN})。

OAuth/Bearer 令牌(托管 MCP) - 对于通过 HostedMCPTool 的 OpenAI 连接器,使用带有访问令牌的 authorization 字段。

配置示例(可流式 HTTP 传输)

credentials = base64.b64encode(f"{username}:{password}".encode()).decode()

async with MCPServerStreamableHttp(
    name="Neo4j server",
    params={
        "url": "https://:80/mcp",
        "headers": {"Authorization": f"Basic {credentials}"},
        "timeout": 10,
    },
) as server:
    agent = Agent(
        name="Assistant",
        instructions="Use the MCP tools to answer the questions.",
        mcp_servers=[server],
    )
© . This site is unofficial and not affiliated with Neo4j, Inc.