Labsco
zhangzhongnan928 logo

MCP Personal Assistant Agent

โ˜… 23

from zhangzhongnan928

A versatile AI personal assistant for managing your calendar, tasks, emails, web searches, and smart home.

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedFreeAdvanced setup

MCP Personal Assistant Agent

A versatile personal assistant AI agent built with the Model Context Protocol (MCP) that helps with calendar, tasks, emails, and more.

Overview

This project is a Model Context Protocol (MCP) server that provides a set of tools for a personal assistant agent. It can be integrated with MCP clients like Claude for Desktop to give AI assistants the ability to:

  • Manage calendar events
  • Track tasks and to-dos
  • Read and send emails
  • Search the web and retrieve information
  • Control smart home devices

Connecting to Claude for Desktop

  1. Install Claude for Desktop

  2. Configure Claude for Desktop to use this MCP server by editing the configuration file at:

    • MacOS/Linux: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  3. Add the following configuration:

Copy & paste โ€” that's it
{
  "mcpServers": {
    "personal-assistant": {
      "command": "/path/to/python",
      "args": [
        "/absolute/path/to/mcp-pa-ai-agent/mcp_server.py"
      ]
    }
  }
}

If you're using a virtual environment, make sure to point to the Python executable in that environment.

  1. Restart Claude for Desktop

Available Tools

Calendar

  • get_events: Retrieve upcoming calendar events
  • create_event: Schedule a new calendar event

Tasks

  • list_tasks: View all tasks or filter by status
  • add_task: Create a new task
  • update_task_status: Mark tasks as pending, in-progress, or completed

Email

  • get_emails: List recent emails from your inbox
  • read_email: View the full content of a specific email
  • send_email: Compose and send a new email

Knowledge

  • web_search: Search the web for information
  • get_weather: Get current weather information
  • get_news: Retrieve latest news articles

Smart Home

  • list_devices: View all smart home devices
  • control_device: Control smart home devices (lights, thermostats, etc.)
  • get_device_state: Get detailed information about a device's current state

Development

To add new functionality to the server, you can:

  1. Create a new module in the modules/ directory
  2. Implement functions with the @mcp.tool() decorator
  3. Import your module in mcp_server.py

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.