Skip to main content
Glama
extralabs

octowatch-mcp

Official
by extralabs

List monitoring

list_monitoring
Read-only

Retrieve monitoring records for a specific activity type such as sites, apps, or keystrokes. Filter by date, user, or group and paginate results to analyze user activity.

Instructions

Single Monitoring list (Sites, Apps, Screens, Keystrokes, Mail, …).

For keyword search across many Monitoring kinds (console Tools → Search), use search_monitoring(filter_key=…) instead of calling this 13–19 times.

Sensitive kinds return text truncated when compact=true. No binary media.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindYesMonitoring table: Sites|Apps|Keystrokes|Mail|…
limitNoMax rows to return (1–500).
offsetNoPagination offset (0-based).
periodNoRelative period: today|yesterday|last_7_days|last_30_days (wins over date_from/date_to when set).
compactNo
date_toNoEnd datetime; date-only covers until 23:59:59 that day.
user_idNoUser filter: AliasID as TreeviewUsers NodeType=1.
group_idNoGroup filter: TreeviewUsers NodeType=14 (console group id).
date_fromNoStart datetime YYYY-MM-DD or YYYY-MM-DD HH:MM:SS (full day if date-only).
filter_keyNoOptional text filter passed to the Cloud API FilterKey.
filter_objectsNoOptional FilterObjects JSON/string for Monitoring POST.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Install Server

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Beyond the readOnlyHint/openWorldHint annotations, the description discloses two non-obvious traits: sensitive kinds return truncated text when compact=true, and no binary media is returned. These are genuinely informative and consistent with the read-only annotation — no contradiction. It could name which kinds are 'sensitive,' but the disclosure is solid for a read-only list tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short paragraphs with zero filler: resource identification, routing guidance, and behavioral caveats. Each sentence earns its place, and the most decision-relevant guidance (when to use the sibling instead) appears early rather than buried.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 11 parameters, high schema coverage, an output schema, and safety annotations, the description doesn't need to document every field. It covers the cross-tool routing decision and the key edge behaviors (truncation, binary media). The only minor ambiguity is which kinds count as 'sensitive,' which doesn't block correct invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 91%, so the schema already documents kind, limit, offset, period, date filters, and user/group filters. The description adds real meaning to compact — a parameter with no schema description — by explaining its truncation effect on sensitive kinds. That is genuine added value on top of a rich schema, justifying above the baseline 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening line 'Single Monitoring list (Sites, Apps, Screens, Keystrokes, Mail, …)' identifies the resource and scope — one monitoring table per call — and the parenthetical kinds clarify what data is returned. The verb is implied rather than explicit ('returns a list of…'), so it stops short of a 5, but naming the search_monitoring sibling helps differentiate the tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The second paragraph explicitly instructs agents to use search_monitoring(filter_key=…) for keyword search across many Monitoring kinds, and gives the rationale: 'instead of calling this 13–19 times.' This is an unambiguous when-to-use vs alternative statement that names the sibling, the condition, and the cost of the wrong choice.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Other Tools

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/extralabs/octowatch-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server