Skip to main content
Glama
296,486 tools. Last updated 2026-07-14 02:39

"A bot for sending and managing messages on Discord" matching MCP tools:

  • Read messages from a consultation thread (own thread for responders; any thread for askers). WHEN TO USE - Before replying to a consultation thread — check the full history first. - To retrieve a scope_proposal's deliverable_type and metadata before sending scope_accepted. - To check if an extension_request was accepted. WHEN NOT TO USE - For full consultation content (question, responses) — use get_consultation. BEHAVIOR - Read-only. Auth required. Rate-limited to 60 req/min. - Visibility: askers see all threads on their consultation; responders see only their own thread. - Returns messages in chronological order (oldest first) with kind, body, metadata, from_agent_id, created_at. WORKFLOW - Responders: call read_messages before send_message to avoid duplicate proposals. - Askers: call read_messages with responder_agent_id to check a specific thread before sending scope_accepted.
    Connector
  • GET /rooms/:roomID/messages — List messages in a room List messages in a room you are a member of. **Read-only — no write side effects, no unread-state mutation, no reactions/posts/edits.** Cursor-paginated newest-first. **Access:** strict — the caller must be a subscribed member of the room (same `seen` doc check used by the web inbox). For browsable public channels, any DCer can read. Private rooms, DMs (`dm`), group DMs (`group`), event rooms, and city/country/mastermind rooms hard-block non-members with 403. Hidden/deleted/sunk messages are excluded. **Pagination:** pass `?before=<nextCursor>` from a previous response to fetch the next (older) page. Default page size 50, max 50. **See also:** For specific content in this room (`did anyone mention X?`), `POST /search/messages` with `q=` and `roomID=` searches body text directly — far faster than paginating with `?before`. This endpoint is the right call when you want a chronological window (last N messages, conversation reconstruction); search is the right call when you want a topic.
    Connector
  • Read messages from a Roomcomm room. Core read operation for every tick of your polling loop. Pass the `id` of the last message you saw as `since` to receive only new messages. Omit `since` on the very first tick to get the full (or most recent) history. Returns {messages: [{id, agent_id, text, timestamp}], has_more}. Track the largest `id` as your new `last_id`. Args: uuid: Room UUID or full room URL. since: Return only messages with id > since. limit: Maximum messages to return (default 100, max 500). Example: read_messages("a1b2…", since=42) on each tick.
    Connector
  • GET /places/:placeID — Get place details Fetch full details for one Google Place ID. Useful for verifying a placeID before sending it to `POST /trips` (which only accepts `type: "city"` placeIDs and rejects venues with a 400). Same shape as a single entry from `GET /places/search`.
    Connector
  • Primary tool for diagnosing a single domain. Returns everything in one call: • Base info — severity, DMARC status, policy (none/quarantine/reject), report status, user override • Health status per dimension — DMARC record, SPF record, DKIM record, SPF alignment, DKIM alignment, DMARC compliance, message volume • Stats summary — compliance %, source counts, fail counts for the period • SPF records — return paths, SPF record text, lookup count, errors, pass/fail volume • DKIM records — selectors, signing domains, record text, errors, pass/fail volume • Daily timeline — per-day message volume and compliance breakdown • Quantiles — statistical thresholds (5th, 90th, 95th percentile) for volumes, unknown, dmarcFail, dkimFail, spfFail over the period. Use these as baselines to detect anomalies: a daily value exceeding q90/q95 signals an unusual spike. Key fields: • pctEligibleForPolicy — percentage of messages subject to DMARC policy enforcement (excludes forwarded mail that is not evaluated against the policy). E.g. 99.66 means 99.66% of messages can be acted on by the DMARC policy. • pctFromKnownSources — percentage of messages from recognized/legitimate sending sources. When to use: after projects_overview or list_domains identified a domain that needs investigation. Prefer this over get_domain_detail, get_spf_records, get_dkim_records, get_domain_stats — those are narrower tools useful only when you need a specific slice of data. For day-by-day activity health history (SPF/DKIM/DMARC quantile trend, volume anomaly direction), call get_domain_activity_health separately.
    Connector
  • Publish a notification template, making it available for sending. Must be called before send_message_template unless the template was created with state: 'PUBLISHED'. Publishes the current draft by default; pass version (e.g. 'v001') to publish a specific historical version. Returns 204 on success.
    Connector

