HubSpot的MCP实施:连接AI代理与CRM系统
背景介绍
Model Context Protocol(MCP)是一个开源协议,用于将AI代理连接到外部系统,最初由Anthropic开发。HubSpot作为客户关系管理(CRM)平台,决定构建自己的MCP服务器来实现AI代理与CRM产品的集成。
技术决策与标准演进
为什么选择MCP
HubSpot产品执行副总裁Karen Ng拥有编程语言背景,她观察到在云计算时代,REST API因微服务间的通信需求而兴起。在AI时代,尚未出现统一协议,而MCP恰好满足了代理、上下文和工具之间数据传输的需求。
关键转折点出现在OpenAI采纳MCP后,各大厂商(微软、谷歌、OpenAI)在48小时内纷纷跟进。这对HubSpot来说意味着需要快速理解协议并适配现有API。
构建vs购买决策
HubSpot评估了多种方案,包括Cloudflare等现成的MCP服务器产品,但最终决定自行构建,主要原因包括:
- 集成需求:需要与现有企业RPC系统协同工作
- 开发速度:在4周内完成了与OpenAI的连接器开发
- 认证控制:需要确保用户只能访问其有权查看的HubSpot CRM数据
技术实现细节
架构选择
HubSpot实现了两个远程MCP服务器和一个本地服务器:
- 核心API服务器:基于现有REST API,暴露核心原始API和CRM搜索API
- OpenAI专用连接器:具有搜索和获取组件的MCP规范
技术栈
- 基础框架:Java MCP SDK扩展
- 微服务架构:Dropwizard微服务
- 传输协议:可流式传输的HTTP传输
- 认证方案:OAuth 2.0协议
实现挑战
认证与授权 MCP原生缺乏完整的认证协议支持。HubSpot需要实现:
- OAuth范围管理
- 用户权限映射到HubSpot席位和层级
- 确保数据安全访问
技术一致性
- 不同MCP服务器实现中的命名规范不一致(Snake case vs Camel case)
- Java MCP SDK仍处于演进阶段,需要确保支持所有必需协议
性能与扩展性
采用无状态设计和短时HTTP请求,第一版为只读实现,避免了负载和服务器问题。这种架构支持大规模用户权限强制执行。
内部工具与开发流程
AI辅助开发
团队使用Claude Code生成所需的代码组件,特别是:
- 模板版本
- RPC Java方法的注解系统
- 模式生成
这显著加速了开发过程,使团队能够快速创建MCP工具的注解系统。
开发文化
HubSpot内部AI工具采用率高达70-80%,工程、产品和设计团队都在使用这些工具进行:
- 测试数据和演示数据生成
- 原型制作
- 工作流程优化
未来展望
MCP的发展方向
Karen认为MCP将在AI时代扮演重要角色,但需要演进以支持更多用例:
- 完整的代理到代理协议
- 更多认证和范围管理功能
- 标准化进程
HubSpot的路线图
- 扩展MCP服务器功能,支持更多场景
- 开发MCP客户端,解决服务发现和注册问题
- 探索代理到代理协议的集成可能性
业务影响
作为首个提供MCP服务器和OpenAI连接器的CRM公司,HubSpot通过这一技术实现:
- 为75%使用ChatGPT的客户提供核心价值
- 实现快速原型制作和产品迭代
- 在AI时代保持技术领先地位
这一实施不仅展示了MCP协议的实际应用价值,也为其他企业提供了在现有技术栈中集成AI代理能力的参考模式。