Skip to main content
Glama
rusuraluca

morning-inbox-mcp

by rusuraluca

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SLACK_BOT_TOKENYesSlack Bot User OAuth Token (xoxb-...), obtained after installing the Slack app to the workspace
GOOGLE_CLIENT_IDYesOAuth client ID from Google Cloud Console (Desktop app credentials)
GOOGLE_CLIENT_SECRETYesOAuth client secret from Google Cloud Console
SLACK_DEFAULT_CHANNELNoOptional default Slack channel for posting the morning summary, e.g. #inbox-brief

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
gmail_fetch_recentA

Fetch recent Gmail messages (metadata + snippet, newest first) for triage. Returns id, from, subject, date, snippet, labelIds and attachment flag for each message. Use gmail_get_message when the snippet is not enough to judge a message.

gmail_get_messageA

Fetch a single Gmail message with its decoded body text. Use after gmail_fetch_recent when a snippet is not enough to decide what to do.

gmail_archiveA

Archive messages by removing the INBOX label. Messages are kept, never deleted. Use for newsletters, promotions, notifications and other noise after triage.

gmail_mark_readB

Remove the UNREAD label from the given messages.

gmail_starB

Add the STARRED label to the given messages. Use for urgent or action-needed mail.

gmail_apply_labelA

Apply a label to the given messages. The label is created if it does not exist yet (e.g. 'Newsletters', 'Receipts', 'To Review').

gmail_list_labelsA

List all Gmail labels (system and custom) with their ids.

slack_send_messageA

Post a message to a Slack channel, or to a user id for a DM. Uses Slack mrkdwn formatting (bold, italic, > quote, • bullet). channel defaults to SLACK_DEFAULT_CHANNEL when omitted.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A3.9/5.0

Scored across 8 tools

Disambiguation4/5

Each tool targets a distinct action, and the descriptions explicitly differentiate gmail_fetch_recent (list/snippet) from gmail_get_message (full body). There is mild conceptual overlap since archive, mark_read, star, and apply_label all manipulate labels, but the intent of each is clearly spelled out.

Naming Consistency5/5

All tools use a consistent service_verb_noun snake_case pattern (gmail_fetch_recent, gmail_mark_read, slack_send_message), with the service prefix cleanly partitioning Gmail vs Slack operations. Minor verb variation (fetch vs get) is still predictable and readable.

Tool Count5/5

Eight tools is well-scoped for a focused inbox-triage assistant. Each tool earns its place, covering the read/triage, label, and notify steps without redundancy.

Completeness4/5

The triage lifecycle (fetch, inspect, archive, mark read, star, label) plus Slack notification is well covered. Minor gaps remain: no reply/send-email tool, no unread/undo path, and Slack is limited to sending with no channel listing or read capability.

Maintenance

ActivityMaintained
ResponsivenessNo issues