Skip to main content
Glama
raoulstongea

open-jobsite

by raoulstongea

Open Jobsite

Open Jobsite 是一个开源的、本地优先的施工运营服务器,面向 goose 和其他 Model Context Protocol (MCP) 客户端。它将现场证据转化为可审查的计算、每日日志、估算和变更单,同时让来源引用、单位运算、假设、排除项和人工审批边界保持可见。

本仓库是一个可运行的 v0.1 赠款验证 MVP。它使用合成数据,不进行任何网络调用,绝不发送消息、提交价格、下订单或批准任何工件。

为什么存在

现场工作始于粗略的笔记、照片、草图、测量数据、收据和对话,而不是整洁的数据库行。通用型智能体可以起草精心修饰的答案,却隐藏数字的来源。Open Jobsite 采取相反的做法:

  • 证据优先: 记录保留用户提供的来源引用和隐私状态。

  • 确定性运算: 工程量工具使用十进制运算,并公开公式和中间值。

  • 默认草稿: 每份估算和变更单都明确处于未批准状态。

  • 本地且可移植: JSON 文件保存在用户控制的文件夹中,工具接口是标准 MCP。

  • 贴合现场的工作流: 可移植的技能涵盖每日日志、限定范围的估算和变更单。

Related MCP server: Keystone MCP Server

工作流程

  1. 创建本地项目。

  2. 记录带有来源引用的笔记或测量数据。

  3. 运行确定性工程量计算。

  4. 起草与证据 ID 关联的工件。

  5. 在任何外部操作之前,在服务器之外审查和编辑草稿。

工具

工具

用途

外部副作用

create_project

创建本地 JSON 作业记录

仅本地文件

record_site_evidence

记录带来源的笔记、测量数据或媒体引用

仅本地文件

get_project

读取完整的本地记录

calculate_surface_area

面积加上声明的损耗系数

calculate_concrete_volume

以立方码为单位的矩形体积

calculate_sheet_count

整张板材加上声明的损耗

calculate_linear_pieces

整根标准型材加上声明的损耗

draft_daily_log

起草与证据关联的工时汇总

仅本地文件

draft_estimate

起草带单位运算的定价范围

仅本地文件

draft_change_order

起草范围/成本/进度变更

仅本地文件

财务和作业工件始终返回:

{
  "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 PATHOPEN_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.mddocs/threat-model.md

路线图

  • Q1: 稳定模式、25 个基准用例、CI、Windows goose/Berd 演示、上游 goose 贡献

  • Q2: 语音/照片/PDF 适配器、双语工作流、溯源审查 MCP App、三个安全记录的试点

  • Q3: 修订历史、变更检测、本地价格手册适配器、安全加固、三个外部试点

  • Q4: v1.0、50+ 基准任务、五名现场用户的可用性研究、维护者文档

参见 CONTRIBUTING.md 参与贡献。采用 Apache-2.0 许可。

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

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