HubSpot如何构建MCP服务器:AI代理与CRM的深度集成

HubSpot产品执行副总裁Karen Ng分享他们如何在CRM产品中实现Model Context Protocol服务器,包括技术架构选择、认证实现、与现有系统集成等核心技术细节,以及AI代理技术的实际应用场景。

HubSpot如何构建MCP服务器:AI代理与CRM的深度集成

技术背景与决策

Model Context Protocol(MCP)是一个开源协议,用于连接AI代理与外部系统,最初由Anthropic开发。HubSpot决定构建自己的MCP服务器是基于几个关键技术考量:

技术标准演进:在云计算时代,REST API因微服务间的通信需求而兴起。在AI时代,MCP作为数据传递协议,专注于代理、上下文和工具交互。

实现时间考量:HubSpot在不到四周内完成了与OpenAI的连接器开发,成为首个实现此功能的CRM厂商。

技术架构实现

服务器架构选择

HubSpot实现了两种MCP服务器:

  • 核心API服务器:基于现有REST API构建,暴露核心原始API,包括联系人、公司和交易的CRM搜索API
  • OpenAI专用连接器:具有搜索和获取组件的MCP规范

技术栈决策

  • 编程语言:基于Java生态系统
  • 微服务框架:使用Dropwizard微服务
  • 传输协议:支持可流式传输的HTTP传输

认证与安全实现

  • OAuth集成:MCP原生缺乏完整的认证协议支持,HubSpot实现了OAuth 2.0协议
  • 权限管理:用户权限映射到HubSpot席位和层级
  • 范围控制:确保用户只能访问被授权的CRM数据

技术挑战与解决方案

协议标准化挑战

  • 命名规范不一致:在不同MCP服务器实现中存在Snake case与Camel case的不一致
  • 规范演进:MCP协议仍在快速发展中,HubSpot需要跟踪多个版本规范

系统集成复杂度

  • 与现有RPC系统集成:需要扩展Java MCP SDK以支持HTTP流式传输协议
  • 微服务架构适配:在HubSpot现有的微服务架构中集成MCP网关

开发效率优化

  • AI辅助开发:使用Claude Code生成所需的代码组件和模板版本
  • 注解系统:创建MCP工具的注解系统,简化RPC Java方法描述

性能与扩展性

架构设计决策

  • 无状态设计:采用短生命周期的HTTP请求,避免长连接带来的扩展性问题
  • 只读初始版本:降低初始实现复杂度,确保系统稳定性

扩展性考虑

  • 流量管理:基于短HTTP调用的设计能够处理大规模请求
  • 服务发现:MCP网关自动发现跨服务的工具

实际应用场景

客户使用案例

客户能够通过MCP服务器执行复杂查询,如:“在过去90天内,分析所有新联系人和公司的区域分布,并识别转化率最高的群体”

内部开发应用

  • 测试数据生成:产品经理使用本地MCP服务器生成符合特定行业需求的交易和客户测试数据
  • 模式生成:通过连接MCP服务器与Claude Code,自动生成API模式

技术演进与未来规划

协议发展

MCP仍在演进中,需要解决:

  • 完整的代理到代理协议支持
  • 更多用例适配
  • 工具发现和验证机制

技术路线图

  • 扩展MCP服务器功能,支持更多场景
  • 开发MCP客户端,解决工具发现和注册服务
  • 探索代理到代理协议的集成可能性

开源贡献

HubSpot积极向Java MCP SDK贡献代码,并通过工程博客分享大规模远程MCP服务器实现的经验,推动开源生态系统发展。


本文基于技术访谈内容整理,聚焦于MCP协议在CRM系统中的实际技术实现细节。

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