mcpField
O
OctoWatch DLP

OctoWatch DLP

Local
octowatchdlp.comSecurity2Updated 9w ago

About OctoWatch DLP

OctoWatch DLP MCP is a local, read-only server for SecOps teams and managers to query OctoWatch DLP Cloud data in natural language. It covers risks, activity, productivity, and directory information, but does not write data or download screenshot and video binaries.

Key features

  1. 01Query risks and anomalies
  2. 02Summarize idle time and productivity
  3. 03Review apps, sites, and timesheets
  4. 04Search monitoring records and terms
  5. 05Look up users, groups, and presence

Use cases

  1. 01Summarize DLP risks by user and rule
  2. 02Find employees with extended idle time
  3. 03Search monitoring records for sensitive terms

MCP support

The MCP server runs locally, connects to the OctoWatch DLP Cloud API, and exposes read-only tools to clients. It supports stdio and Streamable HTTP transports.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"extralabs-octowatch": {
"command": "uvx",
"args": [
"octowatch-mcp"
],
"env": {
"OCTOWATCH_API_BASE": "<OCTOWATCH_API_BASE>",
"OCTOWATCH_EMAIL": "<OCTOWATCH_EMAIL>",
"OCTOWATCH_PASSWORD": "<OCTOWATCH_PASSWORD>",
"OCTOWATCH_TOOLSETS": "<OCTOWATCH_TOOLSETS>"
}
}
}
}
Run commanduvx octowatch-mcp
Environment variables to set
OCTOWATCH_API_BASECloud API host (serverBase). Default: public cloud.
OCTOWATCH_EMAILConsole operator email. Demo default works for try-out.
OCTOWATCH_PASSWORDSecretConsole password. Use a least-privilege operator for real tenants.
OCTOWATCH_TOOLSETSTool filter: all | core | console (console includes core).

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
pypioctowatch-mcp0.5.1

Tools

22

Saved tool list · updated 2w ago

This tool takes no parameters.

Details

From the project README

OctoWatch DLP MCP Server

PyPI package: octowatch-mcp · product: octowatchdlp.com (not related to other products named “OctoWatch”).

PyPI Python CI MCP License: MIT

Install in Cursor Install in VS Code Install in VS Code Insiders

Read-only Model Context Protocol (MCP) server for OctoWatch DLP Cloud employee monitoring and data-loss prevention — ask Cursor, Claude, or VS Code about risks, idle time, productivity, and monitoring in plain language.

Python MCP SDK v2 (MCPServer). Built for SecOps and managers — open-source companion to the OctoWatch console.

Contents: Status · Where to find us · Prerequisites · Example questions · Security · Limitations · Quick start · Your account · Tools · Configuration · Documentation · Contributing

Status

Alpha (v0.5.1). APIs and tool shapes may change; pin a PyPI version in production configs.

Tool failures return MCP is_error (ToolError). All tools advertise read_only_hint.

Where to find us

The MCP runs locally (no ExtrLabs-hosted MCP). Catalogs point at PyPI / GitHub; you supply Cloud login via env.

ChannelLink
PyPIoctowatch-mcp
Official MCP Registryio.github.extralabs/octowatch-mcp
GitHubextralabs/octowatch-mcp-server
Cursor MarketplacePlugin manifest .cursor-plugin — publish form (manual review)
DirectoriesGlama · mcpservers.org · mcpfind.org · mcpmarket.com · PulseMCP · awesome-mcp-servers#13003 (mcp.so skipped — paid)
cursor.directoryOpen Plugins: root .mcp.json + .cursor-plugin/plugin.json — re-submit after these are on main

Directory / Marketplace maintainer notes: docs/distribution.md.

