惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Schneier on Security
Schneier on Security
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Tenable Blog
P
Proofpoint News Feed
V
Vulnerabilities – Threatpost
Project Zero
Project Zero
Latest news
Latest news
S
Schneier on Security
C
Cyber Attacks, Cyber Crime and Cyber Security
T
Threatpost
Simon Willison's Weblog
Simon Willison's Weblog
Cyberwarzone
Cyberwarzone
T
The Exploit Database - CXSecurity.com
C
CERT Recently Published Vulnerability Notes
Spread Privacy
Spread Privacy
Cisco Talos Blog
Cisco Talos Blog
T
Troy Hunt's Blog
S
Secure Thoughts
C
Cisco Blogs
Application and Cybersecurity Blog
Application and Cybersecurity Blog
V2EX - 技术
V2EX - 技术
Hacker News: Ask HN
Hacker News: Ask HN
O
OpenAI News
L
LINUX DO - 最新话题
T
Threat Research - Cisco Blogs
Recent Commits to openclaw:main
Recent Commits to openclaw:main
P
Palo Alto Networks Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
博客园_首页
月光博客
月光博客
博客园 - 【当耐特】
雷峰网
雷峰网
C
CXSECURITY Database RSS Feed - CXSecurity.com
博客园 - 叶小钗
aimingoo的专栏
aimingoo的专栏
L
Lohrmann on Cybersecurity
D
DataBreaches.Net
美团技术团队
B
Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
有赞技术团队
有赞技术团队
D
Docker
Jina AI
Jina AI
The GitHub Blog
The GitHub Blog
H
Hacker News: Front Page
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
AI
AI
Martin Fowler
Martin Fowler
Attack and Defense Labs
Attack and Defense Labs
小众软件
小众软件

博客园_首页

