Business Operations Agent Kit
MCP server that provides read-only business operations tools: list businesses, get status, identify missing inputs, and prepare email drafts/attachment manifests from synthetic evidence, with strict no-send/no-write safeguards.
README
Business Operations Agent Kit
Try the zero-install live demo
Apply for a read-only adapter pilot using public-safe, synthetic details only. Pilot evaluation starts with a reviewed read-only source contract and preserves NO SEND / NO WRITE.
The live walkthrough uses two fake businesses, makes no application network
requests after its static assets load, and preserves NO SEND / NO WRITE.
A public-safe starter for building the kind of operations copilot a business owner can actually use:
- “Where do we stand?”
- “What changed?”
- “Who has the ball?”
- “What are we genuinely waiting on?”
- “Does the inbox contradict the dashboard?”
- “Draft the next request.”
- “Which approved blank form should go with it?”
The kit is not a copy of a private business database. It is a harness-neutral policy core, a normalized evidence contract, an Agent Skill, and adapter patterns for Hermes, Claude, ChatGPT, and other MCP-capable systems.
Why this exists
WIMPER Ops Agent is the validated private reference implementation: it proved that a chat can reconcile process state, dashboard records, email evidence, document state, ownership, drafts, and packet workflows.
This repository is the product extraction. It contains no WIMPER customer records, credentials, private messages, proprietary database paths, or attachment contents. All examples are synthetic.
What works now
The starter exposes five read/prepare operations:
list_businessesget_business_statusget_missing_input_handoffprepare_email_draftprepare_attachment_manifest
It exposes no send or write tool.
Every case-specific operation requires an explicit business_id. Every result is visibly labeled NO SEND / NO WRITE, includes evidence locators and a state fingerprint, and declares what did not happen.
Try the zero-install browser walkthrough
Open the live walkthrough,
or open demo/index.html directly in a modern browser. The walkthrough uses
only the bundled synthetic results and makes no application network requests.
The checked-in demo/demo-data.js is generated from the same Python policy core
used by the CLI and MCP tools. Regenerate it after any core or fixture change:
.venv/bin/python scripts/build_browser_demo.py
The browser-demo contract tests fail if the generated asset drifts from the executed synthetic workflows or exposes private source fields.
The demo shows:
- a sourced status report;
- one real task/document gap;
- one exact recipient;
- a proposed email draft;
- one explicitly approved blank-template attachment proposal;
- a second synthetic business where email and dashboard evidence conflict, causing the agent to suppress a duplicate request.
Run the synthetic Python and MCP demo
One-command evaluator with uv:
uvx --from git+https://github.com/mkhragudo/business-operations-agent-kit.git \
business-ops-agent demo --business harborlight-demo
Or clone the repository and run the full contract suite:
python3 -m venv .venv
.venv/bin/pip install -e '.[test]'
.venv/bin/python -m unittest discover -s tests -v
.venv/bin/business-ops-agent list-businesses
.venv/bin/business-ops-agent demo --business harborlight-demo
The default test suite includes a real stdio MCP transport test. To run the same transport probe by itself:
.venv/bin/python scripts/test_mcp_integration.py
Or:
./scripts/demo.sh
Permission ladder
| Level | Capability | Starter default |
|---|---|---|
| 0 | Inspect status and evidence | Enabled |
| 1 | Prepare drafts and attachment manifests | Enabled |
| 2 | Create a staged provider draft or generated document | Designed, disabled |
| 3 | Send or update a source system | Disabled; requires a separate approval and receipt contract |
“Prepare an attachment” in this starter means produce a verified manifest entry. The model never receives attachment bytes or filesystem paths.
Architecture
Hermes / Claude / ChatGPT / MCP client
|
shared Agent Skill
|
five narrow read/prepare tools
|
BusinessOperationsAgent core
|
OperationsSource protocol
|
email + dashboard + database + document adapters
The included JsonDirectorySource is a synthetic reference adapter. A real deployment replaces it with a connector that normalizes private evidence into the same bounded records.
The wheel includes the same synthetic fixture for a wheel-only demo; a contract test prevents it from drifting from examples/synthetic.
Harness adapters
- Hermes: install the shared Agent Skill and connect the local MCP server or use the CLI.
- Claude Code: install the same Agent Skill under
.claude/skills/and connect the local stdio MCP server through project-scoped.mcp.json. - Claude.ai: use project instructions plus an approved connector or remote MCP service for live data.
- ChatGPT: use project instructions for behavior and an authenticated remote MCP Plugin for live systems. Uploaded project files alone are not a live email/database connection.
- Other harnesses: implement the five-tool adapter contract or call the CLI.
See docs/INSTALL.md and docs/PLATFORM-MATRIX.md.
Before connecting live data, read docs/SOURCE-ADAPTER-GUIDE.md and docs/THREAT-MODEL.md. A production installation requires a dedicated restricted harness profile, read-only source credentials, field-level authority rules, and no generic tool that bypasses the policy core.
Safety invariants
- Never silently select the first business.
- Suppress draft and attachment proposals when the adapter's versioned freshness attestation is false.
- Never call something missing without an open task or task-backed current-document gap.
- Preserve communication/dashboard contradictions and suppress only the affected request.
- Require one exact recipient before drafting external copy.
- Reject sensitive, opted-out, suppressed, or do-not-contact recipient roles.
- Propose only attachment IDs explicitly named by open work.
- Exclude stale, path-escaping, sensitive, or unapproved files.
- Never return raw message subject, sender, body, content digest, attachment path, or attachment bytes.
- Never send, create a provider draft, or write a business record in the starter.
Repository map
src/business_ops_agent/: policy core, JSON adapter, approval semantics, CLI, optional MCP serverdemo/: zero-install static walkthrough and generated synthetic payloadskillsets/: shared Agent Skilladapters/: harness-specific packaging guidanceexamples/synthetic/: public-safe demonstration evidencetemplates/: owner configuration, process, and permission templatestests/: contract, privacy, contradiction, and zero-side-effect testsdocs/: contract, architecture, source-adapter guide, threat model, installation, and publication drafts.github/: read-only CI, manual demo-only Pages deployment, and public issue/PR intake
Contributing and security
See CONTRIBUTING.md for the local quality gate and public-data rules. Report
suspected vulnerabilities privately using the process in SECURITY.md; never
put credentials or real business data in a public issue.
Status
Version 0.1.0 is the initial public source release. The repository and static
demo contain synthetic data only. Live connectors, hosted services, provider
drafts, source writes, PyPI publication, and announcements remain outside this
release.
License
Licensed under the Apache License 2.0.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。