Skip to main content
Glama
simplisafe-mcp

simplisafe-mcp

by chrischall

simplisafe_get_events

Read-only

Retrieve recent base station events such as arm/disarm, sensor opens, lock activity, alarms and errors, newest first with ISO timestamps. Filter by event type, time, or return brief one-line summaries.

Instructions

Get recent events recorded by the base station — arm/disarm, sensor opens, lock and unlock, alarms, errors — newest first. Each event carries an ISO timestamp alongside the raw epoch seconds.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "simplisafe_get_events"
  }
}

Input Schema

NameRequiredDescriptionDefault
sidNoSystem id. Optional when the account has exactly one system; required when it has several.
viewNo"full" (default) returns the events as records; "brief" returns one line per event — "<sensor>: <event> — <ISO time> — <event type>" — as the untrusted-data envelope's `data`, with "-- none" for no events and "-- more" when the page came back full.
event_typeNoOnly return events with this eventType, e.g. "activity" or "alarm".
num_eventsNoHow many events to return, 1-50 (SimpliSafe rejects more than 50). Defaults to 50.
from_timestampNoOnly events at or after this Unix timestamp (seconds).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.4.0
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "\"full\" (default) returns the events as records; \"brief\" returns one line per event — \"<sensor>: <event> — <ISO time> — <event type>\" — as the untrusted-data envelope's `data`, with \"-- none\" for no events and \"-- more\" when the page came back full.",
      +  "enum": [
      +    "full",
      +    "brief"
      +  ],
      +  "type": "string"
      +}
  2. Changed1 schema field changedv1.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  3. First observedv0.1.1

TDQS

A4/5.0
Behavior4/5

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

The readOnlyHint and openWorldHint annotations already establish the safety profile, so the description's job is to add context — and it does, disclosing newest-first ordering and that each event carries both an ISO timestamp and raw epoch seconds, which is return-format information with no output schema to carry it. It stops short of describing pagination or truncation behavior (the 50-event cap and "-- more" marker live only in the schema), which keeps it below a 5.

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?

Two compact sentences with the resource and its scope front-loaded, followed by the return-shape detail. There is no filler, no restatement of the tool name, and every clause carries information an agent would need.

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 no output schema, the description correctly picks up the slack by explaining the ordering and timestamp duality of returned events, and the schema fully covers all parameter semantics. Pagination behavior and the multi-system requirement for sid are left to the schema, which is acceptable but would have been worth a clause given they affect how an agent pages through results.

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 description coverage is 100%, so all five parameters (sid, view, event_type, num_events, from_timestamp) are already fully documented with formats, limits, and defaults — setting the baseline at 3. The description's only addition is the newest-first ordering constraint, which is genuinely absent from the schema but is a small marginal contribution across five parameters.

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?

The description states a specific verb and resource ("Get recent events recorded by the base station") and enumerates the event categories covered (arm/disarm, sensor opens, lock/unlock, alarms, errors), plus the ordering ("newest first"). An agent can immediately tell this apart from siblings like simplisafe_get_pins, simplisafe_list_sensors, or simplisafe_get_settings, which target entirely different resources.

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

Usage Guidelines3/5

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

Usage is only implied by the resource name — an agent infers it should call this to inspect recent history, but the description never states when to prefer it over related calls such as simplisafe_get_system or simplisafe_healthcheck, nor does it mention prerequisites like requiring a system id when multiple systems exist. No explicit when-not or alternative routing is given.

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