Plist 二进制格式 Milvus 和 PGVector,哪个更好? OpenClaw 已过时?在 VS Code 中运行 Hermes Agent! 第30篇文章:一个大三计科生的自白 Manim如何在数学公式中完美显示中文? Docker 部署 RocketMQ 5 并发编程核心概念辨析 C#事务处理最佳实践:别再让“主表存了、明细丢了”的破事发生 CLI 是什么?为什么大厂突然集体卷命令行? 【从0到1构建一个ClaudeAgent】协作-自主Agent UIImageView 设置图片不生效的原因排查 最小二乘问题详解20:无先验约束下的增量式SFM自由网平差 痞子衡嵌入式:大话双核i.MXRT1180之XIP应用里借助MU实现可靠Flash IAP的方法 AI Chat 封装, SemanticKerne.AiProvider.Unified 已发布 Windows下右键编辑js文件无法打开记事本——在注册表中使用环境变量 在后台服务中使用 Scoped 服务,为什么总是报错? H200 安装驱动并使用sglang启动模型 wireshark 抓包Trap上报告警内容 我用 AI 辅助开发了一系列小工具(2):图片压缩工具 [A Primer On MC and CC] 2.1 Memory Consistency 1 - 指令重排序和 SC 模型 Oracle数据库SCN推进技术详解与实践指南 玩转控件:封装个带图片的Label控件 Claude Code 4.7 真正该升级的不是模型,而是你的工作流 前端小白一句话,AI 帮我做了个颜值拉满的桌面媒体播放器。当代码不再是门槛,一句话编程就是现实。 5. WorkBuddy: 小龙虾的灵魂三件套,让你的小龙虾不只是工具 SQLite 分片方案实战:三种分片策略的深度对比 告别简陋 UI!一款基于 Fluent Design 和基于 WinUI 的开源免费、现代化的 Avalonia UI 控件库 关于二进制排列组合枚举的总结 AI开发-python-LangGraph框架(3-27-LangGraph从零实现大模型智能决策工作流) ElasticSearch主分片和副本分片概念详解 【002】HTTPS 粗解:证书、TLS 握手与对后端配置的影响 Hermes Agent 一周暴涨五万 Star,但我劝你别急着追 明明连接的是Redis的DB0,为什么能查到DB3的数据? 【从0到1构建一个ClaudeAgent】协作-Agent团队 熟悉电子元器件之后,电子小白下一步该怎么走? MAF快速入门(23)通过C#类定义Skills .NET 高级开发 | 手写一个对象映射框架 FastAPI数据库ORM怎么选?我肝了三个Demo后,终于不再纠结了 mysqldump 参数拾遗:在遗忘与铭记之间 C# .NET 周刊|2026年3月5期 Claude code入门 - 陈彦斌 一文学习入门 ThingsBoard 开源物联网平台 GitHub 热门项目 | 2026年04月16日 如何为GIT设置全局勾子,为每次提交追加信息 Number.isFinite和isFinite与isNaN()和Number.isNaN的区别 PortSwigger SQL注入LAB2 推荐一个测试人必备的Skills,从功能到性能全搞定(附详细实操和安装下载方式) 筑基期:掌握Odoo基础核心知识点02(Odoo XML 开发方式详解) GLM模型这么火,咱们用vllm也咧一个呗! 深入理解 AbortController:从底层原理到跨语言设计哲学 字符串学习笔记 多租户系统框架的基础模块设计和分析设计 Apache SeaTunnel Zeta 为什么能做到“又快又稳”? AI开发-python-LangGraph框架(3-26-LangGraph基本概念及第一个简单样例) Vue 3 组件通信,别只会用 Props 和 Emits 了,这几个狠活儿你得看看 ElasticSearch7.X版本配置密码 用Manim实现动态交点计算--从一个动点问题说起 团结引擎+Addressable+Instant Game打包抖音小游戏 function call 实战:让 LLM 自动判断 pod 异常、调用日志工具并完成故障分析 bubseek —— 让 Agent 的足迹,变成团队的洞察 通过 C# 读取并导出 PDF 书签 如何用 GitHub Actions 实现 Steam 自动化发布 【从0到1构建一个ClaudeAgent】并发-后台任务 .NET 高级开发 | 定制 ASP.NET Core 框架 电子小白:什么是运算放大器(运放) zero2Agent:面向大厂面试的 Agent 工程教程,从概念到生产的完整学习路线 堆上的ORW HC32F460 USB CDC通信异常:非对齐访问异常排查 20260413-Hyperbridge 攻击事件:发生在默克尔山上的验证绕过 那些喊着AI 要淘汰你的人,正在靠你的焦虑赚大钱! 深度学习进阶(八)Swin Transformer 最小二乘问题详解19:带先验约束的增量式SFM优化与实现 SnapTranslate 3.0 正式发布:全局划词翻译 + 完整英语学习闭环,一站式搞定查词、记词、复习 工作的意义、工作的困难认知再思考 .NET + AI 进阶实战:基于类的技能开发 - 打造可治理的 Agent 能力模块 【从0到1构建一个ClaudeAgent】规划与协调-技能 上周热点回顾(4.6-4.12) 电子小白的工具三件套:面包板、杜邦线、万能板 单表五亿数据的查询优化 | Mysql、StarRocks 2. WorkBuddy:从“我是谁”到“帮我干活” C# 如何减少代码运行时间:7 个实战技巧 基于HelixToolkit.SharpDX 渲染3D模型 - 笺上知微 从零开始的双臂具身VLA起源及现阶段发展综述 - SkyXZ 记对 xonsh shell 的使用, 脚本编写, 迁移及调优 - pluvium27 受够了Vibe Coding的失控?换个起点,让AI事半功倍 从开始配置漏洞环境到漏洞复现流程 - 難しい 关于10年工作经验的程序员对OpenClaw的实战经验分享以及看法 - 虚无境 Any metadata 的内存布局 C# .NET 周刊|2026年3月2期 - InCerry 我帮你测过了,测试圈排名第二的 Skill 依然很牛逼 Skill Discovery | 无监督技能发现的经典工作总结 - MoonOut 上下文工程是什么?过时了么?一文讲明白! - 一枫说码 开了 TUN 模式还是直连?90% 的人都踩过这个坑 AScript扩展多种脚本语言 - rockey627 AI 学习笔记:Agent 的记忆机制 你能被装进一个文件里吗?——7 万人把同事"蒸馏"成了 AI - 我没有三颗心脏 Claude Code 通关手册(七):给 AI 装上技能包——Skills 完全指南 - 暮色之狐 在浏览器中快速编辑代码:VSCode Web 集成实践 - Newbe36524 蒸馏自己 skill?基于 Deepseek 的蒸馏器,丐版蒸馏方式,简单便捷 - To_Carpe_Diem Spring AI Aliababa和AgentScope,哪个更好? - 苏三说技术
基于FastMCP打通业务系统与AI:构建智能协作新范式
ITman彪叔 · 2026-05-07 · via 博客园_首页

背景:AI 大潮下的中台建设

在 AI 浪潮席卷而来的当下,我们团队紧跟技术趋势,近期致力于构建企业级 AI 中台我们的技术栈涵盖了 OCR 识别 智能语音交互 语音数字人 知识库 等核心模块

