ServiceNow AI代理结构
🆘 免责声明:这不是正式的ServiceNow文件或指南。 🆘
🚀 看 贡献 报告任何问题或讨论此仓库中的内容。
______________________________________________________________________
MCP服务器实施-托管:非平台
使用OAuth 2.1+PKCE身份验证进行模型上下文协议(MCP)服务器部署的全面实施指南,以集成到ServiceNow AI平台实例。
💡注: 这不是关于在ServiceNow实例(即在平台上)中设置MCP服务器。
快速导航
TL;DR-如果你对其中的创作、思想和工作不感兴趣,那么 去这里 然后直接进入部署步骤。
______________________________________________________________________
开始之前
此存储库是一个指南,而不是一个部署包。
您将花费:
- 6-12小时 阅读文档和理解模式
- 4-20小时 配置部署基础架构(取决于平台和经验)
- 2-4小时 测试ServiceNow集成
如果您需要一个完全配置的部署解决方案,此存储库提供了基础,但需要基础设施专业知识才能完成。
如果你想 学习 如何使用OAuth 2.1+PKCE构建生产质量的MCP服务器,你来对地方了。
______________________________________________________________________
前言
该项目代表了ServiceNow从业者和Claude(Anthropic的人工智能助理)之间的合作努力,为ServiceNow社区创建全面的、生产就绪的MCP服务器实现。
这个项目是如何结合在一起的
该项目的大部分内容,包括文档、代码模板、实现指南和技术规范,都是通过与Claude AI的迭代协作生成的。这项工作展示了AI如何在领域专业知识和现实世界实现经验的指导下加速技术文档和参考实现开发。
合作过程:
- 专业领域: 实用的ServiceNow和MCP服务器实施知识、架构决策和生产部署经验
- 内容生成: Claude AI根据需求和反馈生成文档、代码模板、伪代码实现和技术规范
- 迭代优化: 多个审查周期,以确保技术准确性、完整性和与生产现实的一致性
- 质量保证: 根据工作实施和ServiceNow AI平台要求进行验证
是什么让这个独一无二
这不是一个理论指导——它基于实际的生产部署:
- 所有OAuth 2.1+PKCE模式都已通过ServiceNow实例验证
- 代码模板反映了在生产环境中运行的实际实现
- 架构决策基于运营经验,而不是猜测
- 文档包括从实际集成挑战中吸取的经验教训
关于人工智能辅助开发的注记
该项目在技术文档中展示了人类与人工智能协作的潜力:
- 速度: 在几天而不是几周内创建的全面文档
- 一致性: 贯穿始终的标准化模式和术语
- 完整性: 7800+行详细的实施指南
- 多语言支持: JavaScript、TypeScript、Python以及伪代码中的模板
- 专业素质: 生产就绪代码和企业级文档
然而,人类专业知识仍然至关重要:
- 架构决策和设计选择
- 生产验证和测试
- 现实世界中的问题解决和故障排除
- 质量控制和精度验证
- 社区理解和定位
致谢
克劳德(人类学): 内容生成、文档结构、代码模板创建、技术写作和基于反馈的迭代改进。
人类贡献者: 领域专业知识、架构指导、生产验证、质量保证、项目愿景和最终编辑控制。
此次合作表明,最好的技术文档将人工智能生成全面、结构良好的内容的能力与人类在领域知识、现实世界验证和质量保证方面的专业知识相结合。
______________________________________________________________________
概述
此存储库提供 综合实施指南和生产质量参考规范 用于构建将ServiceNow云实例与本地AI基础设施集成的安全MCP服务器。
目标受众: 经验丰富的从业者:
- 开发语言专业知识(JavaScript、TypeScript、Python或翻译技能)
- 部署基础设施知识(虚拟机、容器、云平台)
- ServiceNow管理或开发经验
- 熟悉OAuth 2.1概念和HTTP/REST API
此存储库提供的内容:
- 7800多行综合实施文件
- 演示OAuth 2.1+PKCE模式的生产质量代码模板
- ServiceNow集成指南和协议合规模式
- 架构决策框架和安全最佳实践
你带来了什么:
- 基础设施配置和配置
- 特定于环境的设置(网络、TLS/HTTPS、机密管理)
- 为您的环境测试框架和验证
- 监控、记录和操作工具
- 根据您的工作流程量身定制的CI/CD管道
这解决了什么问题?
ServiceNow的人工智能平台能够实现强大的自动化和智能功能,但实施安全的MCP服务器需要:
- 了解复杂的OAuth 2.1+PKCE身份验证模式
- 正确实施MCP协议以实现ServiceNow集成
- 就存储、部署和安全性做出架构决策
- 遵循安全强化的生产质量模式
此存储库解决了文档差距 通过提供:
- OAuth 2.1+PKCE身份验证的明确实施指南
- 展示安全最佳实践的生产质量代码
- ServiceNow特定的集成模式和协议合规性
- 存储和部署选择的架构决策框架
- 带有详细说明的多语言参考实现
此存储库不提供的内容:
- 每个基础设施配置的交钥匙部署脚本
- 特定于环境的基础设施设置(您的基础设施,您的选择)
- 预配置的监控、记录或操作工具
- 一刀切的解决方案(我们提供框架;您做出决策)
文档功能
实施指南
- 7800+条线路 涵盖5个部分的全面文档
- 渐进式学习路径: 基础→ 基础设施→ 协议→ 安全→ 部署
- 架构决策框架 用于存储、扩展和部署选择
- 生产模式 用于速率限制、审计日志记录和错误处理
- 明确的安全理由 对于每一个身份验证和授权决策
参考代码质量
- OAuth 2.1与PKCE:按照机器对机器模式完成实施
- JWT代币管理:安全的令牌生成、验证、黑名单和轮换
- MCP协议合规性:符合MCP规范要求
- ServiceNow集成:根据ServiceNow要求验证协议合规性
- 多语言支持:JavaScript、TypeScript、Python模板以及与语言无关的伪代码
ServiceNow特定指南
- 连接配置: 分步ServiceNow MCP客户端设置
- 身份验证模式: 具有信任边界解释的M2M认证
- 故障排除指南: 常见的集成问题和解决方案
- 测试进度: 连接→ Auth → 工具→ 集成验证
建筑
MCP服务器充当ServiceNow(经过身份验证的客户端)和本地AI服务之间的安全网关:
ServiceNow Instance → OAuth 2.1 Authentication → MCP Server → Local LLM (Ollama/etc)
↓
Redis (token blacklist)
File-based persistence
Rate limiting
Audit logging注: 此图显示了参考实现模式。您对存储(Redis/文件/数据库)、基础设施(VM/云/容器)和工具的部署选择将根据您的要求而有所不同。看 第2部分:核心基础设施 决策框架。
身份验证流程
ServiceNow处理用户身份验证,而MCP服务器管理客户端身份验证:
- ServiceNow使用客户端凭据请求访问令牌
- MCP服务器验证并发出JWT令牌
- ServiceNow在后续MCP请求中包含令牌
- MCP服务器验证令牌并路由到AI服务
文档
实施指南
完整的实施演练(5个部分共7800行):
- 第1部分:概述 -介绍和要求
- 第2部分:核心基础设施 -服务器基础架构
- 第3部分:协议和工具 -MCP协议和工具实现
- 第4部分:OAuth -OAuth 2.1身份验证和安全
- 第5部分:附录 -生产部署和运营
参考资料
代码模板 (全部 templates/ 文件夹)
所有模板都遵循命名约定: mcp-server-[language]-template.[ext]
- 伪代码模板:语言无关的参考实现
- JavaScript模板:本地/VM部署
- TypeScript模板:谷歌云部署
- Python模板:FastAPI实现
实施提示
- 实施提示:Go、Java、C#、Rust和其他语言指南
图表和视觉效果
快速开始
先决条件
启用AI平台的ServiceNow实例
选择您的实现语言:
- JavaScript/Node.js:Node.js 18+(本地部署)
- TypeScript:Node.js 18+(谷歌云运行优化)
- python:Python 3.9+(基于FastAPI)
引用的其他解决方案/资源(所有实施):
- Redis(用于令牌黑名单持久化)
- 当地LLM基础设施(Ollama、Calma.cpp等)
JavaScript/Node.js(本地部署)
# Fork repository on GitHub, then clone your fork
git clone https://github.com/YOUR-USERNAME/sn-mcp-server-design-offplatform.git
cd sn-mcp-server-design-offplatform
# Use the JavaScript template
cp templates/mcp-server-javascript-template.js server.js
# Install dependencies (you'll need to create package.json)
npm install express jsonwebtoken ioredis cors
# Configure environment
# Create .env file with your ServiceNow instance details
# Start server
node server.jsTypeScript(谷歌云部署)
TypeScript模板针对Google Cloud Run进行了优化。看 Google Cloud Run文档 以获取部署说明。
# Use the TypeScript template
cp templates/mcp-server-typescript-template.ts src/index.ts
# Follow Google Cloud Run deployment guidePython(FastAPI)
# Fork repository on GitHub, then clone your fork
git clone https://github.com/YOUR-USERNAME/sn-mcp-server-design-offplatform.git
cd sn-mcp-server-design-offplatform
# Use the Python template
cp templates/mcp-server-python-template.py main.py
# Install dependencies
pip install fastapi uvicorn pyjwt cryptography python-multipart
# Configure environment
# Create .env file with your ServiceNow instance details
# Start server
uvicorn main:app --host 0.0.0.0 --port 3000 --reload部署选项
基础设施
- 带Docker的Ubuntu虚拟机
- Ollama用于局部LLM推理
- PM2用于过程管理
- 通过Cloudflare隧道进行外部访问
- 使用JavaScript模板作为起点
谷歌云
- 用于无服务器部署的Cloud Run
- Redis内存存储
- 用于凭据的密钥管理器
- 云负载平衡
- 看 Google Cloud Run文档 用于部署指南
- 使用TypeScript模板作为起点
混合
- 本地LLM处理
- 基于云的MCP网关
- Cloudflare用于DNS和隧道
安全特性
- OAuth 2.1 JWT身份验证:行业标准客户端身份验证
- 代币黑名单:Redis支持撤销令牌的持久黑名单
- 速率限制:用可配置的阈值表示速率限制
- 审计日志:全面记录所有身份验证和请求事件
- HTTPS/TLS:所有通信的加密传输
- 基于环境的秘密:没有硬编码凭据
演出
生产部署的典型响应时间:
- 令牌生成:\<100ms
- 令牌验证:\<50ms
- MCP工具调用:\<500ms
- 端到端请求:\<1000ms
兼容性
- 立即服务:横滨(补丁9)发布,随后发布AI平台(苏黎世最新版本-推荐)
- MCP规范:JSON-RPC 2.0协议
- 语言:JavaScript(Node.js 18.x+)、TypeScript、Python 3.9+
贡献
对于问题、议题或贡献:
问题 -报告问题或请求功能:
讨论 -社区对话:
许可证
此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。
致谢及相关内容
- 专为ServiceNow和MCP从业者社区打造
- 实施OAuth 2.1标准 RFC 9068
- 遵循MCP规范 模型上下文协议
- 人体MCP规范
- ServiceNow文档
- ServiceNow开发人员文档
______________________________________________________________________
内置于❤️ 适用于ServiceNow和AI社区
