Skip to main content
Glama

slack_workflow_save

Idempotent

Save or update a workflow profile that binds a workflow kind, channels, and priority people to configure Slack catch-up summaries.

Instructions

Save or update a workflow profile that binds a workflow_kind (support_inbox | incident_room | exec_brief | product_launch_watch | custom) to channels, priority people, retention mode, and summary cadence. Stored locally at ~/.slack-mcp-workflows.json. slack_catch_me_up reads the profile by name and returns evidence shaped by its workflow_kind.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
channelsNoSlack channel IDs to read (e.g. ['C012345', 'C067890'])
profile_nameYesUnique name for this workflow profile (e.g. 'morning-exec-brief', 'on-call-rotation')
workflow_kindYesWorkflow kind. Determines the output_contract keys slack_catch_me_up returns for this profile.
retention_modeNoRetention preference recorded on the profile. Default ephemeral.
priority_peopleNoSlack user IDs whose messages get extra weight in summaries
summary_cadenceNoHow often this profile expects to be caught up on. Sets slack_catch_me_up's default window: 24 hours for on_demand and daily_8am, 7 days for weekly_monday.
Behavior4/5

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

Annotations already declare idempotentHint=true, destructiveHint=false, and readOnlyHint=false. The description adds beyond that by disclosing the local storage path (~/.slack-mcp-workflows.json) and explaining that workflow_kind influences the output contract of slack_catch_me_up, which is additional behavioral context not present in annotations. No contradiction exists.

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 exactly two sentences. The first sentence states the action and the bound elements; the second reveals storage and consumer linkage. Every phrase earns its place, and the most important action verb is front-loaded. No fluff or redundancy.

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 6 parameters, all documented in schema, and no output schema, the description is complete: it explains the purpose, storage, and how the saved profile is used by a sibling. It omits error handling and return values, but those are either covered by schema or not needed given annotations and the tool's nature. An agent can correctly decide when to call it and what to expect.

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

Parameters5/5

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

Although the schema covers all parameters at 100%, the description adds significant cross-tool semantics: it explains that summary_cadence sets slack_catch_me_up's default window (24h vs 7d) and that workflow_kind determines which output_contract keys are returned. This goes beyond the schema property descriptions, giving the agent a deeper understanding of how parameters affect downstream behavior.

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 ('Save or update') and resource ('workflow profile'), enumerates what the profile binds (workflow_kind, channels, priority people, retention mode, summary cadence), and lists the valid workflow_kind values. It clearly differentiates from siblings by noting that slack_catch_me_up reads the profile by name, positioning this tool as the write counterpart. No ambiguity remains.

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 provides clear context by explaining that the profile is stored locally and later consumed by slack_catch_me_up, implicitly establishing when to use this tool (to create/update profiles) vs. when to use the consumer. However, it does not explicitly state exclusions or alternative tools (e.g., 'use slack_workflows to list profiles'), so it stops short of fully explicit when-not guidance.

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/jtalk22/slack-mcp-server'

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