Skip to main content
Glama
whoamiTM

bi-mcp

by whoamiTM

bi_get_reg

Read-only

Retrieve Blue Iris camera registry data that the JSON API misses: trigger zones, AI thresholds, preset alerts, ONVIF handlers, alert actions. Limit to a subtree via key_path, with staleness warning.

Instructions

Parse a camera's .reg export and return the requested key subtree. Use this for what the BI JSON API does NOT expose: trigger zone polygons (Motion<profile>\maskbits_*), per-class AI confidence thresholds (AI<profile>\smartconf), per-preset alert-skip flags (PTZ\Presets<n>\noalerts), ONVIF event handlers (camevents<n>), and alert action definitions (Alerts\OnTrigger). Optional 'key_path' limits the response to that subtree (e.g. 'AI\3' for profile 3 AI config). Returns staleness warning if the .reg file is >7 days old.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
rawNoIf true, return the raw Blue Iris JSON instead of the shaped view.
cameraYesCamera short name (e.g. 'SecCam_3'). Required.
key_pathNoOptional registry subkey path relative to the hive root, e.g. 'AI\\3', 'Motion\\1', 'PTZ\\Presets', 'camevents'. Omit to return the full hive. Motion off-by-one quirk (per jaydeel on ipcamtalk, 'legacy reasons'): 'Motion' (no number) = profile 1; 'Motion\\1' = profile 2; 'Motion\\2' = profile 3; etc. AI\\<N> and PTZ\\Presets\\<N> use straight 1:1 indexing, NOT this offset.
include_masksNoInclude `maskbits_*` hex blobs in the response. Default false — each blob is ~9KB and a full `PTZ\\Presets` read can exceed 250KB. Set true when you specifically need the polygon bytes.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.3

TDQS

A4.2/5.0
Behavior4/5

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

With readOnlyHint=true already disclosing safety, the description adds meaningful behavior: it parses a .reg export, optionally limits to a subtree, and returns a staleness warning when the file is older than 7 days. No trait contradicts the annotation.

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 dense sentences carry purpose, use cases, optional parameter behavior, and a warning with no filler. The most important scoping statement is front-loaded, and every clause contributes.

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?

There is no output schema, but the description sufficiently indicates the return value (requested key subtree) and the staleness warning, while the raw parameter explains shaped vs raw output. A little more about failure or invalid key_path behavior would make it fully complete, but an agent can correctly call it from this description.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents camera, raw, key_path, and include_masks. The description only repeats the key_path limiting example and adds no semantics beyond the schema, so the baseline of 3 applies.

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

Purpose5/5

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

Description opens with a specific verb and resource: 'Parse a camera's .reg export and return the requested key subtree.' It then explicitly frames the tool as covering what 'the BI JSON API does NOT expose', which differentiates it from the sibling getters without requiring schema inspection.

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

Usage Guidelines4/5

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

It provides clear when-to-use guidance by naming concrete use cases (trigger zone polygons, AI confidence thresholds, per-preset alert-skip flags, ONVIF handlers, alert actions) and positions the tool against the JSON API. It stops short of naming a specific alternative or stating when not to use it, but the context is unambiguous.

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