ArcaTax
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ARCATAX_HOME | No | Where user_data/, returns/ and templates/ live (defaults to the repo root in a source checkout, otherwise ~/ArcaTax). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
ArcaTax prepares a US federal 2026 Form 1040 entirely on the user's computer. Never do tax math yourself: enter documents with the upsert_* tools and get every figure from calculate_1040_return. Never ask for or store SSNs or bank numbers. You are not a tax professional; say so, and recommend professional review before filing. Follow the 'tax_interview' prompt for the full interview procedure.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_return_statusC | Summarize what is on file for the return and list the open gap-analysis questions. |
| update_filing_profileA | Set filing status, birth years, blind flags and dependents. Only fields you pass are changed;
passing |
| upsert_w2A | Add or replace a W-2 (matched by |
| upsert_1099A | Add or replace one or more 1099-INT / 1099-DIV / 1099-B / 1099-NEC records (matched by |
| upsert_schedule_cB | Add or replace a Schedule C business (matched by |
| upsert_k1_1120sC | Add or replace an S-corporation Schedule K-1 (Form 1120-S): ordinary income, QBI, W-2 wages, UBIA, distributions. |
| upsert_schedule_eB | Add or replace a Schedule E rental property (matched by |
| update_other_inputsA | Set itemized deductions, Schedule 1 adjustments, estimated payments, other income, or capital-loss carryovers. Each section you pass REPLACES that section; sections you omit are untouched. |
| remove_documentA | Delete a W-2, 1099, Schedule C, Schedule E or K-1 record by id. Confirm with the user first. |
| calculate_1040_returnB | Run the deterministic engine. Returns every Form 1040 line, supporting schedules, warnings, open questions and a ready-to-show Markdown audit table. This is the ONLY source of tax numbers. |
| export_filing_packetA | Recalculate, then write returns/2026_Form1040_Draft.pdf (official IRS form, numbers only) and returns/2026_return.txf. Downloads the blank f1040.pdf from irs.gov on first use. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| tax_interview | Start the guided 2026 federal tax interview with ArcaTax. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 11 tools
Each tool targets a clearly distinct resource or action: per-form upserts (W-2, 1099, Schedule C, Schedule E, K-1) are separated by form type, and calculation/export are unambiguous terminals. The only near-neighbors, update_filing_profile and update_other_inputs, are explicitly scoped to different field sets (profile/taxpayer facts vs. deductions/adjustments/payments).
All names follow a consistent snake_case verb_noun pattern (get_, update_, upsert_, remove_, calculate_, export_) with domain nouns matching real tax forms. The upsert vs. update distinction is applied consistently to mean 'add/replace a record' vs. 'set scalar fields'.
Eleven tools is well within a comfortable range and each earns its place: one per major income document type, plus status, profile, other inputs, delete, calculate, and export. No redundant or filler tools are present.
The surface covers the full prepare-calculate-export lifecycle for a Form 1040, including all common income schedules and cleanup. Minor gaps: no per-record read/inspection tool beyond the summary in get_return_status, and no explicit way to fully clear 'other inputs' or profile fields back to empty.