business-card-watchdog
Provides tools to route processed business card data to Google Contacts, enabling contact creation and updates.
Provides tools to route processed business card data to Odoo/Odollo tenants for CRM and contact management.
Integrates with Syncthing to watch phone camera directories for new business card images, enabling automated processing.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@business-card-watchdogprocess new business cards from the SyncThing folder"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Business Card Watchdog
Business Card Watchdog is an installable, user-scoped service for processing large batches of business card images from watched folders, including SyncThing phone-camera directories.
The design builds on the local business-card-to-contact skill:
OCR and normalize each card into reviewed contact JSON.
Generate candidate contact photos.
Route processed card data and image artifacts to Google Contacts and/or Odoo/Odollo tenants.
Use deterministic App Intelligence style orchestration for large batches: host-owned state, ledgers, approvals, replay logs, and explicit sink policies.
Expose CLI, API, MCP, and watched-folder surfaces from one shared core.
Install
From this repo, use uv:
uv venv .venv
uv pip install --python .venv/bin/python -e ".[api,watch,vision,dev]"Run commands through the venv:
.venv/bin/bcw status --jsonFor deterministic rectangle/contour hints in the image prefilter, include the vision extra:
uv pip install --python .venv/bin/python -e ".[vision]"Related MCP server: mcp-dev-brasil
User Config
Config lives under the user scope:
~/.config/business-card-watchdog/config.toml
~/.local/share/business-card-watchdog/
~/.cache/business-card-watchdog/Create an editable starter config:
.venv/bin/bcw init-configThe SyncThing source can be configured as a normal path or an alias such as:
[paths]
sync_phone = "/mnt/e/SyncThing/Phone Camera"
[watch]
inputs = ["$fsr:sync_phone"]First Commands
Dry-run a batch:
.venv/bin/bcw process "/mnt/e/SyncThing/Phone Camera" --dry-runStart polling watch mode:
.venv/bin/bcw watch --onceServe the API, if fastapi and uvicorn are installed:
.venv/bin/bcw api --host 127.0.0.1 --port 8787Print the MCP tool manifest:
.venv/bin/bcw mcp-manifestInspect runs, jobs, review queue, sinks, and watcher state:
.venv/bin/bcw runs list
.venv/bin/bcw runs summary <run-id>
.venv/bin/bcw runs phase-report <run-id>
.venv/bin/bcw jobs list --run-id <run-id>
.venv/bin/bcw jobs show <job-id> --run-id <run-id>
.venv/bin/bcw reviews list --run-id <run-id>
.venv/bin/bcw sinks check --json
.venv/bin/bcw watch-status --jsonAdd --json to run, job, and review commands when consuming them from automation.
Install a user-scope systemd unit file without enabling or starting it:
.venv/bin/bcw service install --json
systemctl --user daemon-reload
systemctl --user enable business-card-watchdog.service
systemctl --user start business-card-watchdog.serviceRemove the generated unit file:
.venv/bin/bcw service uninstall --json
systemctl --user daemon-reloadThe service commands write only under the user config directory, normally:
~/.config/systemd/user/business-card-watchdog.serviceCurrent State
This is an initial scaffold. It has deterministic run ledgers, config loading, routing decisions, CLI/API/MCP surfaces, and a subprocess adapter for the existing business-card-to-contact skill. External writes are intentionally explicit and dry-run first.
Operational details live in:
docs/operations/user-scope-install-and-service.mddocs/operations/review-workflow.mddocs/operations/review-workflow-sample-output.mddocs/operations/public-upstream-validation.mddocs/operations/live-pilot-checklists.mddocs/operations/release-readiness.md
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.
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/CochranResearchGroup/business-card-watchdog'
If you have feedback or need assistance with the MCP directory API, please join our Discord server