AWS AgentCore + Neo4j 集成
概述
AWS AgentCore 是亚马逊的框架无关代理运行时和编排平台。它提供托管运行时、网关功能、情景记忆以及对生产代理部署的综合可观测性。
核心功能
-
框架无关运行时(支持任何 Python/JavaScript 框架)
-
原生 MCP + A2A 协议支持
-
多种部署模型:Docker 镜像、代码方式(S3)和网关代理
-
IAM 与 OAuth 2.0 身份验证
-
全面的 AWS CDK 基础设施即代码支持
官方资源
示例
本目录包含三个端到端示例,每个示例展示了 AWS AgentCore 与 Neo4j 通过 Neo4j MCP 服务器 的不同集成模式。所有示例均使用 AWS CDK 部署,并默认使用公共 Neo4j 公司演示数据库:neo4j+s://demo.neo4jlabs.com:7687。
| # | 示例 | Pattern (模式) | 认证模型 | 部署 |
|---|---|---|---|---|
1 |
使用预构建 Neo4j MCP Docker 镜像的 AgentCore 运行时 |
IAM + 通过自定义请求头的每次请求 Neo4j 凭证 |
在 CDK 中引用的预构建 ECR 镜像 |
|
2 |
AgentCore 网关代理到 Fargate 托管的 MCP |
OAuth 2.0 → Lambda 拦截器 → 基本认证 |
ECS Fargate + ALB + 自定义域名 |
|
3 |
使用基于代码的 Python MCP 服务器的 AgentCore 运行时 |
IAM + Secrets Manager |
Python 包由 CDK 上传到 S3 |
示例 1:MCP 运行时 - Docker
将来自 ECR 的预构建 Neo4j MCP Docker 镜像部署为 AgentCore 运行时。Docker 镜像在 CDK 配置中被引用并作为托管运行时运行。Neo4j 凭证通过 X-Amzn-Bedrock-AgentCore-Runtime-Custom-Authorization 请求头在每次请求时传递。
→ 完整文档
示例 2:网关 - 外部 MCP
使用 AgentCore 网关作为反向代理,位于运行官方 Neo4j MCP 服务器的 ECS Fargate 之前,后者位于带有自定义域名和 TLS 的公共 ALB 后。Lambda 请求拦截器将传入的 OAuth 令牌转换为从 Secrets Manager 获取的 Neo4j 基本认证凭证。
→ 完整文档
示例 3:MCP 运行时 - Neo4j Python SDK
将用 Python 编写的自定义 MCP 服务器(FastMCP + Neo4j Python 驱动)部署为基于代码的 AgentCore 运行时。Python 源码通过 uv 打包依赖后上传至 S3,直接运行——无需 Docker 镜像。Neo4j 凭证在启动时从 Secrets Manager 加载。
→ 完整文档
先决条件
所有示例均需要
-
具备 Bedrock 和 AgentCore 访问权限的 AWS 账户
-
配置了适当凭据的 AWS CLI
-
已安装 AWS CDK (
npm install -g aws-cdk) -
Python 3.9+
示例 2 还需要一个 Route53 托管域和用于自定义域的 ACM 证书。
资源
-
Neo4j 演示数据库 -
companies/companies