Skip to main content
Glama

flconsole — Upwork jobs

update_feed

Change a feed: name, filters, ai_filter and/or agent_notes. filters REPLACE the saved filters entirely: send the full filters object (get it from list_feeds), not only the changed keys. ai_filter sets or replaces the AI filter, "" removes it; omitted fields are kept. A feed with alerts on sends Telegram notifications: show the user what will change and pass user_confirmed: true (they are notified in Telegram). A feed with alerts off and agent_notes need no confirmation. Updating only agent_notes counts as a storage change (30 an hour), the rest as a feed change (20 an hour).

Input Schema

NameRequiredDescriptionDefault
nameNo
run_idNoTuner runs only: run_id from tuner_checkin instead of user_confirmed. Only search, filters, ai_filter and agent_notes; at most 3 edits per run in total.
feed_idYesFeed id from list_feeds.
filtersNoJob filters. Omitted key, null, [] = not set. Booleans: true / false / null (any).
ai_filterNoNew AI filter text: REPLACES the saved one (send the full rules; the current text is in list_feeds). Empty string removes it. Omit to keep it.
agent_notesNoYour service notes for this feed: tally of checks, top skip reasons, last review, up to 1500 characters. Replaces the saved text; "" clears it. Not shown in Telegram.
user_confirmedNotrue only if the user, in this conversation, explicitly approved this exact change. Otherwise ask them first; never assume.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / run_id
      Added value: +{
      +  "description": "Tuner runs only: run_id from tuner_checkin instead of user_confirmed. Only search, filters, ai_filter and agent_notes; at most 3 edits per run in total.",
      +  "minimum": 1,
      +  "type": "integer"
      +}
  2. Changed3 schema fields changed
    • addedInput schema / properties / agent_notes
      Added value: +{
      +  "description": "Your service notes for this feed: tally of checks, top skip reasons, last review, up to 1500 characters. Replaces the saved text; \"\" clears it. Not shown in Telegram.",
      +  "maxLength": 20000,
      +  "type": "string"
      +}
    • removedInput schema / properties / is_active
      Removed value: -{
      -  "description": "false pauses, true resumes.",
      -  "type": "boolean"
      -}
    • changedInput schema / required
      Previous value: -[
      -  "feed_id",
      -  "user_confirmed"
      -]New value: +[
      +  "feed_id"
      +]
  3. First observed

TDQS

A4.2/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, destructive=false), the description discloses the critical replacement semantics ('filters REPLACE the saved filters entirely'), that omitted keys are kept, that Telegram notifications fire when alerts are on, and the concrete rate limits (30/hr storage edits, 20/hr feed edits). These are exactly the operational facts an agent needs and cannot infer from the schema.

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

Conciseness4/5

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

The description is dense but front-loaded: verb and fields first, then the replacement hazard, then the confirmation rule, then the rate limits. Every sentence carries an operational rule, though the final rate-limit sentence is compressed enough to require careful parsing.

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?

For a 7-parameter mutation with nested filter objects, the description covers the risky behavior (replacement), confirmation policy, and cost model well. Since no output schema exists, the description does not say what an update returns or how to verify the change, which is the one remaining gap.

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 already 86%, yet the description still adds real meaning: filters must be sent whole rather than as a patch, ai_filter with an empty string removes it, agent_notes-only edits bill as a storage change, and user_confirmed is conditional on explicit user approval. run_id and its tuner-specific constraints are left entirely to the schema.

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 description opens with a specific verb and resource ('Change a feed') and enumerates the mutable fields (name, filters, ai_filter, agent_notes), which is enough to distinguish it from create_feed/delete_feed. It never explicitly names those siblings, so it stops short of a 5.

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 gives concrete when-to-use rules: pass user_confirmed only after showing the user the change when alerts are on, while an alerts-off feed or agent_notes-only edit needs no confirmation. It also routes the agent to list_feeds for the current filters. No guidance on when to prefer an alternative sibling (e.g., delete_feed, set_feed_alerts) for related operations.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.