AI中台和数字孪生系统的结合,赋予数字孪生系统 语音交互,智能播报,业务助手等能力。 **从“可视”到“可听、可说、可思” **

为了验证 AI 在实际业务中的落地能力,我们利用 AI Agent 进行了多轮业务预演。在预演过程中,为了让 Dify 智能体具备操作本地文件、查询本地数据库等“手脚”能力,我们决定通过 MCP (Model Context Protocol) 协议接入自研的 FastMCP 服务。

一、引言:AI时代的业务系统变革

在大模型蓬勃发展的今天,企业面临的核心挑战不再是"是否需要AI",而是"如何让AI真正融入业务流程"。传统业务系统与AI能力之间存在着天然的鸿沟——业务数据被禁锢在各类专业系统中,而AI模型却缺乏对业务场景的深度理解。FastMCP(Fast Model Context Protocol)正是为打破这道壁垒而生的技术桥梁。

二、架构愿景:从数据孤岛到智能协同

2.1 核心架构理念

FastMCP服务作为业务系统与AI模型之间的中间层,实现了三大核心价值:

┌─────────────────────────────────────────────────────────────┐
│ AI 大模型(如GPT、LLM) │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Agent / Function Calling │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ FastMCP Service Layer │ │
│ │ ┌─────────────────────────────────────────────┐ │ │
│ │ │ • API Key 认证 • 接口路由管理 │ │ │
│ │ │ • 参数标准化 • 安全策略执行 │ │ │
│ │ │ • 请求日志审计 • 流量控制限流 │ │ │
│ │ └─────────────────────────────────────────────┘ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ 业务系统层(Node.js服务) │ │
│ │ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ /api/alarms│ │ /api/assets │ • 告警管理 │ │
│ │ │ (告警查询) │ │ (资产管理) │ • 资产管理 │ │
│ │ └─────────────┘ └─────────────┘ • 配置管理 │ │
│ └─────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘

2.2 设计原则

原则 实现策略 价值体现
松耦合 通过HTTP接口抽象业务能力 业务系统独立演进,不依赖AI技术栈
安全性 API Key认证、请求审计 确保敏感业务数据安全可控
可扩展 动态接口注册机制 快速接入新业务能力
标准化 MCP协议规范 AI模型可统一调用各类业务系统

三、技术实现:FastMCP服务核心机制

3.1 服务初始化与接口注册

# FastMCP服务初始化
mcp = FastMCP()
registered_tools: List[str] = []

def register_all_tools() -> None:
    """动态注册所有业务接口作为MCP工具"""
    for interface in store.list_interfaces():
        registered_tools.append(create_tool_for_interface(interface))

技术要点:

  • 通过interface_store持久化管理接口元数据
  • 支持接口的CRUD操作,无需重启服务即可更新能力列表
  • 接口定义包含URL、HTTP方法、参数描述等完整信息

3.2 动态工具生成机制

FastMCP的核心创新在于能够根据接口元数据自动生成可被AI调用的工具函数:

def create_tool_for_interface(interface: Dict[str, Any]) -> str:
    """根据接口定义动态生成MCP工具"""
    interface_id = interface["id"]
    interface_path = interface["url"]
    interface_method = interface["method"]
    interface_parameters = interface.get("parameters", {})
    
    # 提取URL路径参数(如 /api/asset/:id)
    path_params = []
    import re
    path_param_pattern = re.compile(r':([a-zA-Z0-9_]+)')
    matches = path_param_pattern.findall(interface_path)
    for match in matches:
        path_params.append(match)
    
    # 构建工具函数签名
    # 支持路径参数替换、请求体参数组装、动态代码执行
    ...

核心技术亮点:

  1. 参数标准化:自动将URL路径参数(如:id)转换为函数参数
  2. 动态代码生成:使用exec()动态创建符合MCP规范的工具函数
  3. 智能参数映射:支持复杂参数结构的自动转换

3.3 API Key认证体系

安全性是企业级应用的基石,FastMCP服务实现了灵活的API Key认证机制:

# 支持多种API Key配置方式
DEFAULT_API_KEYS = ["api-key-001", "api-key-002"]
MCP_API_KEY = os.getenv("MCP_API_KEY", None)
env_api_keys = os.getenv("MCP_API_KEYS", "")
MCP_API_KEYS = env_api_keys.split(",") if env_api_keys else DEFAULT_API_KEYS

