Skip to main content

MCP server for Hubstaff API integration

Project description

Hubstaff MCP Server

A Model Context Protocol (MCP) server for Hubstaff API integration, enabling seamless time tracking, project management, and team collaboration through AI assistants.

Features

  • Time Tracking: Create, update, and retrieve time entries
  • Project Management: List and manage projects, tasks, and teams
  • User Management: Get user information and organization details
  • Activity Monitoring: Access screenshots, activities, and productivity data
  • Reporting: Generate timesheets and activity reports

Installation

Using uv (recommended)

uv add hubstaff-mcp

Using pip

pip install hubstaff-mcp

Configuration

Before using the server, you need to obtain a Personal Access Token from Hubstaff:

  1. Log in to your Hubstaff account
  2. Go to Settings → Personal Access Tokens
  3. Create a new token with the required permissions

Environment Variables

Set the following environment variable:

export HUBSTAFF_REFRESH_TOKEN="your_personal_access_token_here"

Or create a .env file in your project root:

HUBSTAFF_REFRESH_TOKEN=your_personal_access_token_here

Note: The personal access token is used as a refresh token to obtain temporary access tokens for API calls. This approach provides better security by automatically handling token renewal.

Usage

Running the Server

hubstaff-mcp

Or using uv:

uv run hubstaff-mcp

Configuration with Claude Desktop

Add the following to your Claude Desktop configuration file (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

Option 1: Using the installed package (Recommended)

{
  "mcpServers": {
    "hubstaff": {
      "command": "hubstaff-mcp",
      "env": {
        "HUBSTAFF_REFRESH_TOKEN": "your_personal_access_token_here"
      }
    }
  }
}

Option 2: Using uv with project directory

{
  "mcpServers": {
    "hubstaff": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/your/project",
        "run",
        "hubstaff-mcp"
      ],
      "env": {
        "HUBSTAFF_REFRESH_TOKEN": "your_personal_access_token_here"
      }
    }
  }
}

Option 3: Using uv run directly

{
  "mcpServers": {
    "hubstaff": {
      "command": "uv",
      "args": ["run", "hubstaff-mcp"],
      "env": {
        "HUBSTAFF_REFRESH_TOKEN": "your_personal_access_token_here"
      }
    }
  }
}

Available Tools

The server provides the following tools:

Time Management

  • get_time_entries - Retrieve time entries with filtering options
  • create_time_entry - Create a new time entry
  • update_time_entry - Update an existing time entry
  • delete_time_entry - Delete a time entry

Project & Task Management

  • get_projects - List all projects
  • get_project_details - Get detailed project information
  • get_tasks - List tasks for a project
  • create_task - Create a new task
  • update_task - Update task details

User & Organization

  • get_current_user - Get current user information
  • get_users - List organization users
  • get_organizations - List user organizations
  • get_teams - List organization teams

Activity & Monitoring

  • get_activities - Retrieve user activities
  • get_screenshots - Get screenshots for time entries
  • get_timesheets - Generate timesheets

Example Queries

Once configured with Claude Desktop, you can ask:

  • "Show me my time entries for this week"
  • "Create a new task called 'Update documentation' in the Development project"
  • "What projects am I currently working on?"
  • "Get my team's activity summary for today"
  • "Show me screenshots from my last work session"

Development

Setup

git clone https://github.com/yourusername/hubstaff-mcp
cd hubstaff-mcp
uv sync --dev

Running Tests

uv run pytest

Code Formatting

uv run black .
uv run ruff check .

API Coverage

This MCP server covers the following Hubstaff API endpoints:

  • Time Entries
  • Projects & Tasks
  • Users & Organizations
  • Teams
  • Activities & Screenshots
  • Timesheets
  • Notes

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Run the test suite
  6. Submit a pull request

License

MIT License - see LICENSE file for details.

Support

For issues and questions:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hubstaff_mcp-0.1.1.tar.gz (8.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hubstaff_mcp-0.1.1-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file hubstaff_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: hubstaff_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 8.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.7.9

File hashes

Hashes for hubstaff_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 0bd148db9ed14f234b1852b4c6d4da007f119fae297d9d6e587a97966199cc2b
MD5 47f0c130d7961f97a426903a5c646d77
BLAKE2b-256 ee7d282b33143e237f5b4dcd3682c2bcfe159849e75ebfb7d1699de408b16db8

See more details on using hashes here.

File details

Details for the file hubstaff_mcp-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for hubstaff_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d9046ff68d4eeaf85055947c332784988c6fcc3d9a5ac3f4c01d72cb93890254
MD5 1578bef6388ec020b348a38b822517a9
BLAKE2b-256 8ae698590b804bcb8220f4d27c1ac70032e21c874b44644cee522afff669d24c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page