Skip to main content
Glama

mureo_external_changes_import

Imports changes made outside mureo into STATE.json's action_log, so manual edits appear in daily checks. Polls each platform's change feed, skips duplicates and mureo's own changes, and records the rest with timestamps.

Instructions

Import changes made OUTSIDE mureo (a platform's own UI, its editor, another tool) into STATE.json's action_log, so manual operation is visible to daily-check instead of showing up only as unexplained movement in the numbers. Polls each configured platform's change feed, skips changes already imported and changes mureo itself made, and records the rest with origin='external' plus an observation window anchored on when the change actually happened. Imported entries are NOT reversible by mureo — it never saw the prior value. Every configured platform appears in the response: a platform with no change feed returns status='unavailable' with reason 'change_import_unavailable_for_', which means mureo is BLIND there, not that nothing happened. Read 'truncated': true as 'older changes in this window are unreachable' — change history cannot be backfilled, so poll often. Safe to call repeatedly; importing the same change twice is a no-op.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pathNoOptional path to STATE.json. Defaults to STATE.json in the MCP server's current working directory. Paths outside it are refused.
sinceNoISO 8601 date or datetime to start the window at. Omit to resume from the newest change already imported for each platform (or a short default lookback on the first run). Use it to re-check a period, not to backfill: a row-capped feed cannot answer a wide window, and history that has aged out is gone.
platformsNoPlatform keys to poll (e.g. ['google_ads']). Omit to cover EVERY platform in STATE.json, which is what surfaces the ones mureo cannot poll. Use the canonical key — 'plugin:<dist>:<provider>' for a plugin platform.
Behavior5/5

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

With no annotations, the description fully discloses behavioral traits: entries are NOT reversible, duplicate imports are no-ops, platforms without feeds return status='unavailable' meaning mureo is BLIND, and 'truncated' means older changes are unreachable. It also explains that mureo's own changes are skipped and the observation window is anchored to actual change time.

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?

Though lengthy, every sentence delivers critical operational knowledge—edge cases, failure semantics, idempotency, and platform blindness—with no fluff. The structure front-loads the core purpose and then adds necessary caveats in a logical order.

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

Completeness5/5

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

For a tool with no output schema and complex behavior, the description covers response semantics (status='unavailable', truncated interpretation), idempotency, non-reversibility, and repeated-call safety. It is complete enough for an agent to select and invoke correctly, including understanding what results to expect.

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%, and each parameter already has detailed inline descriptions (path restrictions, 'since' re-check vs backfill caveat, platform key format). The main description reinforces these but doesn't add much beyond what the schema already provides, so baseline 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 opens with a specific verb+resource: 'Import changes made OUTSIDE mureo ... into STATE.json's action_log'. It clearly distinguishes from sibling tools by scoping to external changes and explaining the purpose (making manual operations visible to daily-check). No other sibling has this exact import/visibility function.

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?

Provides explicit when-to-use reasoning ('so manual operation is visible to daily-check'), and crucial usage warnings: poll often because history cannot be backfilled, re-check via 'since' but not for backfill, and how to interpret 'truncated'. It also states the tool is safe to call repeatedly, which guides frequency expectations.

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

Install Server

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/logly/mureo'

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