Log Activity

作者 mondaycom8fdc0b4af07a无许可证收录于 2026年10月8日更新于 2026年10月8日

Log calls, meetings, notes, and other activities to CRM item timelines — structured records with attendees, outcomes, and follow-ups. Use when someone says "log my call with", "add a note to the deal", "what activities happened on", "record this meeting", "update my note on", "track a call with", "log a meeting with", "what's the activity history for", "add meeting notes to", "I just spoke with", "note on the account", or "update the activity I logged".

AI 生成的概览

将通话、会议和备注记录到 monday CRM 项目时间线,并可读取或更新已有活动条目。

功能
该技能把通话、会议等结构化活动或纯文本备注写入已定位的 CRM 项目(商机、联系人、潜在客户或客户)时间线。它还能按时间范围读取某个项目的活动历史,并更新已有的时间线条目。所有写入或更新操作在执行前都会请求人工确认;结构化活动创建失败时会退化为普通时间线备注。
适用场景
当用户需要针对某条 CRM 记录记录通话、会议或备注,查看某个项目发生过哪些活动,或修正已记录的条目时使用。它面向单个项目的活动历史,而非团队层面的汇总统计。
运行要求
需要 monday CRM 的 MCP 连接器,包含用户上下文、搜索、看板信息、自定义活动、时间线条目和时间线备注等工具,并需要访问该服务的网络。不附带脚本,仅为指令。若无法加载活动类型,则退化为纯文本备注。

Log Activity

Flow: Trigger → Detect intent (log / read / update) → Resolve CRM item → Gather activity details → Execute → Confirm.

Input

  • Optional: activity description via argument (e.g., "call with Acme about renewal").
  • Optional: CRM item name or identifier if mentioned.

Output

  • Log (create): structured activity record (call, meeting, note) on the target item's timeline, with confirmation.
  • Read: formatted activity history for the specified item and time range.
  • Update: edited timeline entry with confirmation of changes.

Knowledge

  • Timeline = the activity feed on any CRM item (deal, contact, lead, account).
  • Activity types: calls, meetings, notes, emails (read-only from timeline), custom types per account.
  • For aggregated stats (team totals, rep comparisons), use the activity-insights skill — get-activity-insights is more efficient than counting raw timeline items.
  • Timeline items are append-only in the UI; the API allows updates to existing entries.
  • update-timeline-item visibility on external connector is unconfirmed — degrade gracefully if it fails.

Tools (MCP)

  • get-custom-activities — list activity types configured on the account (call, meeting, note, custom).
  • get-timeline-items — read an item's timeline (activities, emails, notes).
  • create-timeline-item — log a structured activity (call, meeting) with type, date, attendees, notes.
  • update-timeline-item — edit an existing timeline activity's content.
  • create-timeline-note — add a free-text note to an item's timeline.
  • get_user_context — user identity for attribution.
  • search / get_board_info / get_board_items_page — resolve CRM items by name or company.

Cross-skill handoffs

  • From meeting-to-opportunity: after a meeting recap, suggest logging the meeting as a structured activity on the deal.
  • From run-sequence: when a sequence triggers a manual call step, suggest logging the call outcome.
  • To morning-briefing: logged activities feed the daily brief's "recent activity" section.
  • From daily-briefing: brief surfaces items with no activity in N days → suggest logging.
  • To activity-insights: when the user asks about team totals or rep comparisons rather than a specific item's history.

Step 0: Connector check + activity types

