Skip to main content
Glama
chrischall

simplisafe-mcp

by chrischall

simplisafe_get_events

Read-only

Retrieve recent SimpliSafe security events (arm/disarm, sensor opens, lock/unlock, alarms, errors) with timestamps, newest first. Filter by event type or Unix time to find specific history.

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.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sidNoSystem id. Optional when the account has exactly one system; required when it has several.
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.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observedv0.1.1

TDQS

A4.2/5.0
Behavior4/5

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

The annotation readOnlyHint=true covers the safety profile. The description adds meaningful behavioral details beyond the annotation: events are returned newest first, and each event includes both an ISO timestamp and raw epoch seconds. This helps the agent understand the ordering and timestamp format. It does not mention pagination limits or filtering, but those are captured in the input schema, so the description need not repeat them. No contradiction with annotations.

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?

The description is a single, well-structured sentence that front-loads the action and key behaviors (ordering, content) and provides useful detail about timestamps. Every clause earns its place, and there is no verbosity or redundant information. This is a model of conciseness.

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?

Given there is no output schema, the description does the work of explaining the return format — at least the timestamp aspect. It also lists event types and order. The input schema covers parameters thoroughly, and the annotation covers safety. What is missing is a fuller description of the event object's fields (beyond timestamps) and any behavior around the num_events default or from_timestamp filtering, but those are partially in schema. Overall, it is reasonably complete for a read-only listing tool, though it could be slightly richer on the response structure.

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%, and all four parameters (sid, event_type, num_events, from_timestamp) are already documented with descriptions in the schema. The tool description adds no parameter-specific meaning beyond what the schema provides. Per the rubric, when schema coverage is high, the baseline is 3. No additional context is offered, so a 3 is appropriate.

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 clearly states the action ('Get recent events'), the resource ('recorded by the base station'), and specifies the content (arm/disarm, sensor opens, locks, alarms, errors) plus ordering (newest first). This distinguishes it from sibling tools like simplisafe_list_sensors and simplisafe_list_locks, which target different resources. The verb is specific and unambiguous.

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?

The description implicitly defines when to use this tool — when you need recent event history from the base station — and lists the event categories. It does not explicitly state exclusions or alternatives, but the clear resource focus makes it obvious that this is for events rather than sensors/locks. The context from sibling names reinforces this. Slightly lacking explicit 'when not to use' guidance, but adequate.

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