Operator ETL
Operator ETL
面向FOIA和公众意见的代理数据摄入 — 确定性奖章仓库、LangGraph编排、MCP工具面、PII策略平面。
Python和SQL决定数据的存在。代理在类型化边界内进行编排。测试证明不变性 — MVP演示无需LLM API密钥。
为政府机构和监管机构构建,这些机构必须接收公众意见、在发布前检测PII、隔离不良行,并产生可辩护的洞察(每个数字都经过仓库验证)。
文档
Wiki(可搜索): https://khaosans.github.io/operator-etl/
一条命令验证
git clone https://github.com/khaosans/operator-etl.git
cd operator-etl
./scripts/verify.sh如果缺少则安装uv,同步依赖,运行完整验证门。成功以**OPERATOR_ETL_VERIFY=PASS**结束。
预期: 41个pytest通过,FOIA演示打印status=complete和silver=10。完整截图集:docs/TOUR.md。



flowchart LR
Verify[verify.sh] --> UV[uv sync]
UV --> E2E[e2e gate]
E2E --> Pass[OPERATOR_ETL_VERIFY=PASS]已有uv?make e2e · 详情:docs/QUICKSTART.md · 逐步指南:docs/WALKTHROUGH.md
flowchart LR
subgraph problem [The usual demo]
A[Chatbot + SQL] --> W[(Warehouse)]
A --> M[Memo with KPIs]
end
subgraph fail [Three failures]
F1[PII in context]
F2[Hallucinated counts]
F3[No replay audit]
end
M --> failOperator ETL分离了确定性ETL与有界代理。PII永远不会到达无约束工具;评判器拒绝不在gold中的洞察数字;bronze提供不可变的审计追踪。
深入阅读:docs/WHY.md · 机构工作流:docs/FOIA-Public-Comments-Guide.md
工作原理 — 三个平面
flowchart TB
subgraph data [Data plane]
direction TB
CSV[CSV intake] --> Bronze[bronze_raw]
Bronze --> Silver[silver validated]
Bronze --> Quarantine[quarantine]
Silver --> Gold[gold SQL marts]
end
subgraph policy [Policy plane]
PII[PII scan + vault]
Bronze --> PII
end
subgraph control [Control plane]
Graph[LangGraph]
MCP[MCP allowlist]
Critic[critic]
Graph --> MCP --> Gold
Graph --> Critic --> Insight[verified insight]
end平面 | 角色 |
数据 | Bronze(不可变)→ silver(已验证)→ gold(SQL数据集市)+ 隔离。Python和SQL执行;原始行上无LLM。 |
策略 | PII扫描、加密保险库、洞察前故障关闭。保险库从不通过MCP暴露。 |
控制 | LangGraph管道、MCP允许列表工具、评判器验证洞察草稿中的每个数字。 |
详情:docs/HOW-IT-WORKS.md · okf/models/three-planes.md
为什么不让聊天机器人访问你的仓库?
信任与证明
问题 | 答案 |
它能在本地运行吗? |
|
CI证明了什么? | 每次推送都运行相同的门(上方徽章) |
CI中未证明什么? | 实时GCP部署、Presidio PII、LLM生成的洞察 — 参见诚实审计 |
证明矩阵: docs/FOUNDATIONS.md · 完整审计: docs/FINAL-REVIEW.md
你刚刚证明了什么
指标 | 预期 |
示例评论 | 12(EPA/FCC案卷) |
Silver(有效) | 10 |
已隔离 | 2 |
图状态 |
|
评判器 | 通过 |
工程权衡
决策 | 我们选择了 | 好处 | 成本 | 何时更改 |
本地仓库 | DuckDB | 在笔记本上零基础设施证明 | 非多租户 | 阶段L3 BigQuery — SCALING.md |
PII检测 | 正则表达式MVP | 简单、可测试、无ML依赖 | 遗漏姓名、地址 | 生产环境使用Presidio |
洞察生成 | 模板 + 评判器 | 无需API密钥;确定性 | 叙事灵活性较低 | 机构批准时使用LLM节点 |
代理数据访问 | MCP允许列表(3个工具) | 最小权限 | 无临时SQL探索 | 生产FOIA请勿放宽 |
质量故障 | 故障关闭 | 可信的KPI | 阻塞洞察直到修复 | 避免警告并显示横幅 |
完整证明矩阵:docs/FOUNDATIONS.md
适用人群
角色 | 从这里开始 |
FOIA官员 | |
数据工程师 | |
架构师/评审者 | |
AI代理(MCP) | AGENTS.md · |
采用阶梯
flowchart LR
L0[L0 Prove make e2e] --> L1[L1 Run locally]
L1 --> L2[L2 Extend source]
L2 --> L3[L3 GCP staging]
L3 --> L4[L4 Production HITL]级别 | 操作 | 文档 |
0 — 证明 |
| |
1 — 本地运行 | MCP、仪表板 | |
2 — 扩展 | 新CSV源 | |
3 — GCP暂存 | Terraform + Cloud Run | |
4 — 生产 | Presidio、HITL、实时BQ、产品UX |
常用命令
命令 | 操作 |
| 首次运行 — 如果需要则安装uv + 完整验证门 |
| 与verify.sh相同 |
| 完整MVP验证门(OKF + 测试 + FOIA演示) |
| 仅FOIA演示 |
| pytest(41个测试) |
| FOIA代理管道 |
| Streamlit — 政府和订单标签页 |
| 用于Cursor代理的MCP服务器 |
| 重新生成PDF分享包 |
运行make help查看所有目标。
架构
平面 | 包 | 状态 |
数据 |
| 已实现 |
控制 |
| 已实现 |
策略 |
| 已实现 |
MCP |
| 已实现 |
GCP |
| 部分 |
实时矩阵:okf/models/implementation-status.md
范围边界
本演示证明: 本地FOIA管道 · PII扫描 · MCP边界 · 故障关闭质量 · 41个测试 + CI
不包括: 生产Presidio · Regulations.gov适配器 · 实时GCP/BQ端到端 · 生产官员UX(响应式、流式、生成UI)— docs/PRODUCT-UX.md
演示UI是Streamlit。产品UX已定义,非本MVP。
在生产声明之前:最终评审预扩展检查清单
文档
文档 | 为什么打开它 |
可搜索的人类wiki — 从这里开始 | |
verify、CLI、Streamlit的截图 | |
演示的适用人群 | |
产品UI待办事项(已定义) | |
首次运行 — | |
安装、MCP、环境变量 | |
逐步证明 | |
Streamlit政府/订单 | |
可选的本地Ollama/OpenAI兼容洞察 | |
DuckDB → GCP | |
引用 + 证明矩阵 | |
每个测试证明什么 | |
按角色分类的完整索引 |
分享与展示
开源: https://github.com/khaosans/operator-etl — 克隆并运行make e2e。
对于面试、LinkedIn或个人提案,请附加来自 docs/share/ 的PDF(一页纸、白皮书、幻灯片):
make share # regenerates docs/share/latest/ after e2e贡献 · 许可 · 安全
根据 Apache License 2.0 许可。样本数据是合成的——不要提交真实的FOIA记录。
docs/RELEASING.md — 安全更新和依赖工作流
欢迎提交Issue和PR。
This server cannot be installed
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 Connectors
US public-records intelligence for AI agents — companies, SEC, courts, spending, licenses.
Deterministic compliance and vertical knowledge bases for autonomous agents. Free 24hr trial.
Responsible-AI guardrails for agents: scoring with policy, injection & PII detection, DPDP.
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/khaosans/operator-etl'
If you have feedback or need assistance with the MCP directory API, please join our Discord server