Goal: Confirm connector works and cache available activity types.

  1. Try mcp__monday__get_user_context. On error → print install prompt, stop.
  2. Try mcp__monday__get-custom-activities.
  3. If successful → cache the list of activity types (id, name, icon) for use in Step 3. Set activities_available: true.
  4. If permission error or tool unavailable → set activities_available: false. The skill can still operate with create_timeline_note (free-text notes don't require activity-type resolution), but structured activities (calls, meetings) will degrade to notes. Print: "Activity types couldn't be loaded — I can still add notes to timelines. Structured call/meeting logging may be limited."

Step 1: Detect intent

Parse the user's argument to classify:

IntentTrigger signals
log"log", "record", "add", "note on", "track", "I just spoke with", default
read"what activities", "activity history", "what happened on", "show timeline"
update"update the note", "edit the activity", "change the meeting note", "correct"

If ambiguous and no CRM item mentioned, ask:

"Would you like to (a) log a new activity, (b) view activity history, or (c) update an existing entry?"


Step 2: Resolve CRM item

Goal: Find the specific deal, contact, lead, or account the activity relates to.

  1. Extract item identifier from the argument:

    • Company name ("Acme", "Globex", "TechCorp")
    • Contact name ("Johnson", "Sarah at Acme")
    • Deal name ("Q2 renewal", "enterprise upgrade")
    • Item ID (if explicitly given)
  2. If name extracted → mcp__monday__search({ query: "<name>", objectTypes: ["ITEM"] }).

    • Single result → use it.
    • Multiple results → present top 5 with board context: "Found multiple matches: (1) Acme Corp [Deals board] (2) Acme Inc [Leads board] (3) Acme - renewal [Deals board]. Which one?"
    • Zero results → broaden: try partial name, try get_board_items_page on likely boards (Deals, Contacts, Leads). Still zero → ask user.
  3. If no name in argument → ask: "Which CRM item should I log this activity on? (company name, deal name, or contact name)"

  4. Once resolved, note the itemId and boardId for subsequent calls.


Step 3: Execute — Log (Create)

3a: Determine activity type

If activities_available: true:

  1. Parse the user's description for type signals:
    • "call", "spoke with", "phoned", "rang" → call
    • "meeting", "met with", "demo", "presentation" → meeting
    • "note", "add a note", "reminder", "FYI" → note (free-text)
  2. If unclear, present available types: "What type of activity? (call / meeting / note / <custom types from account>)"

If activities_available: false:

  • Default to free-text note via create_timeline_note.

3b: Gather details

Based on type, collect (ask only what's missing from the argument):

Call:

  • Date/time (default: now)
  • Duration (optional)
  • Attendees/contacts (optional)
  • Outcome/summary (required — at least one line)
  • Follow-up action (optional)

Meeting:

  • Date/time (default: now)
  • Duration (optional)
  • Attendees (optional)
  • Summary/key points (required)
  • Next steps (optional)

Note:

  • Content (required)
  • That's it — notes are lightweight.

Parsing heuristic: extract as much as possible from the original argument before asking.

3c: Confirm and write

HITL GATE: Present the structured activity: "Log this to <item name>?"

Type: CallDate: 2026-06-23 10:00Summary: They want to renew but need pricing by FridayFollow-up: Send pricing by Friday

(yes / edit / cancel)

On "yes":

  • For structured activities: mcp__monday__create-timeline-item({ itemId, activityType, date, content: { summary, attendees, followUp } }).
  • For notes: mcp__monday__create-timeline-note({ itemId, content: "<note text>" }).

Report: "Logged <type> on <item name>. Timeline updated."

If the tool call fails, fall back to create_timeline_note with the same content formatted as text. Inform: "Couldn't log as a structured <type> — added as a timeline note instead."


Step 4: Execute — Read

  1. mcp__monday__get-timeline-items({ itemId }).
  2. Parse time filter from argument (this week / last 7 days / today / default last 10).
  3. Format output as a table with Date, Type, Summary columns.
  4. If zero activities: "No activities on <item name> in <window>. Want to log one now?"
  5. For team-wide aggregated stats (totals by rep or type), use the activity-insights skill instead.

Step 5: Execute — Update

  1. Retrieve timeline: mcp__monday__get-timeline-items({ itemId }).
  2. Present recent entries; resolve which to update from context or by asking.
  3. Collect the edit.

HITL GATE: "Update this entry on <item name>?"

Before: "Demo scheduled for next week"After: "Demo scheduled for next week. Decision moved to July."

(yes / edit / cancel)

  1. mcp__monday__update-timeline-item({ timelineItemId, content: <updated content> }).
  2. If tool fails: surface error and suggest editing directly in monday CRM.

Shared patterns

  • HITL gates on all writes and updates.
  • Parse-first, ask-second.
  • Graceful type degradation — if structured activity creation fails, fall back to create-timeline-note.
  • No deletes — timeline entries cannot be removed via MCP.
  • Attribution — entries carry the user's identity from get_user_context.

Error handling reference

FailureBehavior
Connector missingStep 0 stops; print install link.
Activity types unavailableDegrade to notes; inform user.
CRM item not foundBroaden search; ask user.
Create fails (invalid type)Fall back to create-timeline-note; inform user.
Update failsSurface error; suggest editing in monday CRM UI.
Timeline empty on readOffer to log a new activity.
Tool unavailable (Gateway)"Activity logging tools aren't available on the connector yet — use the monday CRM UI for now."

Completion criteria

  • Step 0 connector check passed; activity types cached or degraded gracefully.
  • Intent correctly classified (log / read / update).
  • CRM item resolved before any write.
  • Every write/update went through HITL confirmation.
  • Structured activities used when available; notes as fallback.
  • No timeline entries deleted (hard rail).
  • Errors surfaced with actionable guidance.

来源与署名

来源:mondaycom/mcp位于plugins/monday-crm/skills/log-activity提交8fdc0b4

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架