def api_key_auth_middleware(request):
    """API Key认证中间件"""
    if not MCP_API_KEY and not MCP_API_KEYS:
        return request
    
    # 支持两种认证方式
    auth_header = request.headers.get("Authorization", "")
    if auth_header.startswith("Bearer "):
        provided_key = auth_header[7:]
    else:
        provided_key = request.headers.get("X-API-Key", "")
    
    # 多Key验证机制
    valid_keys = []
    if MCP_API_KEY:
        valid_keys.append(MCP_API_KEY)
    if MCP_API_KEYS:
        valid_keys.extend([k.strip() for k in MCP_API_KEYS if k.strip()])
    
    if not provided_key or provided_key not in valid_keys:
        raise HTTPException(status_code=401, detail="Unauthorized")
    
    return request

安全特性:

  • 灵活配置:支持环境变量配置或代码内置默认Key
  • 多Key支持:允许同时配置多个有效API Key
  • 双Header支持:兼容Authorization: BearerX-API-Key两种方式
  • 渐进式安全:未配置Key时自动跳过认证,便于开发调试

3.4 HTTP请求代理机制

作为业务系统的代理层,FastMCP负责将标准化的工具调用转换为实际的HTTP请求:

def make_request(url: str, method: str = "GET", data: Dict[str, Any] = None) -> Dict[str, Any]:
    """统一的HTTP请求封装"""
    try:
        if data is not None and method.upper() != "GET":
            data_json = json.dumps(data).encode("utf-8")
            headers = {"Content-Type": "application/json"}
            req = urllib.request.Request(url, data=data_json, headers=headers, method=method)
        else:
            req = urllib.request.Request(url, method=method)

        with urllib.request.urlopen(req, timeout=REQUEST_TIMEOUT_SECONDS) as response:
            response_data = response.read().decode("utf-8")
            return json.loads(response_data)
    
    except urllib.error.HTTPError as e:
        # 上游服务错误处理
        ...

可靠性保障:

  • 超时控制:防止慢请求导致服务阻塞
  • 错误透传:保留上游服务的错误信息便于排查
  • 协议适配:自动处理GET/POST等不同HTTP方法

四、应用场景:解锁业务数据价值

4.1 智能告警分析

AI模型通过调用api_1工具查询告警数据:

Agent: 请查询2026年4月20日至21日的严重告警
└─ 调用工具: api_1(startTime="2026-04-20T00:00:00Z", endTime="2026-04-21T23:59:59Z")
└─ FastMCP代理请求: POST http://localhost:4000/api/alarms
└─ 返回: 3条严重告警记录
└─ Agent总结: 该时间段共有3条严重告警,分别是CPU使用率过高、内存溢出和数据库连接失败

4.2 资产管理自动化

通过api_4工具实现资产状态更新:

Agent: 将资产AST007的状态更新为维护中
└─ 调用工具: api_4(id="AST007", status="maintenance")
└─ FastMCP路径参数替换: /api/asset/AST007
└─ FastMCP代理请求: PUT http://localhost:4000/api/asset/AST007
└─ 返回: 更新成功
└─ Agent确认: 已成功将文件存储服务器标记为维护状态

五、战略价值:构建AI原生业务架构

5.1 技术赋能业务

FastMCP不仅仅是技术工具,更是企业数字化转型的战略抓手:

  1. 降低AI接入门槛:业务团队无需掌握AI技术即可享受智能化红利
  2. 保护现有投资:无需重构legacy系统,通过API接口快速接入
  3. 加速创新周期:新业务能力可在分钟级内注册为AI可用工具

5.2 典型应用场景

场景 业务价值 技术实现
智能客服 AI自动查询业务系统回答用户问题 调用查询类工具
自动化运维 AI分析告警并执行修复操作 调用更新/操作类工具
数据分析报告 AI自动收集多系统数据生成报告 聚合多个工具调用
智能决策支持 AI基于业务数据提供决策建议 综合分析工具返回结果

5.3 未来演进方向

当前阶段:API接口注册与调用

中期目标:业务流程编排与工作流引擎

长期愿景:AI Agent自主决策与执行

六、总结

FastMCP服务通过标准化的接口抽象和安全的认证机制,为业务系统与AI模型之间构建了一座稳固的桥梁。它不仅解决了当下的集成难题,更为企业未来的智能化演进奠定了坚实基础。

在AI与业务深度融合的时代,FastMCP不仅是技术实现,更是一种全新的业务协作范式——让AI真正理解业务、融入业务、赋能业务。

最后,关注公号“ITMan彪叔” 可以添加作者微信进行交流,及时收到更多有价值的文章