Prerequisites

  • Python 3.10+
  • An MCP-capable host (Cursor, Claude Desktop, VS Code, …)
  • Network access to your Cloud API host (default https://cloud.octowatchdlp.com)

Example questions

  • “Which Risks in the last day?”
  • “Who was idle the longest yesterday?”
  • “Productivity summary for Accounting”
  • “Show Monitoring keystrokes for Emily”
  • “Find keyword invoice across monitoring last week”
  • “List users and groups”
Short scenarios
GoalAsk something like…
DLP / policy hits“Summarize risks for today by user and rule”
Idle time (not formal alerts)“Who was idle more than 2 hours yesterday?”
Top apps/sites“Top applications for group Accounting last 7 days”
Keyword hunt“Search monitoring for confidential last 30 days”
Directory“List users and groups, then show info for AliasID 4”

Security & privacy

Defaults use the public demo account.
Do not put production passwords in MCP config or git. Use env vars and a least-privilege console operator.
No writes, no screenshot/video binary downloads.

Monitoring responses can contain sensitive employee data (activity, keystrokes snippets, mail metadata). Treat tool output as confidential. Full policy: SECURITY.md.

Limitations

  • Read-only — not a full console replacement (Web Console)
  • No screenshot/video binary downloads (stream metadata only)
  • Not a mirror of product docs or the REST catalog — those stay at docs and /api/
  • Alpha — expect breaking changes between minors until 1.0

Quick start (PyPI)

Use the Install badges at the top of this README (Cursor / VS Code; demo credentials). First ensure the CLI is available:

pip install octowatch-mcp

Or configure manually — example for Cursor / Claude-style mcpServers (demo credentials):

{
  "mcpServers": {
    "octowatch": {
      "command": "octowatch-mcp",
      "env": {
        "OCTOWATCH_API_BASE": "https://cloud.octowatchdlp.com",
        "OCTOWATCH_EMAIL": "[email protected]",
        "OCTOWATCH_PASSWORD": "demo"
      }
    }
  }
}

Ready-made files: examples/cursor-mcp-pypi.json, examples/claude-desktop-pypi.json. Per-host steps: docs/hosts.md.

Restart the host, then try: “Using OctoWatch, who am I logged in as?” or “List risks for the last week.”

Demo credentials work without a .env. Be gentle with the shared demo tenant (avoid aggressive agent loops).

From source
git clone https://github.com/extralabs/octowatch-mcp-server.git
cd octowatch-mcp-server
python -m venv .venv
# Windows: .venv\Scripts\activate
# macOS/Linux: source .venv/bin/activate
pip install -e .
cp .env.example .env   # optional
python -m octowatch_mcp

Use examples/cursor-mcp.json / examples/claude-desktop.json and set cwd to your clone (Windows: D:\\path\\to\\octowatch-mcp-server).

ChatGPT and other hosts

There is no single public ChatGPT JSON config we ship yet — ChatGPT / similar products often use remote MCP connectors rather than a local command stdio process.

  • For local desktop agents, prefer Cursor, Claude Desktop, or VS Code with the examples above.
  • If your host supports custom MCP over HTTP, you can run octowatch-mcp --transport streamable-http (localhost only by default) and register that endpoint per the host’s docs — see docs/hosts.md.

Your account (email / password)

OctoWatch Cloud still needs a console login. The MCP does not store passwords for you — the host passes them as process env.

ModeWhat to set
Demo (try-out)Defaults / Install badges: [email protected] / demo
Your tenantYour least-privilege operator email + password in MCP env (or Cursor plugin Configure)
VariableMeaning
OCTOWATCH_EMAILConsole operator email
OCTOWATCH_PASSWORDConsole password (isSecret in Registry metadata)
OCTOWATCH_API_BASECloud API host if not the default public cloud

Recommended: put them in the MCP host JSON env block — examples/cursor-mcp-pypi-with-env.json / examples/claude-desktop-pypi-with-env.json. Cursor plugin variables: .cursor-plugin/plugin.json.

Alternatively, for a source install, copy .env.example → .env next to the process working directory.

Never commit real passwords. Verify the same data in the Web Console. Walkthrough: docs/hosts.md.

Core tools

ToolCloud areaNotes
octowatch_whoamiAuth sessionAccount / host (no password)
list_users_groupsDirectory treeType 0 root, 1 group, 2 user
list_risksRisks + AnalyticsDefault mode=summary
list_anomaliesAlertsFormal deviations (not idle)
get_idle_summaryProductivityRank by InactiveTime
get_activity_summaryActivityTop apps/sites
get_timesheetTimeSheetWorked vs expected hours
get_productivity_summaryProductivity + analyticsPer-user rollup
list_reportsReportsScheduled + processing tasks

Console coverage tools

ToolCloud areaNotes
get_analyticsAnalyticsview=overall|disciplina|activity|productivity
get_dashboardDashboardWidgets; blobs stripped
get_chronoChronoTimeline
get_day_structureDay structurelist or detail
list_monitoringMonitoringOne kind; compact by default
search_monitoringTools → Searchfilter_key across kinds
get_activity_detailActivity windowDrill-down
list_onlineLivePresence only
list_stream_metaStreamMetadata only
list_directoryEdit Get*users/groups/computers/…
get_user_infoUser cardAliasID / computer
get_account_readonlyAccount Get*No Set*/PIN
list_api_coverage(static)Gap summary

Full arguments, routing, and scenarios: docs/TOOLS.md.
MCP prompts/resources: docs/MCP.md.

Configuration

EnvDefaultMeaning
OCTOWATCH_API_BASEhttps://cloud.octowatchdlp.comAPI host (serverBase)
OCTOWATCH_EMAIL[email protected]Console operator
OCTOWATCH_PASSWORDdemoDemo only by default
OCTOWATCH_DEFAULT_DAYS1Lookback when tools omit dates/period
OCTOWATCH_TOOLSETSallall | core | console (console includes core)
octowatch-mcp                                      # stdio (default)
octowatch-mcp --transport streamable-http          # http://127.0.0.1:8000/mcp
Periods & filters

Prefer period=today|yesterday|last_7_days|last_30_days, or date_from / date_to.

  • Date-only values cover the full calendar day (date_to → 23:59:59).
  • Optional user_id (AliasID) and group_id on most read tools.
  • POST body TreeviewUsers: all → NodeType=-666666; group → NodeType=14; user → NodeType=1.

Documentation

DocContents
docs/README.mdDoc index
docs/hosts.mdInstall per host + your login
docs/TOOLS.mdTool reference + when-which
docs/MCP.mdProtocol, resources, prompts
docs/API.mdMCP coverage audit (not a full REST mirror)
docs/troubleshooting.mdCommon failures
docs/registry.mdOfficial MCP Registry (server.json)
docs/distribution.mdDirectories, Marketplace, deferred hosted channels
Product & console

Roadmap

Planned (not scheduled): tighter payload budgets, client-side rate limits, argument completions, server icon, optional MCP Apps UI, tool-routing evals. Registry metadata: docs/registry.md. Protocol surface: docs/MCP.md.

Contributing

See CONTRIBUTING.md. Changelog: CHANGELOG.md. Issues: GitHub Issues.

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.