HubSpot如何实施MCP协议连接AI代理与CRM系统

HubSpot产品副总裁分享公司如何实施Model Context Protocol远程服务器,详细探讨MCP在AI时代的标准地位、技术实现挑战、认证授权解决方案,以及如何将MCP服务器集成到现有Java技术栈中。

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服务器和一个本地服务器:

  1. 核心API服务器:基于现有REST API,暴露核心原始API和CRM搜索API
  2. 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代理能力的参考模式。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计