Token导航 LogoToken导航TokenDH.com
MCP Quoting System logo
运维云端未说明官方级别未说明来源级核验

MCP Quoting System

MCP Server

基于MCP协议的智能报价系统,通过分析历史报价数据为新请求提供准确的成本估算和交付时间预测。

工具数

6

提示词数

0

GitHub Stars

0

资源数

0
TypeScript云端部署Docker

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

r-long

提供方

r-long

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

MCP报价系统

基于MCP(模型上下文协议)的智能报价系统,将收到的RFP与历史报价进行比较,以生成准确的成本估算和交付周期。

🚀 快速入门(Windows)

新系统? 只需双击 START.bat 并选择选项\[1\]进行自动设置!

请参阅这些指南:

可用批处理文件

  • START.bat -主交互式启动器(推荐)⭐
  • setup.bat -首次安装向导
  • start-dev.bat -启动开发服务器
  • start-prod.bat -启动生产服务器
  • quick-test.bat -自动化测试
  • stop.bat -停止服务器
  • 浴室-README.md 获取完整列表

______________________________________________________________________

特性

  • RFP解析:从基于文本的征求建议书中自动提取材料、工艺、数量、公差和其他关键信息
  • 历史匹配:使用智能相似性评分将新请求与过去的报价进行比较
  • 成本估算:基于活动的成本计算,包括材料、加工、劳动力、工具和间接费用计算
  • 交付周期预测:根据数量、流程和历史数据估算交付时间
  • 信心评分:根据数据完整性和匹配质量提供低/中/高置信度评级
  • 人类在循环:发送报价前需要获得批准,并附有完整的审计跟踪
  • 幂等性:防止重复处理同一征求建议书

建筑

该系统被构建为具有以下功能的MCP服务器:

MCP功能(能力)

  1. ingestRfp -解析RFP文本并提取结构化信息
  2. findSimilarQuotes -在历史数据库中搜索类似的过去报价
  3. 估计成本交付周期 -计算成本和交付周期估算
  4. 生成报价 -创建格式化的报价文档
  5. approveQuote -将报价标记为已批准(人工参与)
  6. 发送报价 -通过电子邮件发送报价(启用模拟运行)

协调者

  • 评估报价和起草报价 -协调所有功能以生成完整的报价评估

安装

npm install

配置

  1. 复制 .env.example.env:
cp .env.example .env
  1. 编辑 .env 使用您的设置:
PORT=3789
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USER=your-email@example.com
SMTP_PASS=your-app-password

用法

启动服务器

开发模式:

npm run dev

生产方式:

npm run build
npm start

加载样本历史数据

将示例报价复制到主数据库:

cp data/sample-quotes.json data/quotes.json

API调用示例

1.完整报价评估(协调员)

curl -X POST http://localhost:3789/mcp/invoke/evaluateRfpAndDraftQuote \
  -H "Content-Type: application/json" \
  -d '{
    "rfp": {
      "rawText": "We need 200 pcs of a 6061-T6 aluminum widget, CNC machined, anodize finish, tolerance +/-0.005, delivery by 2025-02-28. Contact: buyer@acme.com",
      "qty": 200,
      "contactEmail": "buyer@acme.com",
      "customerName": "Acme Corp"
    }
  }'

2.获得格式化的评论

curl -X POST http://localhost:3789/mcp/utility/formatReview \
  -H "Content-Type: application/json" \
  -d '{
    "result": {}
  }'

3.查看历史报价

curl http://localhost:3789/mcp/utility/historicalQuotes

4.添加历史报价

curl -X POST http://localhost:3789/mcp/utility/addHistoricalQuote \
  -H "Content-Type: application/json" \
  -d '{
    "id": "Q-NEW",
    "quoteDate": "2024-11-12T10:00:00Z",
    "customerName": "New Customer",
    "normalized": {
      "material": "steel",
      "processes": ["laser", "bend"],
      "qtyRange": [51, 100],
      "tolerances": "+/-0.010"
    },
    "costPerUnit": 25.00,
    "totalCost": 1875.00,
    "leadDays": 14,
    "approved": true
  }'

相似性匹配

该系统使用基于规则的加权组件相似性评分:

  • 材料 (35%):完全匹配、家庭匹配或部分匹配
  • 过程 (30%):所需流程的重叠
  • 数量 (20%):相同范围或相邻范围
  • 公差 (10%):匹配精度要求
  • 完成 (5%):表面处理匹配

