Personal Assistant MCP server

Integrates with external services like Google APIs, Home Assistant, and DuckDuckGo to provide a modular framework for calendar management, task tracking, email handling, knowledge retrieval, and smart home control.
Back to servers
Setup instructions
Provider
zhangzhongnan928
Release date
Mar 04, 2025
Language
Python
Stats
12 stars

This MCP Server provides a personal assistant AI agent built with the Model Context Protocol. It can help manage your calendar, track tasks, handle emails, search the web, and control smart home devices when integrated with MCP clients like Claude for Desktop.

Requirements

⚠️ IMPORTANT: Python 3.10 or higher is required for the MCP SDK. The server will not work with earlier Python versions.

  • Python 3.10+
  • MCP SDK 1.2.0+
  • Required Python packages (specified in requirements.txt)

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/mcp-pa-ai-agent.git
cd mcp-pa-ai-agent
  1. Ensure you have Python 3.10+:
python --version
  1. If your system Python is older than 3.10, set up a compatible environment:
# Using conda
conda create -n mcp-env python=3.10
conda activate mcp-env

# OR using venv (if Python 3.10+ is installed elsewhere)
python3.10 -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Configure environment variables:
cp .env.example .env
  1. Edit the .env file with your API credentials and settings.

Running the Server

Start the MCP server with:

python mcp_server.py

The server will start and listen for MCP client connections.

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:

{
  "mcpServers": {
    "personal-assistant": {
      "command": "/path/to/python",
      "args": [
        "/absolute/path/to/mcp-pa-ai-agent/mcp_server.py"
      ]
    }
  }
}

Note: 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

Configuration

The server requires various API keys and credentials to access different services:

  • Google API: For calendar and email functionality (OAuth2 credentials)
  • Weather API: For weather information
  • News API: For news retrieval
  • Home Assistant: For smart home control

Refer to the .env.example file for all configurable options.

Troubleshooting

Python Version Issues

If you see an error like:

Error: Python 3.10 or higher is required for the MCP server.

You need to upgrade your Python version or use a virtual environment with Python 3.10+.

MCP SDK Installation Issues

If you encounter problems installing the MCP SDK:

ERROR: Could not find a version that satisfies the requirement mcp>=1.2.0

Make sure you're using Python 3.10+ and pip is updated:

pip install --upgrade pip

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "personal-assistant" '{"command":"/path/to/python","args":["/absolute/path/to/mcp-pa-ai-agent/mcp_server.py"]}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "personal-assistant": {
            "command": "/path/to/python",
            "args": [
                "/absolute/path/to/mcp-pa-ai-agent/mcp_server.py"
            ]
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "personal-assistant": {
            "command": "/path/to/python",
            "args": [
                "/absolute/path/to/mcp-pa-ai-agent/mcp_server.py"
            ]
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later