Surface Tools
Cross-domain read views that give your AI instant orientation - session dashboards, entity cards, weekly retros, and stuck lists.
Surfaces are high-level “what’s going on” views that pull together data from tasks, CRM, finance, and feeds into actionable snapshots. They’re designed for AI agents that need to orient quickly without making a dozen separate calls.
What you can do
“Catch me up.”
“What did we ship last week? Turn it into a LinkedIn post.”
“What’s falling through the cracks?”
“Give me the full picture on Acme Corp.”
Tools
| Tool | What it does |
|---|---|
get_session_start | Morning dashboard with overdue tasks, AI work queue, finance pulse (MTD income/expense), cold customers, unread feed counts, and suggested actions. Call this at the start of every session. |
get_entity_card | Complete picture of any customer, contact, transaction, or project - the record itself plus open tasks, recent interactions, and linked records in one call. |
get_weekly_retro | Completed tasks grouped by their first tag with completion notes. Set format: 'linkedin' for a ready-to-post draft. Supports week_offset to look back up to 12 weeks. |
get_stuck_list | Surfaces stuck, stale, and overdue tasks: in-progress tasks untouched for N days, anything blocked, and todo items past their due date. Each row includes a days-stale count and suggested triage action. |
Session orientation
The get_session_start tool is the recommended entry point for every conversation. It returns:
- Overdue tasks and tasks due today
- AI work queue (tasks assigned to @claude, @gpt, etc.)
- Blocked tasks with their reasons
- Finance pulse - month-to-date income, expenses, and net
- Cold customers - active customers with no interaction in 30+ days
- Unread feed counts by category
- Suggested actions based on all of the above
On a fresh install, it detects the empty database and offers a guided walkthrough instead of showing an empty dashboard.
Weekly retro
The get_weekly_retro is great for build-in-public updates and team standups. It groups completed tasks by their first tag and includes completion notes as quotes.
You: "What did we ship last week? Format it for LinkedIn."
AI: get_weekly_retro({ week_offset: 1, format: "linkedin" })
This week in the build:
#sales
- Closed Acme Corp renewal -- "2-year deal at standard rate"
- Sent revised SOW to BrightLabs
#product
- Shipped entity cards feature
- Fixed stuck list query performance
#buildinpublic #founders
Entity cards
Use get_entity_card when you need the complete context on any entity. It bundles:
- The entity record itself (customer details, contact info, or transaction data)
- All open tasks linked to that entity
- Recent interactions (for customers and contacts)
- Linked transactions (for customers)
This replaces the pattern of calling get_customer + list_entity_tasks + list_interactions separately.
Stuck list
The get_stuck_list surfaces work that needs attention across three categories:
- Stale - in-progress tasks that haven’t been updated in N days (default: 7)
- Blocked - tasks with status “blocked”, with or without a blocking dependency
- Overdue - todo items past their due date
Each item comes with a days_stale count and a suggested_action tailored to the situation (e.g. “Check in with @claude or add a progress note” for stale AI-assigned work).