mcpField
P
Personal Productivity Agent

Personal Productivity Agent

Local
github.com/mwill20AI & Agents2Updated 74w ago

About Personal Productivity Agent

Personal Productivity Agent is a Python tool for Windows users to automate tasks through an interactive CLI, including file operations and system utilities. It can also use Google Gemini to analyze Windows Event Logs and expose that analysis in MCP mode.

Key features

  1. 01Find, move, and rename files
  2. 02Get system and network information
  3. 03Launch apps and find duplicate files
  4. 04Read .ics events and set reminders
  5. 05Analyze Windows Event Logs with Gemini

Use cases

  1. 01Organize files through the interactive menu
  2. 02Check disk, memory, CPU, or network details
  3. 03Analyze event logs and get troubleshooting suggestions
  4. 04Invoke event log analysis from an orchestrator

MCP support

In MCP mode, it exchanges JSON requests and responses over stdin and stdout. It exposes analyze_windows_event_logs for orchestrators and other programs.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Personal Productivity Agent

Overview

The Personal Productivity Agent is a Python-based tool designed to assist with various tasks on a Windows system and leverage the power of Large Language Models (LLMs) for intelligent analysis. It can operate as an interactive command-line assistant or as a backend server component for integration with orchestrators.

Features

The agent currently offers the following capabilities:

  • Interactive File System Operations:
    • Find files
    • Move files (with confirmation)
    • Rename files (with confirmation)
    • Create directories (with confirmation)
  • System Information & Utilities:
    • Get disk usage, memory info, CPU info, network info
    • Launch applications
    • Find duplicate files
  • Productivity Tools:
    • Summarize documents (currently uses a mock LLM for this CLI feature)
    • Get upcoming calendar events from .ics files
    • Set desktop reminders/notifications
  • Windows Event Log Analysis (with LLM Integration):
    • Fetch Windows Event Logs based on specified criteria (log names, levels, time range).
    • Utilize Google's Gemini LLM to analyze event log entries, provide explanations, suggest potential causes, troubleshooting steps, and a safe command-line fix.

Modes of Operation

The agent can run in two distinct modes:

1. Interactive CLI Mode
  • How to Run: python main_agent.py
  • Description: In this mode, the agent presents a menu-driven interface directly in your PowerShell or command prompt. You can select various actions, and the agent will prompt you for necessary inputs and display results directly. This mode is intended for direct user interaction.
2. MCP (Multi-Capability Protocol) Server Mode
  • How to Run: python main_agent.py --mcp-mode
  • Description: When started in MCP mode, the agent runs as a background process, listening for JSON-formatted requests on its standard input (stdin) and sending JSON-formatted responses to its standard output (stdout).
  • Purpose: This mode is designed for programmatic integration. Other applications or orchestrators (like a TypeScript-based agent or a central automation system) can communicate with this Python agent by sending it standardized JSON messages to invoke its capabilities.
  • Example MCP Tool: The analyze_windows_event_logs functionality is exposed via MCP. An orchestrator can send a JSON request specifying event log parameters, and the agent will return a JSON response containing the LLM's analysis, a suggested command, and whether the command requires administrator privileges.
  • Benefits:
    • Automation: Allows other systems to use the agent's features automatically.
    • Modularity: Enables building specialized agents that can be orchestrated by a central controller.
    • Structured Data Exchange: Ensures reliable communication between software components using JSON.

Key Technologies

  • Python 3.x
  • Google Gemini LLM: Used for intelligent analysis of event logs.
    • Requires a GEMINI_API_KEY environment variable to be set for authentication. If not set, the agent will indicate that it's using a mock LLM for features requiring it.
  • MCP (Multi-Capability Protocol): A simple JSON-based protocol over stdio for inter-process communication in server mode.

Setup and Requirements

  1. Python: Ensure Python 3.x is installed.
  2. Dependencies: Install necessary Python packages. The primary one for LLM interaction is google-generativeai. A requirements.txt file would typically list all dependencies.
    pip install google-generativeai
    # Potentially other packages like 'plyer' for notifications
    
  3. API Key: For Gemini LLM features, obtain an API key from Google AI Studio and set it as an environment variable:
    • In PowerShell: $env:GEMINI_API_KEY = "YOUR_API_KEY_HERE"
    • (Remember to replace "YOUR_API_KEY_HERE" with your actual key. Do not commit your key to GitHub.)

How to Run

  • Interactive Mode:

    cd path\to\PersonalProductivityAgent
    # Set API Key if using LLM features
    $env:GEMINI_API_KEY = "YOUR_API_KEY_HERE" 
    python main_agent.py
    
  • MCP Server Mode (for integration):

    cd path\to\PersonalProductivityAgent
    # Set API Key if using LLM features
    $env:GEMINI_API_KEY = "YOUR_API_KEY_HERE"
    python main_agent.py --mcp-mode
    

    The agent will then listen for JSON requests on stdin.

Future Enhancements

  • Integration with a TypeScript-based orchestrator (agent.ts) to manage and utilize MCP tools.
  • Expansion of tools available via MCP server mode.
  • Development of a more user-friendly graphical interface (Web UI or Desktop App) that leverages the agent's capabilities.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.