Matching MCP Servers

  • A
    license
    -
    quality
    A
    maintenance
    Enables fuzzy search and browsing of Apple Messages (iMessage/SMS) with contact resolution, filtering by sender or date, and context display through CLI, MCP, or Claude Code plugin.
    Last updated
    214
    18
    MIT

Matching MCP Connectors

  • List and keyword-search federal accounts by agency identifier or title keyword. Returns account numbers, names, managing agencies, and budgetary resources. Use account_number from results as input to usaspending_get_federal_account for full budget detail. Use usaspending_list_agencies to look up agency_identifier codes (3-digit strings, e.g. "097" for DoD).
    Connector
  • Hardened headless-browser fetch with full JavaScript/SPA rendering and a realistic browser profile, returning fully rendered Markdown. Best for JavaScript-heavy/SPA pages and light bot checks; not guaranteed against advanced anti-bot walls (e.g. Cloudflare/Akamai). Price: $0.05 USDC per call.
    Connector
  • Reads recent messages from a Slack channel or DM. Reads from the local IndexedDB cache — only messages that Slack Desktop has synced to disk are available (typically the last few hundred messages for active channels). channel_id must come from slack_list_channels.
    Connector
  • Send a message to an AI agent and get its response. The agent runs with its configured prompt, tools, and knowledge. Use this to test agents or have them process a task. Returns: {status: 'replied'|'silent', response_text, messages[], full_reply, model_used, tokens_*, send_mode, execution_mode, tool_calls[]}. `tool_calls[]` is the per-tool trace in call order — each {tool, success, error, duration_ms} — so you can see which tool the agent ran and why it failed (e.g. a workbench script error) directly from this response, no trace lookup needed. `messages[]` carries each messages.send invocation the agent made (text, subject, reply_to_message_id, timestamp, message_id, attachments=[{file_id,name,mime}]). `full_reply` concatenates text only — attachment-only sends show up in `messages` but not `full_reply`. `status='silent'` iff both response_text is empty AND messages is empty. Execution may take 10-60s depending on agent complexity.
    Connector
  • Long-poll for incoming messages on the channel you joined. Returns immediately if messages are pending; otherwise waits up to timeout_seconds (max 60). Returns empty list on timeout. Call again to keep the conversation alive. NOTE: your OWN sent messages are never echoed back — confirm a peer is present via `roster`, not your inbox.
    Connector
  • Compose and send an email — with subject, CC/BCC, and attachments. Use for email; for chat messages (Telegram/WhatsApp/livechat) use messages.send instead.
    Connector
  • ENS name ↔ Ethereum address resolution. Forward: pass a .eth name to get the address, avatar, and social profile records. Reverse: pass a 0x address to get its primary ENS name and profile. Returns address, ens_primary, avatar_url, description, twitter, github, discord, telegram, url, and content_hash.
    Connector
  • Propose a different time for an existing meeting on behalf of a guest. The host is notified by email and can accept or decline. Authenticated callers (Bearer PAT) skip the bot challenge; an anonymous caller must pass a Cloudflare Turnstile token in `turnstileToken` (only required when the server is configured with a Turnstile secret).
    Connector
  • GET /search/messages — Search messages (incl. your private DMs) Search message bodies across every room you can access. **This is the key surface for "catch me up on what was said about X"** — your private DMs, group DMs, and any room you're a member of are all searchable. Messages from rooms you don't belong to are filtered out before any results return. Scope to one room with `?roomID=` (the room is double-gated against your membership — passing a roomID you're not in returns 403, not silently-empty results). Scope to one author with `?userID=`. The two compose: `?roomID=<id>&userID=<id>` returns just messages by that author in that one room. **Query syntax (`q=`):** plain words match with prefix + typo tolerance. Wrap a phrase in double quotes to require an exact ordered match — e.g. `q="remote work"`. AND/OR/NOT/parentheses are NOT parsed in `q=` — use the structured filter params below for boolean composition.
    Connector
  • Move, copy, flag or archive messages. Set `action`: 'move'/'move_batch' (relocate to a destination_folder_id), 'copy'/'copy_batch' (duplicate into a destination_folder_id, leaving the original in place; IMAP/Outlook/Fastmail only), 'flag' (set read/unread/flagged via `flag_action` on message_ids), 'archive', or 'search_and_move' (apply to all messages matching a search). Requires the scope matching the action (manage:folders / send:email). To delete messages, use the email_delete tool.
    Connector
  • Reconciles a claimed bot User-Agent against the operator's OWN published IP-range feed (Googlebot, GPTBot, OAI-SearchBot, ChatGPT-User, PerplexityBot, Perplexity-User, Bingbot). A User-Agent is trivial to forge; membership in the operator's published CIDR ranges is not. This exposes the common attack: a scraper sending `User-Agent: Googlebot` from an IP in none of Google's ranges. Use this tool when: - A request claims to be a search/AI crawler and you must decide whether to trust that claim before serving, allowing, or logging it. - You are separating genuine declared agents from impersonators. Inputs: - `ip` (path, required): the IPv4 or IPv6 address to check. - `ua` (query, optional): the claimed User-Agent string. Omit to ask only "is this IP a known published bot range?". Returns: - `verdict`: one of - `verified` — the IP is inside the agent's published range (UA, if given, agrees). It genuinely is that bot. - `spoofed` — the UA claims a verifiable bot but the IP is in none of its published ranges. Impersonation. - `mismatch` — the IP is a real bot's range, but the UA names a different bot. - `unverifiable` — the UA names a real agent whose operator publishes no authoritative IP feed (e.g. Anthropic's ClaudeBot). Neither confirmed nor denied — never reported as spoofed. - `unknown` — no recognized bot UA and the IP is in no known range. - `is_verified_agent`, `is_spoofed`: booleans for the two actionable cases. - `agent`, `agent_label`, `matched_agent`, `claimed_agent`: the resolved identities. - `reason`: one-line explanation of the verdict. - `feeds_as_of_ms`: when the published ranges were last refreshed. Cost: - Counts as one request against the daily rate limit. Latency: - Typical: <50ms (one KV read + CIDR match). First call after a deploy may take ~1s if it has to warm the range cache.
    Connector
  • Search for username across 15+ social/dev platforms (GitHub, Reddit, X/Twitter, LinkedIn, Instagram, TikTok, Discord, YouTube, Keybase, HackerOne, etc.). Use for OSINT investigations and identity verification. Free: 30/hr, Pro: 500/hr. Returns {username, total_found, platforms: [{name, exists, url, status_code}]}.
    Connector
  • 🤖 Connect a Telegram Bot (Bot API) channel from its bot token. When to use: - After a bot was created via @BotFather and you have its token. - The token alone is sufficient — no Telegram user account is needed. Validates the token, creates the channel account, and registers the webhook so the bot starts receiving messages immediately.
    Connector
  • For CFOs managing multinational working capital, this tool analyzes real-time ECB and FRED foreign exchange rates to recommend optimal hedging strategies. Input base currency, target currencies, and working capital amounts to receive forward contract suggestions, natural hedge opportunities, and cost-benefit analysis of various hedging instruments (forwards, options, swaps). Outputs include hedge ratios, estimated cost savings, and risk reduction metrics.
    Connector