This is a viewer only at the moment see the article on how this works.
To update the preview hit Ctrl-Alt-R (or ⌘-Alt-R on Mac) or Enter to refresh. The Save icon lets you save the markdown file to disk
This is a preview from the server running through my markdig pipeline
MCP 是一个运输机*,}不是建筑
Tuesday, 20 January 2026
@"_# 我如何建立 MCP 服务器@?"}是错误的疑问 @MS K2}
SDKs 存在=.}一个LLM能在几秒内 将一具尸体架在手脚上 *.}真正的问题就是~:
MCP 服务器在一定不能是“?”的系统中应该扮演什么角色?
现在稀缺的技巧正在设计 围绕系统周围 MCP:当局 ,授权 MS K2可审计性,和确定控制 □.MCP处理运输
这篇文章解释我如何使用MCP 没有代理人@ , @ 自主性 @ MS K1 @ 或氛围以及为什么大多数MCP案例都重现了我们所看到的同样问题,
这是 "+LLMs 作为构件的 & MSSK2 中的 {2} 部分 。 @ title 为何LLM女士失败为传感器 包含使用 LLMs 进行感知的类别错误@.}此条涵盖将 MCP 用作架构的分类错误 @.
实际上,MCP究竟是什么? (吗?
MCP {(} 模式背景协议})是 电线协议它在移动 :
- 投入和产出
- 气囊
- 工具元数据
- 能力发现
确实如此 否:
- 决定 何时 工具应该运行
- 校正真相
- 强制执行信任
- 管理副作用
flowchart LR
subgraph MCP["MCP: What It Does"]
Schema[Schema Discovery] --> Transport[Transport Layer]
Transport --> Invoke[Tool Invocation]
Invoke --> Response[Structured Response]
end
subgraph NotMCP["Not MCP's Job"]
When[When to run?]
Trust[Is this true?]
Should[Should we act?]
Safe[Is this safe?]
end
style MCP fill:none,stroke:#16a34a,stroke-width:2px
style NotMCP fill:none,stroke:#dc2626,stroke-width:2px
style Schema fill:none,stroke:#059669,stroke-width:2px
style Transport fill:none,stroke:#059669,stroke-width:2px
style Invoke fill:none,stroke:#059669,stroke-width:2px
style Response fill:none,stroke:#059669,stroke-width:2px
style When fill:none,stroke:#dc2626,stroke-width:2px
style Trust fill:none,stroke:#dc2626,stroke-width:2px
style Should fill:none,stroke:#dc2626,stroke-width:2px
style Safe fill:none,stroke:#dc2626,stroke-width:2px
MCP 与 OpenAPI 相比,它更接近于一个代理框架@.
如果您使用 MCP 作为推理阶层@ , @ 您% MS K2 已经做了相同分类错误 部分#1.
如果 MCP 是运输, 那么建筑结构的寿命 高于它=:管弦 ,Policy_,}验证°,固性\ .本篇文章的其余部分是这个层+.
核心原则_:}提案与决定
- 建议的概率组成部分
- 确定性系统决定
在我的系统中
- LLM 是 从未 当局主管部门
- 工具 从未 自治自主
- 每个MCCP反应都是a 提议不是事实
"#Deterministic_"}这里的意思是简单化=.Q 规则@- @governed_,}可复制},和可审计.
flowchart TD
subgraph Proposers["Proposers (Probabilistic)"]
LLM[LLM Synthesis]
MCP1[MCP Tool Response]
MCP2[MCP Tool Response]
end
subgraph Constrainer["Constrainer (Deterministic)"]
Validate[Validate Proposals]
Compare[Compare Confidence]
Policy[Apply Policy Rules]
Decide[Accept / Reject / Escalate]
end
subgraph Persistence["Persistence (Facts)"]
Facts[(Verified Facts<br/>With Provenance)]
end
LLM --> Validate
MCP1 --> Validate
MCP2 --> Validate
Validate --> Compare
Compare --> Policy
Policy --> Decide
Decide --> Facts
style Proposers fill:none,stroke:#d97706,stroke-width:2px
style Constrainer fill:none,stroke:#2563eb,stroke-width:2px
style Persistence fill:none,stroke:#16a34a,stroke-width:2px
style LLM fill:none,stroke:#d97706,stroke-width:2px
style MCP1 fill:none,stroke:#d97706,stroke-width:2px
style MCP2 fill:none,stroke:#d97706,stroke-width:2px
style Validate fill:none,stroke:#2563eb,stroke-width:2px
style Compare fill:none,stroke:#2563eb,stroke-width:2px
style Policy fill:none,stroke:#2563eb,stroke-width:2px
style Decide fill:none,stroke:#2563eb,stroke-width:2px
style Facts fill:none,stroke:#16a34a,stroke-width:3px
MCP 服务器决定@' @ t 决定 @ .} 约束器决定.{
为何「"#Tools @Tools@"}是错误的心理模式?
默认 MCP 框架为 @ : @
- @" 将方法作为工具来应用@"
- @ "_ @ 让模型选择该调用哪个工具来调用@"}
- @"Ask 执行前的授權@"
这失败是因为可以预测的原因。 @: @%
- 工具描述成为提示“LLM”从措辞中推断出意图,
- 工具选择流: 依据描述相似性选择工具
- 权限提示是 UX,不安全:# 模式对话框 does MS K1}% t 防止错误工具被选中@ info
- 无可重播放功能: 您可以\ @ MS K1} t复制一个会话, 因为工具选择是概率的
工具前 “(2023)”为LLM工具使用“:”模型建立了理论基础。 何时 来调用工具以测量实际结果@. 这是基础性工作 @.}但是在培训时间操作的工具组 =-不是运行时代理系统,带有任意的 MCP端点._T {'t%"let 模型选择自由\MS K6 _#- it' 客观衡量结果.* 见 我比较了Voyager,}工具前端{,}和结构化方法 为何结构比辉煌强 @.+#
重新框架@: @% MCP 端点发布信号 @ , @ not action * .*
- 信号被键入@ , @ breed @ MS K1和可归属
- 每个信号都有自信和证据指示器
- 自然语言是一种 演示演示文图层# , # 不是基底 #
flowchart LR
subgraph Wrong["❌ Tools Mental Model"]
Desc[Tool Description<br/>'Gets weather for city'] --> LLM1[LLM Chooses]
LLM1 --> Execute[Execute Action]
Execute --> Trust1[Trust Result?]
end
subgraph Right["✓ Signals Mental Model"]
Schema2[Typed Schema<br/>city: string, units: enum] --> Invoke2[Deterministic Invoke]
Invoke2 --> Signal[Signal Response<br/>+ confidence + provenance]
Signal --> Validate2[Constrainer Validates]
end
style Wrong fill:none,stroke:#dc2626,stroke-width:2px
style Right fill:none,stroke:#16a34a,stroke-width:2px
style Desc fill:none,stroke:#dc2626,stroke-width:2px
style LLM1 fill:none,stroke:#dc2626,stroke-width:2px
style Execute fill:none,stroke:#dc2626,stroke-width:2px
style Trust1 fill:none,stroke:#dc2626,stroke-width:2px
style Schema2 fill:none,stroke:#16a34a,stroke-width:2px
style Invoke2 fill:none,stroke:#16a34a,stroke-width:2px
style Signal fill:none,stroke:#16a34a,stroke-width:2px
style Validate2 fill:none,stroke:#16a34a,stroke-width:2px
交接时的信号合同
我系统中每个 MCP 端点都有一个:
- 一种预想@ :_ 键入输入和输出@ MS K1} 不是free\ - form text
- 信任@: @ 如何确定这一结果 @ ? @ @ I(0.0–1.0) @
- 证明书@:这是从何而来? ?~ (Frame ID#,}框框框,}波形区域=)}
- 证据指针@: @ what can be contracted 独立验证的东西@? @
没有免费的-/text 当局@ .}没有 MSSK2_ 最佳努力 @ MS K3\ 答案 @ MPK4
生产系统实例
@|_ 信号@|_信任来源 @MS K2}证据指针#| |--------|-------------------|------------------| | OCR 文本提取@| 佛罗伦萨-2 信任得分 @| 圆框坐标 @MS K4 |图像分类@|CLIP相似得分 @|嵌入的 +类似得分+参考图象IDQ| “|”音频转录“|” Whiseper word - effective | Timestamp range @| -=YTET -伊甸园字幕组=- 翻译:
规则@: @ 如果结果不能被验证 @ , @ it is'_ t接受 @ MPK4}
这一原则与 设计规则-=YTET 翻译:
控制台教练=:}《人人跳过》
大多数 MCP 教程显示@: @%
- 定义工具
- 连接到 LLM
- 让它运行
缺少的部件是 限制 “-”这个决定性的逻辑 也就是“:”
- 评估相互竞争的建议
- 执行政策
- 决定什么是持续存在的,哪些遭到拒绝
- 信心低时升级的路线
flowchart TD
subgraph Sources["Signal Sources"]
Heuristics[Heuristics<br/>Text-likeliness: 0.3]
LocalModel[Local Model<br/>Florence-2 OCR: 0.85]
LLMCall[LLM Escalation<br/>GPT-4V: 0.92]
end
subgraph Constrainer["Constrainer Logic"]
Receive[Receive All Signals]
Check{Confidence<br/>≥ 0.7?}
Cross[Cross-Validate<br/>Signals Agree?]
Accept[Accept as Fact]
Reject[Reject / Log]
Escalate[Escalate to<br/>Higher Tier]
end
Heuristics --> Receive
LocalModel --> Receive
LLMCall --> Receive
Receive --> Check
Check -->|Yes| Cross
Check -->|No| Escalate
Cross -->|Yes| Accept
Cross -->|No| Reject
style Sources fill:none,stroke:#d97706,stroke-width:2px
style Constrainer fill:none,stroke:#2563eb,stroke-width:2px
style Heuristics fill:none,stroke:#d97706,stroke-width:2px
style LocalModel fill:none,stroke:#d97706,stroke-width:2px
style LLMCall fill:none,stroke:#d97706,stroke-width:2px
style Receive fill:none,stroke:#2563eb,stroke-width:2px
style Check fill:none,stroke:#2563eb,stroke-width:2px
style Cross fill:none,stroke:#2563eb,stroke-width:2px
style Accept fill:none,stroke:#16a34a,stroke-width:2px
style Reject fill:none,stroke:#dc2626,stroke-width:2px
style Escalate fill:none,stroke:#7c3aed,stroke-width:2px
真正的约束性决定 @:
- 拒绝 LLM 字幕, 当超自然主义对文本有分歧时@ - @ likeition
- 更低的--信任度,但证明在高端□--信心幻灯文字上具有OCR
- 只有当本地模范信心 @<#@0.7}才升格为视觉LLM
MCP 连接组件@. 约束符调节它们 @.
将LLM关上(和为什么我做"MSC1"
我的 MCP 服务器仍然使用LLM 已禁用@. @%
这是一种退化模式... .... 初级基本模式.
如果您的系统在 LLM 不可用时停止工作 @ , @ 有限责任公司正在做一项工作, 它应该@ MS K1}% t 应该有\ .} *
这也是同样的原则背后 为何结构比辉煌更优丽@ :_ do'} 期待有一种模式可以做一切事情 @ I._ 分布于一个系统中, 在其中确定性成分能处理它们擅长的东西的系统里
核心职能@: @%
- 摘取事实的决定性总结
- 通过嵌入和过滤器进行的第一个检索@- @% 1
- 对事实数据库进行结构性查询
LLM 成为:
- 合成层 @ ( @ optional @ MPK1
- 解释引擎@(}当被要求时 @)
- 丰富自然语言输出的“(”
法学硕士是 否:
- 决策人
- 内存
- 真相引擎
flowchart TD
subgraph AlwaysOn["Always On (Deterministic)"]
Sensors[Sensors + Heuristics]
Local[Local Models<br/>Florence-2, Whisper, CLIP]
Facts[(Facts Database)]
Query[Query Engine]
end
subgraph Optional["Optional (LLM)"]
Synthesis[Natural Language Synthesis]
Explain[Explanation Generation]
end
Sensors --> Local
Local --> Facts
Facts --> Query
Query --> Synthesis
Query --> Explain
style AlwaysOn fill:none,stroke:#16a34a,stroke-width:2px
style Optional fill:none,stroke:#6b7280,stroke-width:2px,stroke-dasharray: 5 5
style Sensors fill:none,stroke:#16a34a,stroke-width:2px
style Local fill:none,stroke:#16a34a,stroke-width:2px
style Facts fill:none,stroke:#16a34a,stroke-width:3px
style Query fill:none,stroke:#16a34a,stroke-width:2px
style Synthesis fill:none,stroke:#6b7280,stroke-width:2px
style Explain fill:none,stroke:#6b7280,stroke-width:2px
为什么这重要?
| 福利 | LLM□-要求的系统MS K3LM-备选系统MPK5 | |
|---|---|---|
| 费用成本 固定基础设施 | ||
| 可靠性 | }核心功能继续 | |
| 适用性 M | mock LLM回应 | 确定论的断言 |
| 信托信任信信托基金 模型上说:"证据链" |
作为边界的MCP*,不是一体化
我视MCP为 硬边界:
- 与程序隔离: MCP 服务器在不同的程序中运行
- 明确输入@/ @output:无共同的变异状态
- 无环境环境背景@: 每一个呼叫都根据明确的输入来评估 ,}*不是对话残留
- 定型合同: Schema 违反为错误@,不是警告
这与 @ : @
- 共享内存的 In-处理剂
- 包含隐藏上下文累积的链条
- 在前转影响行为的情况下, " converational"工具使用
为什么边界重要? :
- 重放: 通过重放输入来复制任何会话
- 审计每个信号都有可追踪来源
- 确定性测试@: 相同的输入 *%→}同样的输出
- 遵守遵守情况@:可解释的决策链
flowchart LR
subgraph Process1["Process: Orchestrator"]
Orch[Orchestrator<br/>Constrainer Logic]
end
subgraph Process2["Process: MCP Server 1"]
MCP1[Image Analysis<br/>Signals]
end
subgraph Process3["Process: MCP Server 2"]
MCP2[Audio Analysis<br/>Signals]
end
subgraph Process4["Process: MCP Server 3"]
MCP3[Video Analysis<br/>Signals]
end
Orch <-->|MCP Protocol| MCP1
Orch <-->|MCP Protocol| MCP2
Orch <-->|MCP Protocol| MCP3
style Process1 fill:none,stroke:#2563eb,stroke-width:2px
style Process2 fill:none,stroke:#16a34a,stroke-width:2px
style Process3 fill:none,stroke:#16a34a,stroke-width:2px
style Process4 fill:none,stroke:#16a34a,stroke-width:2px
style Orch fill:none,stroke:#2563eb,stroke-width:2px
style MCP1 fill:none,stroke:#16a34a,stroke-width:2px
style MCP2 fill:none,stroke:#16a34a,stroke-width:2px
style MCP3 fill:none,stroke:#16a34a,stroke-width:2px
失败模式 MCP 示例
来自未受限制 MCP 使用中的实际失败案例@: @ @%
| “ | ”失败模式“ | 原因“ | 缓解”“MSC3” |
|---|---|---|---|
| 工具幻觉 “ | ” 说明渗漏到LLM推理中“ | ” 小描述“MS K2” Schema - 首个设计“MSC4” | |
| 超过-QAEAG 执行 @ | #示范调用工具@"}只是用来检查#"#\ | # Cons 训练员的大门 | |
| 气相流 @ | _工具行为改变@,_Schema does'}{MSKQt | } 版本的 schemas*,}合同测试 *# | } |
| 沉默部分故障 | 工具返回部分数据@, 模式收益 @ | 信任阈值_, 完整性检查 @MS K4 | |
| LLM 过度自信 | 示范将工具输出作为地面真相处理 | ||
| 能力升级 “+”政策策略 预算“ | ” |
共同线索@: @% 这些失败之所以发生,是因为LLM被信任为权威.
修正@: @% LLM女士提议 , 约束者决定 @,}事实依然存在.
使用得当时 MCP 在 @ ( @ majectly@ ) @
MCP对:来说是优秀的
- 能力发现:现有信号的运行时间罗列
- Inter- 处理组成: 部件之间的清洁边界
- 工具互操作性: 與任何 MCP-相容的客戶端
- 模型- - 不可知整合在不改变信号合同的情况下互换 :
MCP是 否:
- 代理机构框架
- 推理系统
- 安全层
- 信托边界
使用 MCP 为部件之间结构化通信的电线协议@. @%
MCP 停止的地方
MCP 如何标准化模式和工具交换环境@. 它没有界定在什么条件下允许谁采取行动,或决定是如何审计的\MS K3
也存在其他办法将这些限制正规化。 “(”有时被称为“行动能力协议”,“,” ACPZAAP}):授权,证明‘,审计线索’{.*
这篇文章是关于ACP=.}It'}关于设计原则的 :} 交通运输和交通运输治理是不同的关注事项.
MCP告诉你 如何 调用工具@. @% 必须另做决定 是否 您应该在我的系统里 ,... ...'...
Memo MCP 与生产MCP
| MPK2生产MCP | |||
|---|---|---|---|
| 工具描述 @ | _自然语言@,}详细描述 | Minimal,_schema}-}第一位# | } |
| 由谁决定呼吁 -=YTET -伊甸园字幕组=- 翻译: | |||
| 反应格式 @ | @ free@ MS K1_ 格式文本 @ O | } 充满信心的输入信号 @ I | @ |
| 审定 -=YTET -伊甸园字幕组=- 翻译: | |||
| LLM 依赖性 -=YTET -伊甸园字幕组=- 翻译: | |||
| 重放 @ | Non-确定性 □ | 完全可复制@ | |
| 审计线索 “ | ”和“对话日志” |
闭幕式
MCP 启用 组成构成. 确定因素使 信任信托基金. LLM 启用 及时性.
但只有如果:
概率建议“:”和确定论持续存在 “.”
没有约束的 MCP 只是快速注射 额外的步骤.
将最后一步合成 . 使 LLM 可以选择\ .} 让每个事实都可追踪 *MS K2 *
关键术语
- MCP (示范背景协议_): 用于工具发现和在程序间调用的工具的有线协议
- 教练教练员确定性逻辑评估提案,
- 信号: 填充响应并充满信心@, 出处 @, 和证据指针
- 投标人@:_ 任何未经授权表示事实的元件@(LILMQ,}本地模型{,超自然=)}
- 证据指针@ :_ 引用可核实源@ MS K1_ 绑定框@ I, timetamp @ MPK3} 嵌入@
相关条款
上一个序列中的@: @% 为何LLM女士失败为传感器
理论基础 @:
- 为何结构要超越辉煌 @ : @ voyager_ ,}工具前端@ MS K2 @ and DiSE - 单星分布认知的例数-模范才华
- 工具前纸张 -LLMs基础工作学习使用工具
执行模式@: