Skillshub FreshBooks Automation

FreshBooks Automation: manage businesses, projects, time tracking, and billing in FreshBooks cloud accounting

install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/ComposioHQ/awesome-claude-skills/freshbooks-automation" ~/.claude/skills/comeonoliver-skillshub-freshbooks-automation && rm -rf "$T"
manifest: skills/ComposioHQ/awesome-claude-skills/freshbooks-automation/SKILL.md
source content

FreshBooks Automation

Automate FreshBooks operations including listing businesses, managing projects, tracking time, and monitoring budgets for small and medium-sized business accounting.

Toolkit docs: composio.dev/toolkits/freshbooks


Setup

This skill requires the Rube MCP server connected at

https://rube.app/mcp
.

Before executing any tools, ensure an active connection exists for the

freshbooks
toolkit. If no connection is active, initiate one via
RUBE_MANAGE_CONNECTIONS
.


Core Workflows

1. List Businesses

Retrieve all businesses associated with the authenticated user. The

business_id
from this response is required for most other FreshBooks API calls.

Tool:

FRESHBOOKS_LIST_BUSINESSES

Parameters: None required.

Example:

Tool: FRESHBOOKS_LIST_BUSINESSES
Arguments: {}

Output: Returns business membership information including all businesses the user has access to, along with their role in each business.

Important: Always call this first to obtain a valid

business_id
before performing project-specific operations.


2. List and Filter Projects

Retrieve all projects for a business with comprehensive filtering and sorting options.

Tool:

FRESHBOOKS_LIST_PROJECTS

Key Parameters:

  • business_id
    (required) -- Business ID obtained from
    FRESHBOOKS_LIST_BUSINESSES
  • active
    -- Filter by active status:
    true
    (active only),
    false
    (inactive only), omit for all
  • complete
    -- Filter by completion:
    true
    (completed),
    false
    (incomplete), omit for all
  • sort_by
    -- Sort order:
    "created_at"
    ,
    "due_date"
    , or
    "title"
  • updated_since
    -- UTC datetime in RFC3339 format, e.g.,
    "2026-01-01T00:00:00Z"
  • include_logged_duration
    --
    true
    to include total logged time (in seconds) per project
  • skip_group
    --
    true
    to omit team member/invitation data (reduces response size)

Example:

Tool: FRESHBOOKS_LIST_PROJECTS
Arguments:
  business_id: 123456
  active: true
  complete: false
  sort_by: "due_date"
  include_logged_duration: true

Use Cases:

  • Get all projects for time tracking or invoicing
  • Find projects by client, status, or date range
  • Monitor project completion and budget tracking
  • Retrieve team assignments and project groups

3. Monitor Active Projects

Track project progress and budgets by filtering for active, incomplete projects.

Steps:

  1. Call
    FRESHBOOKS_LIST_BUSINESSES
    to get
    business_id
  2. Call
    FRESHBOOKS_LIST_PROJECTS
    with
    active: true
    ,
    complete: false
    ,
    include_logged_duration: true
  3. Analyze logged duration vs. budget for each project

4. Review Recently Updated Projects

Check for recent project activity using the

updated_since
filter.

Steps:

  1. Call
    FRESHBOOKS_LIST_BUSINESSES
    to get
    business_id
  2. Call
    FRESHBOOKS_LIST_PROJECTS
    with
    updated_since
    set to your cutoff datetime
  3. Review returned projects for recent changes

Example:

Tool: FRESHBOOKS_LIST_PROJECTS
Arguments:
  business_id: 123456
  updated_since: "2026-02-01T00:00:00Z"
  sort_by: "created_at"

Recommended Execution Plan

  1. Get the business ID by calling
    FRESHBOOKS_LIST_BUSINESSES
  2. List projects using
    FRESHBOOKS_LIST_PROJECTS
    with the obtained
    business_id
  3. Filter as needed using
    active
    ,
    complete
    ,
    updated_since
    , and
    sort_by
    parameters

Known Pitfalls

PitfallDetail
business_id requiredMost FreshBooks operations require a
business_id
. Always call
FRESHBOOKS_LIST_BUSINESSES
first to obtain it.
Date formatThe
updated_since
parameter must be in RFC3339 format:
"2026-01-01T00:00:00Z"
. Other formats will fail.
Paginated resultsProject list responses are paginated. Check for additional pages in the response.
Empty resultsReturns an empty list if no projects exist or match the applied filters. This is not an error.
Logged duration unitsWhen
include_logged_duration
is true, the duration is returned in seconds. Convert to hours (divide by 3600) for display.

Quick Reference

Tool SlugDescription
FRESHBOOKS_LIST_BUSINESSES
List all businesses for the authenticated user
FRESHBOOKS_LIST_PROJECTS
List projects with filtering and sorting for a business

Powered by Composio