open-jobsite
Open Jobsite
Open Jobsite 是一个开源的、本地优先的施工运营服务器,面向 goose 和其他 Model Context Protocol (MCP) 客户端。它将现场证据转化为可审查的计算、每日日志、估算和变更单,同时让来源引用、单位运算、假设、排除项和人工审批边界保持可见。
本仓库是一个可运行的 v0.1 赠款验证 MVP。它使用合成数据,不进行任何网络调用,绝不发送消息、提交价格、下订单或批准任何工件。
为什么存在
现场工作始于粗略的笔记、照片、草图、测量数据、收据和对话,而不是整洁的数据库行。通用型智能体可以起草精心修饰的答案,却隐藏数字的来源。Open Jobsite 采取相反的做法:
证据优先: 记录保留用户提供的来源引用和隐私状态。
确定性运算: 工程量工具使用十进制运算,并公开公式和中间值。
默认草稿: 每份估算和变更单都明确处于未批准状态。
本地且可移植: JSON 文件保存在用户控制的文件夹中,工具接口是标准 MCP。
贴合现场的工作流: 可移植的技能涵盖每日日志、限定范围的估算和变更单。
Related MCP server: Keystone MCP Server
工作流程
创建本地项目。
记录带有来源引用的笔记或测量数据。
运行确定性工程量计算。
起草与证据 ID 关联的工件。
在任何外部操作之前,在服务器之外审查和编辑草稿。
工具
工具 | 用途 | 外部副作用 |
| 创建本地 JSON 作业记录 | 仅本地文件 |
| 记录带来源的笔记、测量数据或媒体引用 | 仅本地文件 |
| 读取完整的本地记录 | 无 |
| 面积加上声明的损耗系数 | 无 |
| 以立方码为单位的矩形体积 | 无 |
| 整张板材加上声明的损耗 | 无 |
| 整根标准型材加上声明的损耗 | 无 |
| 起草与证据关联的工时汇总 | 仅本地文件 |
| 起草带单位运算的定价范围 | 仅本地文件 |
| 起草范围/成本/进度变更 | 仅本地文件 |
财务和作业工件始终返回:
{
"status": "draft",
"requires_human_approval": true,
"external_action_performed": false
}安装与测试
要求:Python 3.12+ 和 uv。
uv sync --extra dev
uv run pytest
uv run open-jobsite --version通过 stdio 运行 MCP 服务器:
uv run open-jobsite合成演示
demo/ 文件夹包含一个合成端到端工作流、一个提示词、固定的预期结果、一个 Windows goose CLI 启动器,以及一个启动真实 STDIO 服务器的预检。使用以下命令运行预检:
uv run python demo/run_demo.py预检也是 GitHub Actions 的一部分。它验证与未来屏幕录制计划相同的证据、计算、估算、每日日志和审批门控流程。v0.1 不包含录制内容。
数据默认存储在 .open-jobsite-data/。可以通过 --data-dir PATH 或 OPEN_JOBSITE_DATA_DIR 环境变量选择其他本地文件夹。
连接到 goose Desktop
首先构建并测试本仓库。然后在 goose Desktop 中添加自定义 STDIO 扩展:
命令:
uv的绝对路径(Windows 上为where uv)参数:
run --directory C:\absolute\path\to\open-jobsite open-jobsite环境:可选地将
OPEN_JOBSITE_DATA_DIR设置为私有的作业数据文件夹
在公开演示中仅使用合成数据。该合成提示词已在 Windows 上通过 goose CLI 1.46.0 运行;请参阅验证记录。Berd 本地 MCP 运行尚未验证。
已验证的 v0.1 证据
截至 2026-08-27:
28 项自动化测试在 Windows 上通过。
全部五个合成基准用例通过,包括四个精确数值用例和三个审批不变量。
真实 STDIO 预检产生 108 平方英尺、四张板材、CAD 344.00 小计、CAD 378.40 总计和 6.00 工时。
一次隔离的 Windows goose CLI 运行产生了两条证据记录和两份草稿工件,数值与预期一致。
这些是狭义的软件检查,并非对现场准确性、估算准确性、规范合规性或用户成果的声明。
MCP 参数示例
复杂输入使用类型化数组,以便 goose 能在 MCP 模式中看到必填字段。对于 draft_estimate,一个最小的 line_items 值是:
[
{
"description": "Synthetic wallboard",
"quantity": 3,
"unit": "sheet",
"unit_cost": 18.5,
"evidence_ids": ["ev-example"]
}
]证据 ID 必须已存在于同一项目中。
仓库结构
src/open_jobsite/:确定性核心、本地存储、工件、MCP 工具skills/:面向 goose 的可移植现场工作流说明benchmark/:合成的、机器可读的评估用例demo/:可复现的预检、Windows goose 启动器和录制计划examples/:一个合成的示例项目记录tests/:核心和进程内 MCP 协议测试docs/architecture.md:组件和信任边界设计docs/threat-model.md:当前风险与缓解措施
安全性与局限性
此 alpha 版本不构成估算、法律、合同、税务、结构、规范或安全建议。它不检查现场条件、验证图纸、优化切割、确认价格,也不能替代合格的专业人员。即使计算正确,仍可能基于错误的测量或假设。请对照最新的图纸、合同、规范、制造商说明和现场条件审查所有输出。
请勿将租户姓名、地址、凭据、私人照片、客户记录或专有价格数据放入公开示例或错误报告中。请参阅 SECURITY.md 和 docs/threat-model.md。
路线图
Q1: 稳定模式、25 个基准用例、CI、Windows goose/Berd 演示、上游 goose 贡献
Q2: 语音/照片/PDF 适配器、双语工作流、溯源审查 MCP App、三个安全记录的试点
Q3: 修订历史、变更检测、本地价格手册适配器、安全加固、三个外部试点
Q4: v1.0、50+ 基准任务、五名现场用户的可用性研究、维护者文档
参见 CONTRIBUTING.md 参与贡献。采用 Apache-2.0 许可。
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables multi-project workspaces to share structured notes, API contracts, and handoff messages via a local SQLite database, with versioning and read tracking.GPL 3.0
- AlicenseNot gradedqualityBmaintenanceEnables construction professionals to query project documents with conflict-aware RAG, detect contradictions, and trace change impacts through any MCP client.430MIT
- AlicenseBqualityAmaintenanceLocal-first MCP server that transforms civil case PDFs into queryable cases with structural provenance, evidence IDs, and page-level verification for drafting and factual review.22Apache 2.0
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to perform construction takeoff and estimating from drawing PDFs, including upload, scale calibration, trade-based takeoff, pricing, and proposal export.MIT
Related MCP Connectors
Construction takeoff and estimating for AI agents. Measure a drawing PDF, export a priced estimate.
Auditable construction takeoffs with locked waste and conservative purchase rounding.
Independent pre-transaction audit for construction estimates. Free, and every verdict recomputes.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/raoulstongea/open-jobsite'
If you have feedback or need assistance with the MCP directory API, please join our Discord server