信心阈值

  • 高可信 (≥85%):与以往工作非常相似,估计可靠
  • 中等信心 (70-85%):相似家庭,谨慎调整
  • 低置信度 (\<70%):新型工作,需要工程师审查

成本估算

基于活动的成本计算模型:

Total Cost = Material + Processing + Labor + Tooling + Overhead + Margin

组件

  • 材料成本:单价×数量(来自材料价格表)
  • 加工成本:工艺时间总和×机器小时率
  • 人工成本:操作员时间×人工费率
  • 工具摊销:设置成本/数量
  • 开销:直接成本的15%
  • 边距:20%的利润率
  • 应急:低置信度报价为10%

交付周期计算

Lead Time = Procurement + Setup + Run Time + QA + Shipping

调整基于:

  • 数量(体积越大=交付周期越长)
  • 工艺复杂性(热处理、镀层增加时间)
  • 类似报价的历史实际交付周期

数据存储

目前使用JSON文件 data/ 目录:

  • quotes.json -历史报价数据库
  • evaluations.json -最近的征求建议书评估(最近100次)

对于生产,考虑迁移到:

  • PostgreSQL用于关系数据
  • 用于语义相似性搜索的向量数据库(Pinecone、Weaviate)
  • Redis用于缓存和幂等性

安全特性

  1. 人类在循环:所有报价默认为“草稿”状态
  2. 模拟电子邮件:电子邮件发送需要明确启用
  3. 幂等性:重复的RFP返回缓存结果
  4. 审计跟踪:记录所有带有时间戳的评估
  5. 信心评分:标记不确定的估计值以供审查

扩展系统

添加新材料

编辑 src/config.ts:

materials: {
  'titanium-grade-5': 18.0,
  // Add more...
}

添加新流程

编辑 src/config.ts:

processes: {
  'EDM': 40,  // minutes per part
  'Grinding': 25,
  // Add more...
}

集成矢量搜索

替换中的基于规则的匹配器 src/matcher.ts 与:

  1. 用于RFP文本的OpenAI嵌入
  2. 矢量数据库(松果体、织物、FAISS)
  3. 余弦相似度搜索
  4. 元数据过滤(材料、过程)

添加数据库后端

替换 src/storage.ts 使用数据库适配器:

  • PostgreSQL使用Prisma或TypeORM
  • 实现连接池
  • 添加事务以确保数据完整性

测试

创建测试RFP:

// Test 1: High similarity match
{
  "rawText": "Need 250 units of 6061-T6 aluminum, CNC milled and anodized, +/-0.005 tolerance",
  "qty": 250
}

// Test 2: New material
{
  "rawText": "100 titanium brackets, laser cut and polished",
  "qty": 100
}

// Test 3: Low detail (low confidence)
{
  "rawText": "We need some metal parts",
  "qty": 50
}

API 文档

启动服务器时,请参阅控制台输出中的完整API文档。

故障排除

未找到历史匹配项

  • 检查一下 data/quotes.json 存在并有内容
  • 验证材料名称是否匹配(不区分大小写)
  • 中的相似性阈值较低 src/config.ts

成本似乎不正确

  • 审查材料价格 src/config.ts
  • 调整机器小时费率和人工费率
  • 检查间接费用和利润百分比

交付周期太短/太长

  • 调整 defaultLeadDays 在配置中
  • 审查流程时间估算
  • 检查基于数量的缩放逻辑

未来的增强功能

  1. 基于ML的相似性:根据历史报价训练模型以赢得模式
  2. 图纸分析:从CAD/PDF图纸中提取特征
  3. 供应商整合:供应商提供的实时材料交付周期
  4. CRM集成:自动填充客户信息
  5. 仪表板用户界面:React前端供工程师审查/批准
  6. 分析:盈亏跟踪、定价优化
  7. 多种货币:国际报价支持
  8. 修订跟踪:报价版本历史

许可证

麻省理工学院

支持

如有任何问题或疑问,请联系您的系统管理员。

目录标签

目录标签

TypeScript云端部署Docker报价系统本地部署成本估算交付预测RFP解析历史数据匹配

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

部署方式(deploymentType,部署类型)

local-only

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明nonelocal-only

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP