Skip to main content
Glama
Alberta Tax Agent

Alberta Tax Agent

by chiKeka

Alberta Tax Agent

A Claude MCP plugin that brings the working knowledge of an Alberta tax accounting and law firm into your editor. 47 tools across 10 domains, plus a self-learning layer that lets the agent absorb new rates, rules, and corrections over time.

What's inside

  • Corporate Tax (4 tools). T2/AT1 calculations, SBD, instalments, rate references.

  • GST/HST (4 tools). Registration assessment, Quick Method comparison, ITC eligibility.

  • Payroll (4 tools). CPP/EI/tax deductions, remittance schedules, WCB premiums.

  • Tax Planning (5 tools). Salary vs dividend, Holdco analysis, estate freezes, income splitting, LCGE qualification.

  • Deductions & Credits (5 tools). CCA, SR&ED, vehicle expense, home office.

  • Compliance & Audit (6 tools). Risk assessment, late penalties, voluntary disclosures, director liability, dispute roadmap.

  • International Tax (4 tools). Treaty rates, cross-border transactions, foreign tax credits.

  • Business Structure (3 tools). Entity comparison, asset vs share sale, reorganizations.

  • Deadlines & Calendar (3 tools). Upcoming deadlines, filing calendar, year-end checklist.

  • Self-Learning (9 tools). Knowledge updates, research logging, correction tracking, insight capture, dynamic rate overrides.

Full tool listing in CLAUDE.md.

Related MCP server: qb-mcp

Install

npm install
npm run build

Register with Claude Code

claude mcp add alberta-tax-agent node /absolute/path/to/alberta-tax-agent/build/index.js

Register with Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "alberta-tax-agent": {
      "command": "node",
      "args": ["/absolute/path/to/alberta-tax-agent/build/index.js"]
    }
  }
}

Test with the MCP Inspector

npm run inspect

Why this exists

Tax software treats the Income Tax Act as a black box and gives you numbers. A tax-aware agent treats it as queryable knowledge and gives you reasoning. The difference matters most when the right answer depends on facts the form doesn't ask for: a Holdco that may or may not earn its keep, an SR&ED claim whose proxy method changes the math, a cross-border payment whose treaty rate beats the statutory withholding.

The self-learning layer exists because tax law changes. Static rate tables go stale within a year. The dynamic rate overlay lets the agent absorb corrections without a code change.

Disclaimer

Informational analysis only. Not professional tax advice. Verify against current CRA and Alberta TRA publications and consult a qualified CPA or tax lawyer before making decisions with real money attached.

License

MIT

Available Tools

69 tools
add_ownerAdd Owner / ShareholderA

Add an owner, shareholder, or partner to the business profile. I need this for salary/dividend planning, income splitting analysis, and LCGE planning.

Inputs: name (required), ownership_percent (required), role, annual_salary, +3 more.

advisor_notesView Advisor Notes & RemindersB

See all my notes, reminders, and action items for your business. These are things I've flagged that need your attention.

Inputs: show_resolved.

asset_vs_share_saleAsset vs Share Sale ComparisonB

Compare the tax implications of selling a business as an asset sale versus a share sale. Critical for both buyers and sellers.

Inputs: shares_acb (required), goodwill_value (required), total_sale_price (required), tangible_assets_fmv (required), +4 more.

audit_risk_assessmentCRA Audit Risk AssessmentA

Assess your business's risk of being selected for a CRA audit based on common triggers and red flags. Provides a risk score and mitigation recommendations.

Inputs: industry (required), expense_ratio (required), annual_revenue (required), reported_net_income (required), +8 more.

calculate_business_limitSBD Business Limit CalculatorA

Calculate the adjusted Small Business Deduction business limit after taxable capital and passive income clawbacks.

Inputs: passive_income (required), taxable_capital (required), associated_group_limit.

calculate_ccaCapital Cost Allowance CalculatorA

Calculate CCA (depreciation) for a capital asset. Supports all CCA classes, half-year rule, and Accelerated Investment Incentive.

Inputs: cost (required), cca_class (required), is_first_year, years_to_project, +2 more.

calculate_corporate_taxCalculate Corporate TaxA

Calculate combined federal + Alberta corporate income tax for a CCPC or other corporation. Handles SBD, general rate, investment income, passive income grind, and taxable capital clawback.

Inputs: active_business_income (required), is_ccpc, taxable_capital, investment_income, +2 more.

calculate_gstGST CalculatorB

Calculate GST on a transaction. Can work from GST-exclusive or GST-inclusive amounts. Alberta rate is 5% (no PST/HST).

Inputs: amount (required), is_inclusive.

calculate_home_officeHome Office Deduction CalculatorA

Calculate the business deduction for using a home office. Covers both self-employed and corporate scenarios.

Inputs: office_sqft (required), total_home_sqft (required), annual_rent, annual_internet, +7 more.

calculate_instalmentsCorporate Tax Instalment CalculatorA

Calculate monthly/quarterly corporate tax instalment amounts using the current-year, prior-year, or combination method.

Inputs: prior_year_tax (required), current_year_estimated_tax (required), is_small_ccpc, second_prior_year_tax.

calculate_late_penaltyLate Filing Penalty CalculatorA

Calculate CRA penalties and estimated interest for late filing of T2, AT1, or GST returns.

Inputs: unpaid_tax (required), months_late (required), return_type, is_repeat_offender, +1 more.

calculate_payrollPayroll Deduction CalculatorA

Calculate CPP, EI, federal and Alberta income tax deductions for an employee. Shows both employee deductions and employer costs.

Inputs: gross_pay (required), annual_salary, pay_frequency, td1_claim_code.

calculate_sredSR&ED Tax Credit CalculatorA

Calculate federal and Alberta SR&ED (Scientific Research and Experimental Development) tax credits. Covers enhanced CCPC rate, basic rate, proxy method, and Alberta IEG.

Inputs: salary_base (required), qualifying_expenditures (required), is_ccpc, taxable_capital, +2 more.

calculate_vehicle_expenseVehicle Expense Deduction CalculatorB

Calculate deductible vehicle expenses for business use. Handles CCA, standby charges, operating benefits, and per-km allowances.

Inputs: vehicle_cost (required), total_km_driven (required), business_km_driven (required), fuel_cost, +7 more.

calculate_wcb_premiumWCB Alberta Premium CalculatorB

Estimate Workers' Compensation Board (WCB) Alberta premiums based on payroll and industry classification.

Inputs: number_of_workers (required), total_insurable_earnings (required), industry_rate_per_100.

cca_class_lookupCCA Class LookupA

Find the correct CCA class for a capital asset. Search by asset type or browse all classes.

Inputs: search_term.

chart_of_accountsView Chart of AccountsC

Show the chart of accounts used for bookkeeping. These map your transactions to the correct CRA tax lines.

Inputs: type_filter.

corporate_tax_ratesAlberta Corporate Tax Rates ReferenceA

Display current federal and Alberta corporate tax rates, including combined rates for small business and general income.

Inputs: no named parameters.

cross_border_transactionCross-Border Transaction Tax AnalyzerA

Analyze the tax implications of a cross-border transaction between a Canadian company and a foreign entity. Covers withholding tax, transfer pricing, thin cap, and treaty benefits.

Inputs: amount (required), country_code (required), transaction_type (required), is_related_party, +1 more.

director_liability_assessmentDirector Liability AssessmentA

Assess personal liability exposure for corporate directors under Section 227.1 (ITA) and Section 323 (ETA). Covers unremitted source deductions, GST, and due diligence defence.

Inputs: has_resigned, unremitted_gst, resignation_date, is_inside_director, +3 more.

dispute_resolution_guideTax Dispute Resolution GuideA

Step-by-step guide to disputing a CRA assessment — from Notice of Objection through Tax Court of Canada and beyond.

Inputs: tax_type (required), dispute_amount (required), days_since_assessment (required).

employer_annual_checklistEmployer Annual Obligations ChecklistB

Complete checklist of annual employer obligations for Alberta businesses — T4s, ROEs, WCB, and more.

Inputs: no named parameters.

entity_type_comparisonBusiness Entity Comparison (Alberta)B

Compare sole proprietorship, partnership, and corporation for a business in Alberta. Factors in tax rates, liability, compliance costs, and planning opportunities.

Inputs: expected_annual_income (required), personal_spending_needs (required), num_owners, has_employees, +2 more.

estate_freeze_plannerEstate Freeze PlannerA

Plan an estate freeze to lock the current owner's value and shift future growth to the next generation. Covers Section 86 share exchange and Section 85 rollover methods.

Inputs: current_fmv (required), acb_of_shares (required), use_family_trust, num_beneficiaries, +2 more.

filing_calendarComplete Tax Filing CalendarB

Display the complete annual tax filing calendar for Alberta businesses — all deadlines organized by category.

Inputs: category.

filing_statusTax Filing Status DashboardC

See what's been filed, what's pending, and what's overdue. Your accountant's status board.

Inputs: fiscal_year.

financial_summaryFinancial SummaryA

See your income statement, balance overview, and GST position for the fiscal year. This is your bookkeeping dashboard — where your money is going.

Inputs: quarter, fiscal_year.

foreign_tax_creditForeign Tax Credit CalculatorA

Calculate the available foreign tax credit under Section 126 for business income or non-business (investment) income from a foreign country.

Inputs: income_type (required), country_code (required), foreign_income (required), foreign_tax_paid (required), +2 more.

get_effective_ratesGet Effective Tax RatesA

Show the currently effective tax rates, including any overrides from the learning system. Highlights where the agent is using updated values vs the original hardcoded defaults. Use this to verify what rates the agent is actually using for calculations.

Inputs: category.

gst_quick_method_analysisGST Quick Method AnalysisA

Compare the Quick Method of accounting vs. regular GST method. Shows potential savings. Available for businesses with annual taxable supplies up to $400,000.

Inputs: annual_gst_inclusive_revenue (required), annual_gst_paid_on_purchases (required), is_reseller.

gst_registration_assessmentGST Registration AssessmentA

Determine if GST registration is required and the optimal filing frequency based on your revenue level.

Inputs: annual_taxable_supplies (required), is_taxi_rideshare, quarterly_revenue_highest.

holding_company_analysisHolding Company Structure AnalysisA

Analyze whether a holding company (Holdco) structure would benefit your business. Covers creditor protection, tax-deferred surplus extraction, passive income management, and estate planning.

Inputs: annual_active_income (required), annual_surplus_retained (required), planning_for_sale, has_high_liability_risk, +2 more.

import_csvImport CSV / SpreadsheetA

Import transactions from a CSV file — bank statement export, credit card statement, or your own expense spreadsheet. I'll auto-detect the columns, categorize each transaction, and calculate GST. Supports exports from ATB, TD, RBC, BMO, and generic formats.

Inputs: file_path (required), date_column, account_type, amount_column, +3 more.

import_pdfImport PDF Invoice or ReceiptA

Read a PDF invoice or receipt and extract the transaction data. I'll pull out the vendor, date, amounts, line items, and GST — then record it as a transaction. Works with invoices, receipts, statements, and bills.

Inputs: file_path (required), extracted_data (required), document_type.

import_spreadsheetImport Expense SpreadsheetA

Import from your own expense tracking spreadsheet (CSV format). Flexible column mapping — tell me which columns hold the date, description, amount, category, and I'll do the rest. Perfect for the messy spreadsheet you've been keeping.

Inputs: file_path (required), column_mapping (required), has_header_row.

income_splitting_advisorIncome Splitting Advisor (Post-TOSI)B

Analyze income splitting opportunities considering Tax on Split Income (TOSI) rules. Identifies which strategies are available based on family members' ages and involvement.

Inputs: family_members (required), over_90pct_service_income, corporation_is_professional.

itc_eligibility_checkInput Tax Credit Eligibility CheckA

Determine if a purchase qualifies for an Input Tax Credit (ITC) and any restrictions that apply.

Inputs: amount (required), expense_type (required), business_use_percent, annual_taxable_supplies.

lcge_qualification_checkLCGE Qualification CheckA

Determine if corporation shares qualify for the Lifetime Capital Gains Exemption ($1,016,836 for QSBC shares). Checks the 90% test, 50%/24-month test, and CCPC status.

Inputs: expected_gain (required), total_assets_fmv (required), passive_investments_fmv (required), active_business_assets_fmv (required), +4 more.

log_correctionLog CorrectionA

Record when a calculation, rate, or rule was found to be incorrect. Optionally creates a knowledge override to fix it going forward. Use this whenever you find a mistake in the agent's output or when a user points out an error.

Inputs: source (required), tool_name (required), description (required), correct_value (required), +4 more.

log_researchLog Tax ResearchA

Record findings from tax research. Use this whenever you investigate a tax topic, look up a rule, or explore how something works. Builds a searchable knowledge base of everything the agent has researched. Examples: researching SR&ED eligibility for a specific activity, looking up treaty rates for a new country, investigating CCA class for a novel asset type.

Inputs: topic (required), sources (required), findings (required), question (required), +3 more.

log_task_insightLog Task InsightA

Record what was learned while performing a task. Use this to track gaps in the agent's capabilities, scenarios it hasn't handled well, or patterns it should recognize in the future. These insights drive improvements. Examples: 'partnership allocation not supported', 'need to handle non-calendar FYE for instalments'.

Inputs: insight (required), outcome (required), scenario (required), tool_name (required), +3 more.

manage_custom_ruleManage Custom Tax RuleA

Add or toggle a custom tax rule that the agent should apply. Custom rules capture interpretations, special scenarios, or business-specific policies that aren't in the standard knowledge base. Examples: 'Always apply the vehicle standby charge reduction for this client', 'Partnership uses 50/50 allocation instead of ownership %'.

Inputs: action (required), name, source, rule_id, +4 more.

mark_filedMark Return as FiledA

Mark a tax return as filed. Updates your filing status tracker.

Inputs: filed_date (required), return_type (required), period, confirmation_number.

missing_receiptsMissing Receipts ReportB

Show all transactions that are missing receipts. CRA can deny deductions without proper documentation.

Inputs: fiscal_year.

payroll_remittance_schedulePayroll Remittance ScheduleC

Determine the employer's payroll remittance frequency and due dates based on average monthly withholding amounts.

Inputs: average_monthly_withholding (required), is_new_employer, has_perfect_compliance.

prepare_gst_worksheetPrepare GST Return WorksheetA

Compile GST collected and ITCs paid from your transactions into a GST return worksheet. Shows exactly what to report on your GST return.

Inputs: period (required).

prepare_t2_worksheetPrepare T2 Corporate Tax WorksheetA

Compile your bookkeeping data into a T2 corporate income tax return worksheet. This generates the numbers your accountant (or you) need to file with CRA. Reviews all transactions, applies tax adjustments, and calculates tax owing.

Inputs: fiscal_year, additional_adjustments.

record_bulk_transactionsRecord Multiple TransactionsA

Record multiple transactions at once. Great for entering a batch of receipts or a month's worth of bank statement entries. Give me a list and I'll categorize them all.

Inputs: transactions (required).

record_keeping_guideRecord Keeping Requirements GuideC

Comprehensive guide to CRA and Alberta TRA record keeping requirements — what to keep, how long, and in what format.

Inputs: business_type, has_employees, has_gst_registration, has_international_operations.

record_receiptRecord Receipt from PhotoA

Record a transaction from a receipt photo (PNG, JPG, JPEG). Claude reads the image, you provide the extracted details, and I'll create the transaction with the image linked as proof. This is how you digitize paper receipts.

Inputs: date (required), total (required), vendor (required), image_path (required), +7 more.

record_transactionRecord a TransactionA

Record a business expense or income. Tell me what you bought/earned, from whom, how much, and when. I'll categorize it, calculate GST, and file it properly. This is how you feed me your receipts and invoices.

Inputs: date (required), amount (required), description (required), notes, +6 more.

reorganization_advisorCorporate Reorganization AdvisorB

Guidance on corporate reorganizations — amalgamation (s.87), wind-up (s.88), butterfly transactions (s.55), and rollover provisions. Identifies the right structure for your situation.

Inputs: scenario (required), has_tax_losses, has_real_estate, num_corporations.

resolve_insightResolve Task InsightA

Mark a task insight as resolved after the gap has been addressed or the improvement has been implemented.

Inputs: insight_id (required).

resolve_noteResolve Advisor NoteA

Mark an advisor note/action item as resolved.

Inputs: note_id (required).

review_learningsReview Agent LearningsA

See everything the agent has learned: knowledge updates, research findings, corrections, unresolved gaps, custom rules, and usage stats. Use this to understand how the agent has evolved and what still needs attention.

Inputs: search, section_filter.

salary_vs_dividendSalary vs Dividend OptimizerA

Compare the total tax cost of extracting corporate income as salary, eligible dividends, or non-eligible dividends. Accounts for CPP/EI, RRSP room, and integration imperfections.

Inputs: corporate_income (required), needs_rrsp_room, needs_cpp_benefits, other_personal_income.

scan_receipts_folderScan Receipts FolderA

List all receipt images in a folder that haven't been processed yet. Useful when you dump a bunch of receipt photos into a folder and want to go through them. Returns the list so Claude can read each image and call record_receipt for each one.

Inputs: folder_path (required).

setup_businessBusiness Setup / OnboardingA

Set up the business profile. This is the first step — tell me about your business so I can be your in-house tax accountant. I'll remember everything for future sessions.

Inputs: industry (required), legal_name (required), description (required), business_name (required), +9 more.

tax_health_checkTax Health CheckA

Run a comprehensive review of your business's tax situation. I'll check your records, flag problems, and tell you exactly what needs attention — like a quarterly meeting with your accountant.

Inputs: fiscal_year.

track_tool_usageTrack Tool UsageA

Record that a tool was used for a specific scenario. Builds usage analytics so the agent can identify which tools are most valuable and what patterns recur. This is typically called automatically but can be used manually.

Inputs: tool_name (required), input_pattern.

treaty_rate_lookupTax Treaty Withholding Rate LookupC

Look up Canada's tax treaty withholding rates for a specific country. Shows rates for dividends, interest, royalties, and management fees.

Inputs: country_code (required), payment_type.

treaty_rates_tableAll Treaty Rates Reference TableB

Display withholding tax rates for all countries in Canada's tax treaty network (major trading partners).

Inputs: no named parameters.

upcoming_deadlinesUpcoming Tax DeadlinesA

Show all upcoming tax filing and payment deadlines based on your fiscal year-end. Alerts you to deadlines within a specified window.

Inputs: fiscal_year_end (required), days_ahead.

update_knowledgeUpdate Tax KnowledgeA

Update a tax rate, threshold, rule, or any other knowledge entry. Use this when you discover that a rate has changed, a new rule applies, or the current knowledge is outdated. The update is stored as an override — the original hardcoded value is preserved as a fallback. Examples: update GST rate, change SBD limit, add a new CCA class threshold, update a treaty withholding rate.

Inputs: key (required), source (required), category (required), new_value (required), +5 more.

update_profileUpdate Business ProfileA

Update a field on the business profile. Use this when you get new information like your Business Number, GST registration, or payroll details.

Inputs: field (required), value (required).

view_profileView Business ProfileA

Show the current business profile and setup status. See what I know about your business and what's still missing.

Inputs: no named parameters.

voluntary_disclosure_guideVoluntary Disclosure Program (VDP) GuideA

Guide to CRA's Voluntary Disclosure Program for correcting past tax errors or omissions before CRA contacts you. Covers both General and Limited tracks.

Inputs: type_of_issue (required), number_of_years (required), estimated_unreported_income (required), has_cra_contacted, +1 more.

what_records_do_i_needWhat Records Do I Need?A

Based on your specific business, I'll tell you exactly what records and documents you need to keep. No generic advice — this is tailored to YOUR situation.

Inputs: no named parameters.

year_end_checklistYear-End Tax Planning ChecklistA

Comprehensive year-end tax planning checklist for Alberta businesses. What to do before your fiscal year-end to minimize taxes.

Inputs: fiscal_year_end (required), estimated_income (required), is_ccpc, has_employees, +1 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.1/5.0

    Scored across 69 tools

    Disambiguation2/5

    Several tools have overlapping boundaries, such as the multiple logging tools (log_research, log_correction, log_task_insight) and multiple status/planning tools (tax_health_check, advisor_notes, filing_status). With 69 tools, even well-described tools become hard to distinguish, and some pairs like treaty_rate_lookup vs treaty_rates_table or holding_company_analysis vs reorganization_advisor require careful reading.

    Naming Consistency2/5

    Naming conventions are inconsistent, mixing verb_noun (record_transaction, calculate_corporate_tax), noun phrases (filing_status, corporate_tax_rates), and even full sentences (what_records_do_i_need). Some tools use adjectives (financial_summary) and others use acronyms (CCA, SR&ED) without a consistent pattern.

    Tool Count1/5

    With 69 tools, this server is far beyond the typical scope for an MCP server. The sheer number overwhelms an agent's selection capabilities and suggests many tools could be consolidated or removed. Even complex domains like tax rarely require 69 discrete tools.

    Completeness5/5

    The tool surface comprehensively covers the domain of Alberta business tax: setup, bookkeeping, imports, GST, payroll, corporate tax, compliance, planning, and a learning system. There are no obvious dead ends for core workflows, and even meta-tools for tracking knowledge gaps are included.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      D
      maintenance
      An enterprise-grade MCP server that provides specialized tools for legal reasoning and analysis, automatically detecting legal domains and offering domain-specific guidance, templates, and citation formatting.
      3
      33
      ISC
    • A
      license
      Not graded
      quality
      Not graded
      maintenance
      An MCP server that enables AI agents to interact with QuickBooks Online accounts to manage invoices, customers, payments, and financial reports. It provides 20 tools to automate accounting workflows and retrieve financial data through natural language interfaces.
      -
    • A
      license
      A
      quality
      C
      maintenance
      An MCP server providing AI assistants access to Canadian case law and legislation metadata from CanLII across all jurisdictions, supporting search and citation relationships.
      7
      35 npm
      8
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      MCP server that connects AI agents to 34,500+ Australian Taxation Office documents, providing cited answers, tax deduction discovery, depreciation scheduling, BAS checklists, and audit risk assessment through 13 specialized tools.
      106 npm
      17
      AGPL 3.0