UNIVERSAL_TOOLS_README.mdโข11.9 kB
# Universal Daily Task Tools for mcpart MCP Server
## Overview
The mcpart MCP server now includes **19 universal tools** for daily business productivity. These tools work for ANY business type (not just art supply stores) and enable task management, note-taking, expense tracking, and scheduling through natural language conversations.
## ๐ฏ What's New
### Tool Count: 43 โ 62 Total Tools
**Original (36 tools):**
- Art supply store inventory, customers, orders
- Social media management
**VIP Integration (7 tools):**
- Synthetic dataset generation for computer vision
**NEW Universal Tools (19 tools):** โญ
- Task management (5 tools)
- Calendar & scheduling (4 tools)
- Notes & documentation (3 tools)
- Expense tracking (3 tools)
- Reporting (2 tools)
- Alerts & reminders (2 tools)
## ๐ Available Tools
### Task Management (5 tools)
#### `create_task`
Create a new task with due date, priority, and assignee.
**Example:**
```
User: "Remind me to submit the quarterly report by Friday"
AI: โ
Task created: "Submit quarterly report" (due: 2025-10-10, priority: high)
```
**Parameters:**
- `title` (required): Task title
- `description`: Detailed description
- `due_date`: "today", "tomorrow", "next week", or YYYY-MM-DD
- `priority`: "low", "medium", "high"
- `assignee`: Person responsible
- `tags`: Array of tags for categorization
#### `list_tasks`
List tasks with filtering by status, priority, or due date.
**Example:**
```
User: "Show me all high priority tasks"
AI: ๐ 3 high priority tasks:
1. Review investor presentation (due today)
2. Fix production bug (due tomorrow)
3. Call supplier about restock (due 10/8)
```
**Filters:**
- `status`: "pending", "in_progress", "completed"
- `priority`: "low", "medium", "high"
- `due_before`: Date cutoff
- `assignee`: Filter by person
- `tags`: Filter by tags
#### `complete_task`
Mark a task as completed.
**Example:**
```
User: "Mark task #3 as done"
AI: โ
Completed: "Call supplier about restock"
```
#### `update_task`
Update any task details.
**Example:**
```
User: "Change task #5 priority to high and move it to tomorrow"
AI: โ
Updated task #5: priority โ high, due_date โ 2025-10-07
```
#### `get_daily_agenda`
Get today's task list with overdue and upcoming items.
**Example:**
```
User: "What's on my plate today?"
AI: ๐ Today's Agenda (Oct 6):
โ
Due today: 3 tasks
โ ๏ธ Overdue: 1 task
๐
Upcoming: 5 tasks (next 7 days)
```
---
### Calendar & Scheduling (4 tools)
#### `schedule_event`
Add a calendar event with time, location, and attendees.
**Example:**
```
User: "Schedule a team meeting tomorrow at 2pm"
AI: โ
Event scheduled: "Team meeting"
๐
Oct 7, 2025 at 2:00 PM
```
**Parameters:**
- `title` (required): Event name
- `start_time` (required): ISO datetime
- `end_time`: ISO datetime
- `location`: Where
- `attendees`: Array of attendee names
#### `list_upcoming_events`
List events for the next N days.
**Example:**
```
User: "What meetings do I have this week?"
AI: ๐
Upcoming events (7 days):
1. Team meeting (Oct 7, 2pm)
2. Client demo (Oct 8, 10am)
3. Budget review (Oct 10, 3pm)
```
#### `set_reminder`
Create a one-time reminder.
**Example:**
```
User: "Remind me in 2 hours to check emails"
AI: โฐ Reminder set for 6:00 PM: "Check emails"
```
#### `get_today_schedule`
Get complete schedule for today (tasks + events).
**Example:**
```
User: "What's my full schedule today?"
AI: ๏ฟฝ๏ฟฝ Today's Schedule (Oct 6):
Tasks (3):
- Review presentation (high priority)
- Update inventory
- Call supplier
Events (2):
- 10:00 AM: Vendor meeting
- 3:00 PM: Demo walkthrough
```
---
### Notes & Documentation (3 tools)
#### `create_note`
Create a note with optional tags.
**Example:**
```
User: "Make a note about the VIP demo results"
AI: ๐ Note created: "VIP demo results"
Tags: demo, vip
```
#### `search_notes`
Search notes by keyword or tags.
**Example:**
```
User: "Find all notes about the demo"
AI: ๐ Found 3 notes:
1. VIP demo results (Oct 6)
2. Demo preparation checklist (Oct 5)
3. Demo talking points (Oct 4)
```
#### `tag_note`
Add or update tags on an existing note.
**Example:**
```
User: "Tag note #5 with 'urgent' and 'investor'"
AI: โ
Updated note #5 tags: urgent, investor
```
---
### Expense Tracking (3 tools)
#### `log_expense`
Record a business expense.
**Example:**
```
User: "Log a $45 lunch expense"
AI: ๐ฐ Expense logged: $45.00 (Food category)
Date: Oct 6, 2025
```
**Parameters:**
- `amount` (required): Dollar amount
- `category` (required): Expense category
- `description` (required): What it was for
- `date`: "today" or YYYY-MM-DD
- `payment_method`: How paid
#### `get_expense_summary`
Get expense totals and breakdown by category.
**Example:**
```
User: "How much have I spent this month?"
AI: ๐ฐ October Expense Summary:
Total: $3,456.78
By category:
- Office Supplies: $456.23
- Software: $1,250.00
- Travel: $892.55
- Food: $858.00
```
**Filters:**
- `start_date`: Start of range
- `end_date`: End of range
- `category`: Specific category
#### `categorize_expenses`
List all unique expense categories.
**Example:**
```
User: "What expense categories do I use?"
AI: ๐ Expense categories (8):
- Food
- Office Supplies
- Software
- Travel
- Hardware
- Marketing
- Utilities
- Professional Services
```
---
### Reporting (2 tools)
#### `generate_daily_summary`
End-of-day summary report.
**Example:**
```
User: "Give me today's summary"
AI: ๐ Daily Summary for Oct 6, 2025
๐ Tasks: 5 due today (2 overdue)
๐
Events: 3
๐ฐ Expenses: $170.99
โ
Completed: 7 tasks
```
#### `export_data`
Export tasks, notes, or expenses to JSON.
**Example:**
```
User: "Export all my tasks"
AI: โ
Exported 42 tasks to JSON
[Downloads task data]
```
**Options:**
- `data_type`: "tasks", "notes", "expenses", "events", "all"
---
### Alerts & Reminders (2 tools)
#### `create_alert`
Create a custom alert for deadlines.
**Example:**
```
User: "Alert me on Friday about the deadline"
AI: ๐ Alert set: Friday, Oct 10 at 9:00 AM
"Project deadline"
```
#### `list_alerts`
List all active alerts and reminders.
**Example:**
```
User: "What alerts do I have?"
AI: ๐ Active alerts (3):
1. Project deadline (Oct 10, 9am)
2. Follow up with client (Oct 8, 2pm)
3. Submit expense report (Oct 11, 5pm)
```
---
## ๐ Usage in Open WebUI
### Natural Language Examples
**Task Management:**
- "Create a high priority task to review the investor pitch by Thursday"
- "Show me all pending tasks"
- "Mark task 5 as complete"
- "What do I need to do today?"
**Calendar:**
- "Schedule a client meeting tomorrow at 10am"
- "What events do I have this week?"
- "Remind me to check inventory at 3pm"
**Notes:**
- "Create a note about the demo preparation"
- "Find all notes tagged with 'urgent'"
- "Add 'investor' tag to note 3"
**Expenses:**
- "Log a $125 software expense"
- "How much did I spend on office supplies this month?"
- "Show me all expense categories"
**Reporting:**
- "Give me a daily summary"
- "Export all my tasks to JSON"
---
## ๐พ Data Storage
All data is stored in JSON files in the `data/` directory:
```
mcpart/
data/
tasks.json - All tasks
notes.json - All notes
expenses.json - All expenses
events.json - Calendar events
reminders.json - Alerts and reminders
```
**Backup:** Simply copy the `data/` directory to back up all your task data.
---
## ๐ฏ Integration with Existing Tools
Universal tools work seamlessly with existing mcpart tools:
**Example combined workflows:**
1. **Inventory + Tasks:**
```
User: "Check low stock items"
AI: โ ๏ธ 3 items low: Acrylic Paint, Brushes, Canvas
User: "Create a task to reorder those tomorrow"
AI: โ
Task created: "Reorder low stock items" (due Oct 7)
```
2. **VIP + Notes:**
```
User: "Generate a VIP dataset for retail products"
AI: โ
Dataset generation started...
User: "Make a note about the dataset config I used"
AI: ๐ Note created with VIP configuration details
```
3. **Social Media + Expenses:**
```
User: "Create an Instagram post about new products"
AI: โ
Post scheduled
User: "Log a $50 expense for social media ads"
AI: ๐ฐ Expense logged: $50.00 (Marketing)
```
---
## ๐ Tool Statistics
**Total Tools:** 62
- Art Supply Store: 36 tools
- VIP Integration: 7 tools
- Universal Daily Tasks: 19 tools โญ
**Categories:**
- Inventory Management: 12 tools
- Customer Management: 8 tools
- Sales & Orders: 6 tools
- Social Media: 5 tools
- Supplier Management: 5 tools
- Dataset Generation (VIP): 7 tools
- Task Management: 5 tools โญ
- Calendar & Scheduling: 4 tools โญ
- Notes: 3 tools โญ
- Expenses: 3 tools โญ
- Reporting: 2 tools โญ
- Alerts: 2 tools โญ
---
## ๐งช Testing
Test the universal tools:
```bash
cd /home/stacy/mcpart
node test_universal_tools.js
```
Expected output:
```
๐งช Testing Universal Tools
โ
Test 1: Create Tasks
โ
Test 2: List Tasks
โ
Test 3: Create Notes
โ
Test 4: Log Expenses
โ
Test 5: Expense Summary
โ
Test 6: Today's Schedule
โ
Test 7: Daily Summary
๐ All tests passed!
```
---
## ๐ง Technical Details
### Files Added:
- `src/task-manager.ts` - Core task/note/expense logic (530 lines)
- `src/universal-tools.ts` - MCP tool definitions (250 lines)
- `build/task-manager.js` - Compiled JavaScript
- `build/universal-tools.js` - Compiled JavaScript
### Integration Points:
- `src/index.ts` - Imports and registers universal tools
- Tools array: `...universalTools` added after `...vipTools`
- Handler: 19 new cases in CallToolRequestSchema switch
### Date Parsing:
Natural language dates supported:
- "today" โ Current date
- "tomorrow" โ Current date + 1 day
- "next week" โ Current date + 7 days
- "YYYY-MM-DD" โ Exact date
---
## ๐ What This Enables
**Before:** mcpart was an art supply store assistant
**After:** mcpart is a **universal business productivity assistant**
You can now:
- โ
Manage tasks and projects
- โ
Schedule meetings and events
- โ
Track business expenses
- โ
Take organized notes
- โ
Generate daily reports
- โ
Set custom reminders
- โ
Export all data for analysis
**AND still:**
- โ
Manage inventory
- โ
Handle customer relationships
- โ
Track sales
- โ
Run social media campaigns
- โ
Generate synthetic datasets (VIP)
---
## ๐ Next Steps
1. **Test in Open WebUI**:
- Connect mcpart MCP server
- Try natural language task commands
- Verify all 19 tools are available
2. **Daily Usage**:
- Start each day with "What's on my agenda?"
- Log expenses as they occur
- Create notes for important decisions
- End day with "Generate daily summary"
3. **Backup**:
- Regularly copy `data/` directory
- Export critical data with `export_data` tool
4. **Customize**:
- Add more expense categories
- Create task templates
- Set recurring reminders
---
## ๐ Demo Script for Investors
```
1. "What's on my agenda today?"
โ Shows tasks, events, reminders
2. "Create a high priority task to prepare investor deck by Friday"
โ Creates task with natural language date
3. "Log a $45 lunch expense for today"
โ Tracks business expense
4. "How much have I spent this month?"
โ Shows expense breakdown
5. "Create a note about the JavaScript extraction breakthrough"
โ Documents important milestone
6. "Search notes for 'investor'"
โ Finds all investor-related notes
7. "Generate daily summary"
โ Comprehensive end-of-day report
8. "Export all tasks"
โ Data portability demonstration
```
---
**Universal tools transform mcpart from a domain-specific assistant into a complete business productivity platform!** ๐