使用说明
MCP示例快速入门
此存储库显示了如何连接 代理SDK 到真正的MCP服务器。捆绑 codex_mcp.py 脚本现在演示如何查询 背景7 通过stdio传输获取新代码文档。您可以将相同的模式应用于Codex或任何其他支持MCP的工具链。
先决条件
- Python 3.10+
venv - Node.js 18+
pip install agents-sdk(或任何提供agents堆栈中的模块)- 可选:Context7 API密钥存储在
CONTEXT7_API_KEY更高利率限制的环境变量 - 可选:
codex login如果您计划将此工作流与Codex CLI配对
1.创建并激活Python环境
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
pip install agents-sdk openai-agents python-dotenv
2.使用npm安装MCP服务器
npm init -y # skip if package.json already exists
npm install @upstash/context7-mcp # Context7 documentation server
npm install @openai/codex # Codex CLI
把包裹放在里面 node_modules/ 避免每次重新下载 npx 被调用。
3.运行AVD Terraform示例
source .venv/bin/activate
python codex_mcp.py
# If validation later surfaces issues:
# python codex_mcp.py --resume terraform/manual-validation.log
该脚本启动两个MCP服务器:
@upstash/context7-mcp–提取最新的AzureRM Terraform文档。codex mcp-server-赋予食品法典委员会代理人执行权。
接下来会发生什么:
- 这 AVD解决方案架构师 代理编写交付简报并将其保存到
terraform/AVD_BRIEF.md. - 这 平台安全审查员 代理文件护栏
terraform/docs/security-review.md. - 这 地形实施工程师 代理查询Context7以获取最新的azure rm文档(保存到
terraform/context7-notes.md),构建第一块基础架构——核心Terraform文件avd_core模块、未来模块的占位符读取,以及scripts/session-host-bootstrap.ps1--并奔跑terraform fmt -recursive terraform.
典型输出包括:
- 核心IaC:
terraform/main.tf,terraform/variables.tf,terraform/outputs.tf,terraform/providers.tf,terraform/versions.tf. - 模块:
terraform/modules/avd_core/*(已实现),加上占位符读数modules/avd_host_pool/和modules/avd_session_hosts/. - 脚本和文档:
terraform/scripts/session-host-bootstrap.ps1,terraform/README.md,terraform/docs/security-review.md.
跑步后
- 更新变量默认值或提供与您的环境匹配的tfvars值(订阅ID、存储路径等)。
- 当您有网络访问权限时,运行:将输出保存到
terraform -chdir=terraform init -backend=false terraform -chdir=terraform validateterraform/manual-validation.log如果需要修复,则将其反馈给实现代理:python codex_mcp.py --resume terraform/manual-validation.log - 扩展占位符模块(
modules/avd_host_pool,modules/avd_session_hosts)在投入生产之前。 - 替换中的示例FSLogix UNC路径
scripts/session-host-bootstrap.ps1与您的实际Azure文件共享。
4.与您的代理工作流程集成
- 将角色定义和护栏存储在
AGENTS.md - 复用
codex_mcp.py作为其他IaC或应用场景(FastAPI、数据管道等)的模板 - 扩展Terraform指令或用您自己的提示替换它们,以针对不同的堆栈
可选清理
如果需要回收空间并暂时停止使用MCP示例,请删除Node包:
rm -rf node_modules package-lock.json
重新安装相关软件包(@upstash/context7-mcp, @openai/codex)在再次运行脚本之前。
