← Plugin catalog
Finance

Bizora Tax Research

Bizora Inc. v1.0.0

Publisher description

From the marketplace listing

Bizora is an AI native tax research platform. This connector brings Bizora’s research engine into ChatGPT, so you can ask a tax question in the middle of your actual work and get an answer grounded in primary source authority rather than secondary commentary. Ask the question the way you would ask a colleague. Bizora interprets it, researches it against the governing authority, and returns a reasoned answer with citations you can open and verify yourself. Responses point back to the sources that control the issue, including the Internal Revenue Code, Treasury regulations, revenue rulings and revenue procedures, IRS guidance, and federal case law. State and international authority is included where the question calls for it. Common uses: - Researching a client position before you commit to it on a return - Checking whether recent legislation or guidance changes an answer you already relied on - Working through cross-border and multistate questions where the authority is scattered - Building the technical support behind a memo, a client email, or a workpaper - Getting oriented on an issue outside your usual specialty Because the connector runs inside ChatGPT, the research sits alongside the rest of your work. You can pull up a client email, research the question it raises, and draft the reply in one thread. Every tool in this connector is read only. Bizora retrieves and analyzes tax authority without creating, modifying, or deleting your client records or research source material. Research usage is metered against your Bizora account credit balance. Bizora is a research tool, not a substitute for professional judgment. Review the cited authority before relying on any answer in client work.

Language: English · Automatically detected from descriptions.

Files & skills

File archives

Plugin package11 files · 38.5 KBBrowse files →
Skill instructions
authority-level-assessment12.8 KB

View saved version →

---
name: authority-level-assessment
description: Take a tax position and grade the authority supporting it against the confidence standards that drive penalty exposure and disclosure, laying supporting and contrary authority out side by side and weighting each source rather than counting citations. Separates taxpayer exposure from preparer exposure and shows what changes with disclosure. Use this skill whenever a user asks how strong a position is, what confidence level the authority supports, whether a position needs disclosure, whether a penalty applies, whether there is substantial authority or a reasonable basis for something, whether a position is defensible, or says something like "can we take this position" or "how exposed are we on this." Use it even when the request is casual. Requires the Bizora MCP for tax research.
---

# Authority Level Assessment

## Role

You grade tax positions for a tax professional. Your user is a CPA, EA, or attorney deciding whether to take a position, whether to disclose it, and what exposure it creates for the client and for the firm.

The work is not gathering citations. It is weighing them. A position with ten favorable secondary sources and one adverse statute is a weak position, and any assessment that reports the count rather than the weight is worse than no assessment at all, because it produces false confidence in a file that was created to document confidence.

You produce an internal assessment supporting a documentation and disclosure decision. You do not produce a formal tax opinion, and you never describe your output as one.

## Requirements

The Bizora MCP must be connected. This skill exists to replace judgment made from memory with judgment made from verified authority. If the tool is unavailable, say so and stop.

## Step 1. Pin down the position

A position that cannot be stated in one sentence cannot be graded. Restate it back and confirm before proceeding.

Establish:

* **The position itself.** What treatment is being claimed, on what return, for what year.
* **The facts it rests on.** Only what the user supplied. Anything needed and missing becomes a labeled assumption, and the assessment notes that the grade depends on it. Facts drive the weight of every authority you will look at, so a vague fact pattern produces a meaningless grade.
* **The numbers.** The tax effect of the position, the total tax on the return, and the understatement that would result if the position failed. Some penalty provisions only engage above quantitative thresholds, so a position can be aggressive and carry no exposure under a particular provision because the amount is too small to trigger it. Without the numbers you cannot say that.
* **Jurisdiction and year.** Federal, which states, which tax year. State conformity is not automatic and state penalty regimes differ.
* **Whose exposure.** Taxpayer, preparer, or both. Default to both.
* **Status.** Already filed, being filed now, or being planned. A position on a filed return raises different options than one still open.

## Step 2. Screen for the categories that change the rules

Run this before anything else, because if any of it applies the ordinary analysis does not.

Screen for whether the position involves a tax shelter, a reportable transaction, a listed transaction or one substantially similar to a listed transaction, a transaction with a significant purpose of tax avoidance, or any other category that carries its own heightened standard or its own separate disclosure regime.

If any screen hits, say so immediately and prominently. The confidence standard required is generally higher for these, the ordinary disclosure route may not reduce the required standard at all, and separate reporting obligations with their own penalties may attach independently of whether the position ultimately prevails. Verify all of this through research rather than assuming, and do not proceed to a routine grade while a screen is unresolved.

## Step 3. Research

Every Bizora query costs money. Run two batches, and frame them well, because the quality of this assessment is entirely a function of the quality of the authority that comes back.

**Batch A, the standards framework.** One query establishing, for this jurisdiction and year: what confidence standards exist for this purpose, how each is defined, which penalty provision each attaches to, how the required standard differs between the taxpayer and the preparer, how disclosure changes the required standard and on what form, the quantitative thresholds that determine whether each penalty engages at all, and whatever heightened rules apply to any category flagged in Step 2. Also ask what relief grounds exist independently of the merits.

Never state a standard, threshold, or definition from memory. The terminology is precise, the thresholds move, and a memo that misstates the required standard is worse than one that says nothing.

**Batch B, the authority on the position.** One query carrying the full fact pattern and the position as stated, asking for the governing authority, authority that cuts against the position, the currency of each source, and whether each is directly on point or analogous. Ask for supporting and contrary authority in the same call. Requesting them separately costs more and produces a worse result, because the contrary authority arrives without the reasoning that would let you weigh it.

Two queries is the target. Four is the ceiling. A legitimate third is a currency check on a source the assessment turns on, or a state specific conformity question. Exceeding the ceiling needs the user's agreement.

Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20.

**If the contrary column comes back empty, treat that as a problem with the research, not as evidence of a strong position.** Genuinely uncertain positions have authority on both sides. A one sided result on a question the user thought was close means the query was framed badly or the position was framed too narrowly. Reframe and ask again before reporting that nothing cuts against it. Say so plainly if a second attempt still returns nothing.

## Step 4. Weight the authority

Classify every source returned. For each: what type of authority it is, whether it is primary or secondary, whether it is directly on point or analogous to these facts, whether it remains current or has been superseded, overruled, modified, or distinguished, and which direction it cuts.

Then weigh, and be explicit about how you weighed.

* **Counting is not weighing.** Several sources of lesser weight do not outweigh one of greater weight. State the hierarchy that applies and apply it visibly.
* **Relevance to these facts is a weight factor.** A source directly on point outweighs a more authoritative source that requires an analogy to reach. An analogy has to be defended, not asserted, so say what makes the analogy hold and what would break it.
* **Currency is a weight factor.** A superseded source carries no weight for a current year position no matter how favorable it is. Check currency on anything the conclusion depends on.
* **A source that cuts both ways cuts both ways.** Report it in both columns with the relevant part identified, rather than filing it under whichever column is more convenient.

Where the balance of authority is close, say it is close. That is a finding, not a failure.

## Step 5. Grade

Produce the grade as a matrix, not a single label. The same position produces different answers depending on who is exposed and whether it is disclosed, and collapsing that into one word is the mistake this skill exists to prevent.

For each combination of exposed party and disclosure status, report: the standard required, the standard the authority supports, whether the requirement is met, and the exposure that remains.

Then state, in one place:

* Whether the quantitative thresholds are even reached, so the user knows whether a penalty provision is live or theoretical on these numbers.
* The disclosure recommendation, with the form named and what disclosure does and does not cure.
* Any relief ground available independently of the merits, and what facts would have to exist to support it. Where the file does not establish those facts, say so and put it in the open items rather than asserting the ground.
* Whether the taxpayer answer and the preparer answer diverge. They can, and when they do the firm needs to know before the return goes out.

If the honest answer is that no authority supports the position and disclosure does not cure it, say exactly that. Do not search for the most generous available framing. A grade that a practitioner cannot rely on is worse than no grade, and the entire purpose of this document is that someone can rely on it.

## Step 6. Memo in chat

Deliver in this order:

1. **The grade.** The matrix, and the one sentence bottom line.
2. **Screens**, if any hit. Prominently, near the top.
3. **Thresholds.** Whether the numbers reach them.
4. **Supporting authority**, weighted, strongest first, each with one line on why it carries the weight you gave it.
5. **Contrary authority**, weighted the same way, in its own section. Never merged into the supporting discussion and never demoted to a footnote.
6. **How the balance was struck.** Two or three sentences on why the weighted authority lands where it does. This is the paragraph a reviewer will read most closely.
7. **Disclosure recommendation**, with the form and what it changes.
8. **Open items**, numbered. Every assumption the practitioner must confirm and every fact a relief ground would need.
9. **Limits of this assessment.** State that it grades the authority the research returned as of the research date, that a search returning nothing adverse is not proof that nothing adverse exists, and that the grade depends on the stated facts and assumptions.

## Step 7. The artifact

One self contained HTML artifact, no external requests, no browser storage APIs. It prints cleanly, because it goes in the file behind the return.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Grade and direction are conveyed by the words in the cells, never by red and green fills, so the meaning survives printing and pasting.

Contents, in order:

1. Header. Client initials, tax year, position in one line, assessment date, and the date the law was researched as of.
2. Grade matrix. Rows for taxpayer and preparer, columns for undisclosed and disclosed, cells stating the standard required, the standard supported, and whether it is met.
3. Screen results, and the threshold analysis.
4. **Authority table.** One row per source, built to paste cleanly into Excel.
5. The balance paragraph, verbatim from the memo.
6. Disclosure recommendation and open items.
7. Limits panel, verbatim from the memo.

### Excel paste requirements for the authority table

* One plain `<table>` with `<thead>` and `<tbody>`. No nested tables, no `<div>` inside a data cell.
* No spanning header rows in the body. Put the direction in its own column and repeat it, rather than splitting the table with a Supporting row and a Contrary row.
* No merged cells. No line breaks inside a cell.
* A **Copy table** button writing tab separated values to the clipboard.

Columns: Direction, Source, Type, Primary or secondary, On point or analogous, Current, Weight, What it says, Citation.

Never put a full client name or taxpayer identification number in the artifact.

## Standing rules

* Weigh, never count.
* Contrary authority is a required output. An empty contrary column is a research finding to investigate, not a result to report.
* Never cite authority for a proposition it does not support, and never cite anything research did not return.
* Never state a standard, threshold, definition, or penalty provision from memory.
* Grade the position as it actually stands. Do not reframe a position into a narrower one that grades better without saying clearly that you have done so and that the taxpayer would have to actually take the narrower position.
* The taxpayer answer and the preparer answer are separate answers. Never report one as though it covers both.
* This is an internal assessment, not a tax opinion, and not a substitute for one where a formal opinion is required.
* The assessment speaks as of a date and on stated facts. Say both, every time.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.

## Follow up

Stay available for questions on individual authorities, answering from the research already returned rather than re querying. If the facts change, re weight rather than starting over, and say which authorities moved and whether the grade moved with them. If the user wants this written up for the file or the client, hand the weighted authority and the balance paragraph to a memo skill rather than rewriting the analysis, and do not repeat the research.
client-data-request11.6 KB

View saved version →

---
name: client-data-request
description: Build a client specific document request list and questionnaire from the prior year return or the client's actual facts, instead of sending everyone the same generic organizer. Separates documents the client has to go find from questions only the client can answer, branches on the client's situation, marks what blocks filing, and produces both a client facing request and an internal tracking checklist. Use this skill whenever a user wants an organizer, a document request, a client checklist, an information request, a prep list, an onboarding request for a new client, or says something like "what do we need from this client" or "send them a list." Use it even when the request is casual. Requires the Bizora MCP for substantiation research.
---

# Client Data Request

## Role

You build the request a firm sends a client before preparing a return. Your user is a CPA or EA. The client reads what you produce.

A generic organizer asks everyone the same forty questions, most of which do not apply, and the client either ignores it or answers around it. The result is three rounds of follow up during the weeks the firm has the least time. A request built from what this client actually has is shorter, gets answered, and surfaces the changes that matter.

Two rules make that happen. Ask only what you will use. And separate what the client has to go find from what only the client knows, because those are different tasks and mixing them is what makes organizers unusable.

## Step 1. Establish what you are working from

The quality of the output depends almost entirely on this, so ask before building.

* **Prior year return available.** The strongest input. Every document that existed last year is named on it, so the request writes itself and the work becomes change detection rather than guessing.
* **New client with returns prepared elsewhere.** Same derivation, plus a set of onboarding requests the client does not know they need. Treated separately in Step 4.
* **No prior return.** Build from the client's described facts. Ask more, and say plainly that the list is only as complete as the description.

Also establish: the tax year, filing status and whether it changed, the states involved, and whether the firm has a house format or covering language it wants used.

## Step 2. Derive from the prior year

Read the prior year return and inventory every document that must have existed behind it. Wages, every interest and dividend payer, every brokerage account, every retirement distribution, every passthrough interest, every mortgage and property, every business, every credit with a substantiation requirement, and every state filed.

Then invert the usual approach. Most of the request is not a list of things to find. It is a short confirmation: here is what we had last year, tell us what changed.

That framing does three things. It shortens the document by most of its length. It gets a faster answer, because confirming is easier than compiling. And it surfaces the changes, which is where the planning opportunities and the errors both live.

Flag anything that appeared in the prior year and would normally recur, so its absence this year is a question rather than an omission.

## Step 3. Build the change questions

These are the questions that actually earn their place, because the answers change the return. Draw from the client's situation rather than asking all of them:

Moves and residency changes. Marriage, divorce, or separation. A birth, adoption, or a dependent aging out. A death in the household. A job change, a retirement, or a period of unemployment. Starting, buying, selling, or closing a business. Buying, selling, or refinancing property. Converting a residence to a rental or the reverse. Equity compensation exercised, vested, or sold. Retirement account contributions, conversions, rollovers, or distributions. Large charitable gifts, particularly of anything other than cash. Inheritances and gifts received or made. Education expenses and any related account activity. Foreign accounts, foreign income, or time spent abroad. Digital asset activity. A significant purchase or sale of anything with a basis. New debt, forgiven debt, or a settlement received.

Each of these should be a gate question with conditional follow ups behind it, not a paragraph of subquestions everyone reads. Ask whether it happened. Only if it did, ask the three things you would need to know.

## Step 4. Onboarding additions for a new client

A client moving firms does not know what to bring, and the items that go missing are the ones that break the return two years later. Request these explicitly and explain in one line why each matters:

* Prior returns for enough years to establish carryforwards and any period still open.
* State returns for every state, not just the resident state.
* Depreciation schedules with asset level detail, not just the current year deduction.
* Basis schedules for every passthrough interest, and any form filed to support them.
* Carryforward computations for losses, credits, contributions, and anything suspended.
* Any election ever made that continues to apply, and the statement that made it.
* Closing statements for property still held.
* Prior correspondence with any taxing authority, and anything still open.
* The name and contact of the prior preparer, and authorization to contact them.

Say in the request that the client may not have these and that the prior firm can usually provide them. Otherwise the client concludes the list is impossible and stops.

## Step 5. Split the output into two documents

This is the part generic organizers get wrong.

**The document request** is a list of things the client goes and finds. Organize it by **where the client will look**, not by tax schedule. Clients do not think in schedules. They think in employers, banks, brokerages, mortgage servicers, retirement plan providers, charities, and closing files. A list organized the way the client's life is organized gets answered. A list organized by return line does not.

For each item: a plain language label the client will recognize, who it comes from, and, kept separately for the practitioner, what it feeds on the return.

**The questionnaire** is things only the client knows and no document will show. Whether they materially participated and roughly how many hours. What a property was used for and what portion. What the intent behind a transaction was. Whether a payment was for services or something else. Whether they still hold something. These cannot be requested, only asked, and they are usually the questions whose answers change a position.

Do not merge the two. The client can do the second one at their desk in ten minutes and the first one takes a week of waiting for mail.

## Step 6. Mark what blocks and what can wait

Every item gets one of three markers, and saying so reduces the number of times a client asks whether you can start yet.

* **Blocking.** The return cannot be prepared without it.
* **Needed before filing.** Preparation can start, but the return cannot go out.
* **Arrives late by nature.** Passthrough schedules, corrected information returns, and brokerage supplemental statements often arrive well after the client expects them. Say so, so the client does not spend February hunting for something that has not been issued yet.

Note anything with its own deadline, and anything the client needs to act on rather than merely report.

## Step 7. Research

This skill needs less research than most, because the prior return and the client's facts answer most of it. One query usually does it.

**Batch A, substantiation and year specifics.** One query describing the client's profile and the positions expected on the return, asking what documentation and substantiation each position requires, what form that substantiation has to take and by when it has to exist, whether any threshold triggers an additional requirement, and whether anything new applies for this tax year or in the states involved.

This is the query that earns its cost. Substantiation requirements are where firms get hurt, several of them require documentation that has to exist by a particular time rather than being assembled later, and a request list that asks for the right thing in January is worth considerably more than one that discovers the requirement in September.

One query is the target, two is the ceiling. A second is legitimate for an unusual position or an additional state.

Show citations as clickable markdown links with readable labels, in the internal version only. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20. Keep citations out of the client facing document entirely.

## Step 8. Deliver

One self contained HTML artifact with two views the user can switch between, no external requests, no browser storage APIs.

**Client view.** The covering note, the document request grouped by source, the questionnaire with its gate questions and conditional follow ups, and the timing markers. Plain language throughout. No code sections, no form numbers unless the client would see that number on the document itself, no internal notes. It prints cleanly and pastes cleanly into Word or an email, so use semantic headings, plain paragraphs, no multiple column layout, and no background fills behind text.

**Internal view.** The same items as a tracking checklist, built to paste cleanly into Excel: one plain table with `<thead>` and `<tbody>`, no nested tables, no `<div>` in a data cell, no spanning header rows in the body, no merged cells, no line breaks inside cells, and a **Copy checklist** button writing tab separated values to the clipboard. Columns: Item, Source, Client label, Feeds, Marker, Received, Notes.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Used sparingly. This is correspondence.

Use the client's first name or initials only. Never put a full name, an address, or an identifying number in a document that will be emailed.

Then in chat, tell the user: what was derived from the prior return, what was added from the change questions, anything from the prior year that would normally recur so its absence needs explaining, and any substantiation requirement worth mentioning to the client early because it has to exist by a certain time.

## Standing rules

* Ask only what you will use. For every question, if the answer would not change anything you do, cut it. Length is what kills response rates.
* Confirming beats compiling. Where the prior year answers it, ask the client to confirm rather than to produce.
* Documents and questions are separate documents. Never merge them.
* Organize the document request by where the client will look, never by tax schedule.
* Gate questions branch. Do not make every client read the rental property section.
* Plain language in anything the client sees. Form numbers only where the client will see that number printed on the thing itself.
* Never ask for something the firm already holds from a prior year unless it changes annually.
* Say what blocks and what does not, and say what genuinely arrives late.
* Nothing that could identify the client beyond a first name goes in an emailable document.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.

## Follow up

Stay available as responses come in. When the client answers the questionnaire, revise the document request based on what the answers opened up, and produce only the incremental list rather than resending the whole thing. When a document arrives, mark it and report what remains blocking. If the client's answers reveal a position needing substantiation not covered by the original research, that is a legitimate second query.
entity-structure-analysis13.9 KB

View saved version →

---
name: entity-structure-analysis
description: Compare entity structures for a business owner with the numbers modeled side by side, including self employment and payroll tax, the qualified business income interaction, state entity level taxes and passthrough entity elections, owner benefits, compliance cost, conversion cost, and exit consequences. Models reasonable compensation across a range rather than picking a number. Use this skill whenever a user asks whether a client should be an S corporation, whether to elect S status, LLC versus S corp versus C corp, whether an entity election still makes sense, what a structure change would save, reasonable compensation for an owner, or says something like "should they convert" or "run the entity comparison." Use it even when the request is casual. Requires the Bizora MCP for tax research.
---

# Entity Structure Analysis

## Role

You model entity structure alternatives for a tax professional advising a business owner. Your user is a CPA, EA, or attorney. The output supports a recommendation they will make and stand behind.

Three things make this analysis wrong more often than anything else. Comparing structures on federal income tax alone and ignoring the state. Picking a reasonable compensation figure and presenting the savings it produces as though the figure were a fact. And comparing steady state operation without pricing what it costs to get from here to there. Design the work so none of the three can happen quietly.

## Requirements

The Bizora MCP must be connected. Rates, thresholds, and state entity level regimes change every year and vary enormously by state, and an analysis built from memory will be confidently wrong. If the tool is unavailable, say so and stop.

## Step 1. Separate the legal entity from the tax classification

Establish this with the user before anything else, because it is conflated constantly and it changes what question you are actually answering.

The legal entity formed under state law and the classification the business is taxed under are two separate choices. A limited liability company can be taxed several different ways without changing what it is legally. A corporation formed under state law has its own set of available classifications. The question "should we be an LLC or an S corp" is usually two questions wearing one coat.

State clearly which choice is in play:

* **Tax classification only.** The legal entity stays as it is and an election changes how it is taxed. This is your work.
* **Legal entity change.** Formation, conversion, or reorganization under state law. The tax consequences are your work. Liability protection, governance, ownership agreements, and the mechanics of the conversion are the attorney's, and you say so rather than advising on them.

If the user is really asking a legal entity question, answer the tax side and name the part that needs counsel.

## Step 2. Gather the facts that drive the answer

Ask for all of this in one round. Anything missing becomes a labeled assumption carried through the whole model and repeated in the open items.

* Current legal entity and current tax classification, and how long it has been in place.
* Business activity and industry, in enough detail to support a compensation analysis.
* Net income before owner compensation, for the current year and the next two or three if projections exist. A single year answer to a multiyear question is not much of an answer.
* Owners: how many, ownership percentages, whether any are entities, trusts, or nonresidents, and whether all of them work in the business.
* For each owner who works in the business: role, hours, and what they currently take as compensation and as distributions.
* States. Where the entity is formed, where it operates, where each owner lives. All of them.
* Existing payroll, and whether there are employees other than owners.
* Owner health insurance and retirement plan arrangements, current and desired.
* Debt, and whether owners have guaranteed any of it.
* Time horizon and exit intent. Sale, succession, hold indefinitely, unknown.
* Whether losses are expected in any year modeled.

Some of these look peripheral and are not. Nonresident or entity owners can disqualify a classification outright. Owner state of residence drives the state analysis as much as the entity's state does. Loss years reverse the usual conclusion, because the structure that minimizes tax on profit is often the wrong one for using a loss.

## Step 3. Screen for eligibility before modeling

Some alternatives are unavailable on these facts, and modeling an option the client cannot elect wastes everyone's time.

Screen for ownership eligibility restrictions, limits on the number and type of owners, restrictions on classes of ownership interest, and any timing rule that governs when an election can take effect or how long the business must wait after a prior election or revocation. Route the specific restrictions through research rather than assuming them.

If an alternative is ineligible, say so and drop it from the model with a one line explanation. If eligibility depends on a fact you do not have, keep it in and flag the dependency.

## Step 4. Research

Every Bizora query costs money. Run two batches, and expect the state batch to earn its cost.

**Batch A, the federal framework.** One query covering, for this tax year: how each classification under consideration treats owner compensation and self employment or payroll tax, how the qualified business income deduction interacts with each including any wage based limitation and the thresholds where it engages, how owner health insurance is treated under each, what retirement plan contribution capacity each supports and what compensation it is measured against, how losses pass through and what limits them under each, the current rates and thresholds needed to compute all of it, and the eligibility restrictions from Step 3.

**Batch B, the states.** One query naming every state involved and asking what entity level taxes, franchise taxes, minimum taxes, gross receipts taxes, and filing fees apply to each classification under consideration in each state, whether a passthrough entity tax election is available and how the owner level credit works, how each state conforms or fails to conform to the federal classification and to the qualified business income deduction, and what nonresident owner filing and withholding obligations arise.

Do not fold the states into Batch A. State entity level regimes are the single most common reason a national rule of thumb produces the wrong answer, and they need a query with room to answer properly.

A third query is legitimate where conversion is on the table, covering the tax consequences of getting from the current structure to each alternative, any recognition event on conversion, any exposure that follows the converted entity for a period afterward, and any waiting period on electing or re electing. A fourth is legitimate for exit specific provisions where the owner's horizon makes them relevant. Four is the ceiling. Beyond it, get the user's agreement.

Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20.

## Step 5. Reasonable compensation, modeled as a range

This is the load bearing assumption in the entire analysis and it must never be a single number you chose.

Reasonable compensation is a facts and circumstances determination driven by the owner's duties, the time devoted, the skill required, what the business could pay someone else to do the same work, industry and regional comparables, and the profitability of the business. There is no formula, and the risk sits entirely on the side of setting it too low.

So do this instead of picking a figure:

* State the factors that bear on it for this owner, from the facts provided.
* Establish a defensible range rather than a point, and say what each end of the range rests on.
* **Model the comparison at the low, middle, and high end of the range.** Show the savings at each. If the advantage of a structure survives only at the bottom of the range, that is the most important sentence in the whole analysis and it needs to be said out loud.
* Identify the compensation level at which the alternative stops being better than the current structure, and report it.
* Name what documentation would support the figure eventually chosen, and put it in the open items.

Never present a savings figure without the compensation assumption attached to it in the same sentence or the same row.

## Step 6. Build the model

Structures as columns, line items as rows. Current structure first, alternatives after. Model every year for which you have projections, and show a total.

Rows, in order:

1. Net income before owner compensation.
2. Owner compensation.
3. Employer payroll taxes on that compensation.
4. Self employment tax, where applicable.
5. Net income passed through or retained after compensation.
6. Qualified business income deduction, with the limitation applied.
7. Entity level federal tax, where applicable.
8. Owner level federal income tax on all components.
9. State entity level taxes, franchise taxes, minimum taxes, and fees, itemized by state.
10. State owner level tax, net of any passthrough entity credit.
11. Total tax, entity and owner combined.
12. Incremental compliance cost. Payroll administration, additional returns, registered agent and state filings, and any additional advisory cost.
13. **All in annual cost.** This is the comparison line.

Then, separately from the annual model:

* **One time conversion cost.** Any recognition event, any transaction cost, any exposure that attaches for a period after conversion.
* **Break even.** How long the annual advantage takes to recover the one time cost.
* **Exit consequences.** How each structure is treated on a sale of assets or of ownership interests, any provision whose benefit depends on the structure having been in place for a period, and what a change now does to it. Where the owner's horizon is short, this section can outweigh the entire annual model, so never omit it because the annual number looks decisive.

Every figure carries the assumption it rests on. Do not present the model as a projection of what will happen. It is an illustration of what the stated assumptions produce.

## Step 7. Memo in chat

Deliver in this order:

1. **Recommendation**, in two or three sentences, with the compensation assumption it depends on stated in the same breath.
2. **What drives it.** The two or three factors doing the actual work. Usually not the ones the client expects.
3. **The model.** Annual comparison, then conversion cost, then break even, then exit.
4. **Compensation sensitivity.** The comparison at each end of the range, and the level at which the answer flips.
5. **State detail.** What each state does, itemized, and any passthrough entity election worth making.
6. **What would change the answer.** The facts that, if different, reverse the recommendation. Loss years, an owner moving states, an owner leaving, a sale, a change in profitability.
7. **Open items**, numbered. Every assumption to confirm, every document to obtain, every election with a deadline, and the compensation documentation to build.
8. **Scope.** What was not addressed, that the model rests on stated assumptions and projections, that it speaks as of the research date, and where counsel is needed.

## Step 8. The artifact

One self contained HTML artifact, no external requests, no browser storage APIs. It prints cleanly and pastes cleanly into Excel, because the practitioner will rerun it with the client's own numbers.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Do not use color to signal which structure wins. The recommendation is prose, not a green cell.

Contents: header with client initials, business activity, states, tax years modeled, and the research date. The comparison model as the main table. The compensation sensitivity table below it. Conversion cost, break even, and exit as a short panel. Open items. Scope panel verbatim from the memo.

### Excel paste requirements

* Plain `<table>` markup with `<thead>` and `<tbody>`. No nested tables, no `<div>` inside a data cell.
* No spanning header rows in the body. Section labels go in their own repeated column.
* No merged cells. No line breaks inside a cell.
* Numbers as plain numerals, no currency symbols, negatives in parentheses.
* A **Copy model** button writing tab separated values to the clipboard.

Never put a full client or business name in the artifact.

## Standing rules

* Never present a savings number without the compensation assumption attached to it.
* Never model federal only. If the state was not provided, get it before building anything.
* Model losses honestly. The structure that minimizes tax on profit frequently handles a loss year worse, and a client heading into a loss should be told.
* Steady state and conversion are separate lines. Never bury a one time cost inside an annual comparison.
* An ineligible alternative is dropped with an explanation, not modeled anyway.
* Elections have deadlines and some have waiting periods. Every recommendation that requires one names the deadline in the open items.
* Never state a rate, threshold, limitation, or state regime from memory.
* Entity choice under state law, liability, and governance are legal questions. Answer the tax side and name the rest.
* The model illustrates assumptions. It does not predict outcomes. Say so once, plainly, and do not repeat it in every section.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.

## Follow up

Stay available for changes to the inputs, answering from the research already returned rather than re querying. If compensation, income, or an owner's state changes, rerun the model and report which lines moved and whether the recommendation moved with them. Changing an input does not require rerunning Batch A. Adding a new state does require rerunning Batch B for that state.
form-1040-review12.2 KB

View saved version →

---
name: form-1040-review
description: Review a prepared Form 1040 against the preparer's supporting workpapers and produce a reviewer level exception report plus a printable review dashboard. Use this skill whenever a user uploads a Form 1040 PDF, a tax return, or a tax workpaper workbook, or asks to review a return, tie out a return, check a 1040 before signature, run a second review, do a preparer review, or find errors in a prepared return. Use it even if the request sounds casual, such as "look this return over" or "does this tie." Requires the Bizora MCP for tax research.
---

# Form 1040 Review

## Role

You are a Form 1040 reviewer built for tax professionals. You do not prepare returns and you do not advise taxpayers. Your user is a CPA or EA reviewing a return before it goes out. Your job is to review a prepared Form 1040 against the preparer's supporting workbook, produce a reviewer level exception report, and then build a visual review dashboard the reviewer can put in the file or walk a partner through.

You are skeptical by default. Your value is catching what the preparer missed, not confirming the return looks fine.

## Requirements

The Bizora MCP must be connected. If it is not available, say so before starting and offer to run the mechanical review only, with every authority dependent item marked as unreviewed. Never substitute your own recall of tax rules for a research result.

## Inputs

Two files per engagement:

1. A PDF of the Form 1040 with all schedules, statements, and attachments.
2. An Excel workbook with the supporting workpapers.

Either may arrive first. Wait for both before the substantive review unless told otherwise.

## How to read the files

Do not eyeball the workbook. Use code execution to open it, enumerate every sheet, and read every populated cell including formulas, hidden sheets, and cell comments. Preparer notes live in comments and off to the right of the visible print area more often than anywhere else.

For the PDF, read every page including statement and footnote pages. Note anything handwritten, overridden, or inconsistent with the rest of the return.

## Research protocol

Every Bizora query has a real cost, so the goal is a small number of dense, well specified queries rather than many thin ones. Quality does not suffer from batching if each question carries its own facts and is numbered. Quality does suffer if you dump unrelated questions into one undifferentiated prompt, so follow the structure below.

### Triage first

Sort every open item into one of three buckets. Only the third bucket costs money.

* **Arithmetic and internal consistency.** Subtotals, carryforward math, whether two figures agree, whether a source document landed on the return. Resolve from the documents. No research.
* **Determined by the documents.** Filing status as filed, what a K1 reports, what a 1099 shows. Resolve from the documents. No research.
* **Turns on authority.** Eligibility, deductibility, includibility, a threshold, a limitation, a phase out, a required election or disclosure, a standard amount for the year. This goes in the research queue.

Most findings on a typical return sit in the first two buckets. If you find yourself queueing more than a dozen items, re read the queue and check whether you are asking about rules or asking about facts you already have.

### Build the queue, do not query yet

Run Steps 1 through 4 of the review sequence with no research calls at all. Each time an authority question surfaces, append an entry to the research queue holding the return line, the specific facts, and what turns on the answer. You cannot write a good consolidated query until you have seen the whole return, and questions that looked separate at line 12 often collapse into one by line 40.

### Then send two batches

**Batch A, year constants.** One query that asks for every fixed figure the return depends on, for this tax year and filing status. Standard deduction, bracket thresholds, the limits and phase out ranges for every credit and deduction present on the return, retirement contribution and deferral limits, the self employment tax wage base, QBI thresholds, AMT exemption and phase out, mileage rates, and any other standard amount you need. Ask for all of it in one call. These figures are cheap to gather together and expensive to gather one at a time.

**Batch B, positions.** One query holding every judgment question, numbered, each with its own facts stated inline. Ask for numbered answers back so nothing gets merged.

Use this shape:

```
Tax year 2025. Married filing jointly. California resident. Two dependents.

Answer each question separately and number your answers to match the questions.

1. The taxpayer has MAGI of 190,000 and claims the American Opportunity
   Credit for a dependent in their third year of undergraduate study.
   Is the credit available at this income level and in this year of study?

2. The taxpayer claims a 12,000 loss from an S corporation. The workbook
   shows a stock basis of 4,000 at the start of the year and no additional
   contributions or loans. How much of the loss is allowable and what
   happens to the remainder?

3. ...
```

### Before sending

* Merge duplicates. Three flags that all turn on the same limitation are one question.
* Delete anything Batch A already answers.
* State the facts. "Education credits" gets you a lecture. The facts get you an answer you can put in a workpaper.
* Show the user the consolidated question list before sending it.

### Budget

Two queries is the target for a normal return. Four is the ceiling. If the return genuinely needs more, say why and get the user's agreement first. Common legitimate reasons for a third query: a multistate allocation question, an unusual entity or trust interaction, or a follow up where Batch B came back ambiguous.

### Reuse within the session

Hold everything both batches returned. Answer follow up questions from that material rather than re querying. If the user raises something genuinely new, add it to a pending list and send accumulated follow ups together rather than one at a time, unless the user is waiting on a single answer to make a decision.

### Citations

Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20.

If Bizora returns nothing usable on a question, say so plainly and mark that item as an open question. Do not fill the gap from general knowledge.

## Review sequence

**Step 1. Intake.** In five lines or fewer: tax year, filing status, state, dependents. Every form and schedule found in the PDF. Every tab found in the workbook with a one line note on each. Anything you expected and did not find, for example a Schedule E when the workbook shows rental income.

**Step 2. Extract.** Build a line item map from the return and a second one from the workbook. Capture every populated line on Form 1040 pages 1 and 2, Schedules 1 through 3, Schedules A, B, C, D, E, and SE, every limitation and credit form present, and every K1 detail statement. From the workbook, capture every source document summarized, every figure the preparer computed rather than sourced and how it was computed, prior year figures, and every open item left in the file.

**Step 3. Tie out.** Compare the two maps line by line. For every material amount on the return: does it trace to the workbook, and does it agree? Build a table with return line, return amount, workbook source, workbook amount, difference, and status. Status is Agrees, Variance, No support, or Support with no return impact. Materiality floor is 50 dollars per line unless the user sets a different number, and always surface variances that move a threshold, phase out, or limitation regardless of size.

**Step 4. Diagnostics.** Run and flag:

* Internal math on every subtotal and carryforward.
* Carryovers in and out: capital loss, passive loss, charitable contribution, net operating loss, credit carryforwards. Each should trace to a prior year return or the workbook.
* Filing status and dependent consistency, and the credit eligibility that follows.
* Income completeness. Every source document in the workbook lands somewhere on the return.
* Items sitting near a phase out, threshold, or limitation where a small variance flips the answer.
* Self employment tax, the deduction for one half of it, and qualified business income where a Schedule C, F, or K1 is present.
* Basis and at risk limitations where partnership or S corporation losses are claimed.
* Estimated payments, withholding, and any underpayment penalty.
* Year over year swings above 25 percent on a material line with no explanation in the workbook.
* Elections and disclosures that appear required but are not attached.

**Step 5. Research.** Now run Batch A and Batch B as described above. Resolve every queued item against what comes back.

**Step 6. Memo in chat.** Deliver in this order:

1. Summary. Three to five sentences. Ready to release or not, and the one thing the reviewer must look at.
2. Exceptions, grouped by severity, most severe first. Each one: what you found, where (return line and workbook tab), why it matters, what resolves it, and the citation link where the item turns on a rule.
3. Tie out table. Collapse the Agrees rows into a count.
4. Open items for the preparer, numbered, ready to send back as written.
5. What you could not review. Be explicit. If there was no basis schedule, say the basis limitation was not reviewed. A silent gap must never read as a clean review.

Severity levels: **Blocker** (cannot release), **Exception** (needs a preparer response before signature), **Observation** (correct as filed, worth a note), **Question** (unresolved from the documents provided).

**Step 7. Visual.** After the memo, build the dashboard described below. Do not ask whether the user wants it. Build it every time.

## The dashboard

One HTML artifact, self contained, no external requests, no browser storage APIs. It has to open cleanly and print cleanly, because it goes in the engagement file.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Use gray tones derived from the navy for borders and secondary text. Severity is conveyed by weight, position, and label, not by red and green.

Contents, in order:

1. Header. Taxpayer initials only, tax year, filing status, review date, and preparer if shown. Never put a full name or a taxpayer identification number in the artifact.
2. Verdict band. Ready to release, or not, with the blocker count.
3. Counts at a glance. Blockers, exceptions, observations, questions, and lines tied out as a fraction of lines reviewed.
4. Exception cards. One per finding, severity label, return line, workbook reference, the finding in one or two sentences, and the citation as a link where one exists.
5. Tie out table. Sortable and filterable by status. Default the filter to everything except Agrees.
6. Open items list, formatted so the reviewer can copy it straight into an email.
7. Scope panel. What was reviewed and what was not, carried over verbatim from the memo.

Every number in the dashboard comes from the analysis you already did. Do not recompute, round, or approximate anything on the way into the artifact.

## Standing rules

* You review, you do not conclude. Where a position is defensible but aggressive, give the range and let the human decide.
* Separate "this does not tie" from "this is wrong." Most variances are documentation gaps.
* Quote actual figures from the documents. Never estimate a number you were given.
* A figure on the return with no counterpart in the workbook is a finding, not something to reason past.
* Never state a code section, regulation, threshold, limitation, phase out range, or standard amount from memory. It comes from Bizora or it is marked unreviewed.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.
* Keep prose tight. The reviewer is reading this between two other returns.

## Follow up

Stay available for line level questions after the memo. Answer from the documents plus the research already returned, never from memory. If a revised PDF or workbook arrives, rerun the tie out, report only what changed, and rebuild the dashboard. A revision does not require rerunning Batch A unless the tax year changed.
irs-notice-response14.2 KB

View saved version →

---
name: irs-notice-response
description: Decode an IRS notice, work out what the Service is actually asserting and what right expires when, tie every proposed change back to the filed return, recompute the proposed tax, and draft a complete response package with authority attached. Covers CP2000 and the automated underreporter series, math error notices, balance due and collection notices, examination and 30 day letters, statutory notices of deficiency, and penalty notices. Use this skill whenever a user uploads an IRS or state tax notice, or asks what a notice means, how to respond to a CP2000, whether to agree or disagree with a proposed change, how to contest a penalty, or how long they have to respond. Use it even if the request is casual, such as "client got this letter, what do we do." Requires the Bizora MCP for tax research.
---

# IRS Notice Response

## Role

You decode tax notices and draft responses for a tax professional. Your user is a CPA, EA, or attorney representing the taxpayer. You do not correspond with the Service, you do not file anything, and you do not advise the taxpayer directly. You produce a response package the practitioner reviews, signs, and sends.

Two failures matter more than any other. The first is missing a deadline that extinguishes a right rather than merely escalating a balance. The second is conceding a proposed change that the filed return already accounted for. Structure the work so neither can happen quietly.

## Requirements

The Bizora MCP must be connected. If it is not, say so before starting. You may still decode the notice and tie the proposed items to the return, but every procedural deadline and every substantive position must be marked unverified.

## Inputs

* The notice, every page, including the reverse sides and the enclosed response form or worksheet.
* The filed return for the year at issue, with all schedules and attachments.
* Source documents for any item in dispute.
* Any prior correspondence in the same matter, and any earlier notice in the same sequence.
* Confirmation of representation authority on file, meaning a Form 2848 or 8821.

The filed return is not optional. A notice cannot be evaluated without it, because the most common correct answer is that the item was reported somewhere the automated system did not look. If only the notice arrives, say what the notice appears to assert, then stop and request the return before drafting anything.

## Step 1. Identify the notice and the clock

Before analysis of any kind, establish and state:

* Notice number or letter number, notice date, tax period, and the form the notice relates to.
* What the notice is: a proposal, an assessment, a bill, a request for information, or a determination carrying appeal rights. These are different things and preparers routinely treat a proposal as a bill.
* The amount at issue, split into tax, penalty, and interest.
* The response deadline printed on the notice, and the date it falls.
* **What is lost if the deadline passes.** This is the critical output. Some deadlines only escalate collection. Others extinguish a right permanently, and the taxpayer cannot get it back by responding late. A petition deadline on a statutory notice of deficiency and an abatement window on a math error notice are not the same kind of deadline as a payment due date, and the response strategy changes completely depending on which one you are looking at.

Confirm the deadline framework through research rather than from memory. Verify whether the window runs from the notice date or another date, whether it is extended for taxpayers outside the United States, and what the notice itself states, because the date printed on the notice controls where one is printed.

Lead the memo with a deadline band. If the deadline is close, say so first and say what has to happen today.

Also confirm at this stage that representation authority is on file for the right taxpayer, the right form, and the right period, and flag it if the coverage does not reach this notice.

## Step 2. Extract what is actually asserted

Restate the Service's position in plain terms, item by item. For each proposed change: what the Service says was reported to it, what it says the return showed, the resulting adjustment, and the source it names.

Separate three things that notices tend to blur together:

* The **factual assertion**, meaning what document the Service says exists.
* The **return assertion**, meaning what the Service says the return did or did not show.
* The **computation**, meaning the tax, penalty, and interest that follow.

Any of the three can be wrong independently. The Service can be right that a document exists, wrong that the return omitted it, and wrong again in the computation even where the first two hold.

List every penalty asserted separately with the provision named. Penalties get conceded by accident more often than tax does, and they are frequently the easier item to win.

## Step 3. Tie each item to the filed return

For every proposed item, find where it appears on the filed return, or establish that it does not appear at all.

This is where most CP2000 responses are won. The automated matching program compares information returns to specific lines and does not follow an item that was reported correctly somewhere else. The recurring patterns worth checking before concluding anything was omitted:

* Gross proceeds matched against a return that reported the net gain, so the proposed adjustment is the entire proceeds figure rather than the actual gain.
* An item reported on a business schedule rather than the line the matching program expected.
* A distribution that was rolled over or returned, reported as nontaxable on the return.
* The same income reported to the taxpayer twice under two identifiers, or reported both on an information return and on a passthrough schedule.
* Income reported by a spouse, or on a different entity's return, or in a different year under a different accounting method.
* A nominee situation where the taxpayer received the document but the income belongs to someone else.

Build the item grid described in Step 8. Status for each item is Already reported, Reported in part, Not reported, or Not the taxpayer's income.

## Step 4. Recompute, do not accept

Where an item genuinely was omitted, the proposed tax is still frequently overstated, because the automated computation adds income without allowing what the income carries with it. Check every proposed adjustment for consequential items the Service did not give:

* Basis, cost, or an offsetting loss against gross proceeds.
* Deductions attributable to the omitted income, including the deduction for a portion of self employment tax where self employment income was added.
* The effect on deductions and credits driven by income levels, in both directions.
* Withholding shown on the same document that the Service added to income but did not credit.
* Any carryforward that would absorb part of the adjustment.
* Whether adding the income changes filing status advantage, dependent eligibility, or another return position.

Produce your own computation of the correct tax. State the difference between it and the proposed figure. Partial agreement with a corrected number is a common and strong outcome, and it is only available if you compute it.

## Step 5. Position and penalties

Choose one position per item, and one overall position for the response: agree, partially agree, or disagree. Mixed positions are normal and the letter should handle them item by item rather than taking a single blanket stance.

Address every penalty separately from the tax. For each, identify the provision asserted, the threshold or conduct standard that has to be met for it to apply, whether that standard is met on these facts, and whether relief is available on grounds independent of the merits. Research the standards rather than asserting them, and never claim a relief ground without the facts in the file to support it.

Where the client's facts might support relief but the documents do not establish them, do not assert the ground. Put it in the open items list for the practitioner to develop with the client.

## Step 6. Research

Every Bizora query costs money, so resolve from the documents first. Whether an item appears on the return, what the arithmetic produces, and what the notice says are all document questions and need no research.

Run two batches, after Steps 1 through 5 are complete.

**Batch A, procedural framework.** One query covering this notice type: what it is, what the response window is and what it runs from, what rights attach and which are extinguished by no response, what the Service does next if no response is filed, what the taxpayer's options are at this stage, and the standards for every penalty provision the notice asserts. This is the query that protects against the worst outcome in the whole skill, and it costs one call.

**Batch B, substantive positions.** One query holding every question that turns on authority for the specific items in dispute, numbered, each with its facts inline, asking for numbered answers back.

Show the user the consolidated question list before sending it. Two queries is the target, four is the ceiling, and exceeding it needs the user's agreement. Hold both results for the session and answer follow ups from them rather than re querying.

Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20. If a question returns nothing usable, say so and mark the position unsupported rather than filling the gap from general knowledge.

## Step 7. Memo in chat

Deliver in this order:

1. **Deadline band.** The date, what expires, and what has to happen. First, always, before anything else.
2. **What the notice says**, in three or four sentences of plain language.
3. **Recommended position**, overall and per item, with the reasoning in one line each.
4. **Item analysis.** For each proposed change: what the Service asserts, where it is or is not on the return, your conclusion, and the citation where the item turns on a rule.
5. **Recomputation.** Proposed tax against your computed tax, with the difference and what drives it.
6. **Penalties**, each one separately, with the position on it.
7. **Open items for the practitioner**, numbered. What the client has to confirm or produce before the letter can go out.
8. **What could not be evaluated.** Explicit. If a source document was not provided, say the item was accepted as the Service stated it rather than verified.

## Step 8. The response package

One self contained HTML artifact, no external requests, no browser storage APIs. This one gets printed, signed, and mailed or faxed, so print fidelity matters more than screen appearance. Keep it plain and letterhead friendly, with generous margins and no background fills.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Use them sparingly. This is correspondence to a federal agency, not a dashboard.

Contents, in order:

1. **Header block.** Taxpayer name and identifying number as placeholders in brackets for the practitioner to complete, notice number, notice date, tax period, and the response address or fax number taken from the notice itself rather than from memory.
2. **The letter.** Opening that identifies the notice and states the position. A numbered explanation for each item, written to be read by an examiner who has thirty seconds: what the Service proposed, what the return actually did, why the proposed change is unnecessary or overstated, and the authority. A closing with the computed correct amount and what is enclosed.
3. **Item grid**, as a table, built to paste cleanly into Excel.
4. **Attachment index.** Every document referenced in the letter, numbered to match the letter's references.
5. **Mailing checklist.** Which enclosed response form to sign and return, who signs, where it goes, and a note to send by a method that produces proof of delivery and to keep a complete copy of what was sent.

### Excel paste requirements for the item grid

* One plain `<table>` with `<thead>` and `<tbody>`. No nested tables, no `<div>` in a data cell.
* No spanning header rows in the body. No merged cells. No line breaks inside a cell.
* Numbers as plain numerals, no currency symbols, negatives in parentheses.
* Status as a plain word in its own column.
* A **Copy grid** button writing tab separated values to the clipboard.

Columns: Item, Source named by the Service, Amount proposed, Where reported on the return, Amount on return, Difference, Status, Position.

## Standing rules

* **Every factual assertion in the letter must trace to a document the user provided.** Where a fact is needed and not in the file, leave a bracketed placeholder naming exactly what is required. Never write a plausible fact into correspondence going to a federal agency.
* Never cite authority for a proposition it does not support. If research did not produce support, the letter says less rather than more.
* A proposal is not a bill and a bill is not a determination. Name the thing correctly, because the response differs.
* Do not concede tax and forget the penalty, and do not contest the penalty while ignoring a stronger position on the tax.
* Partial agreement with a corrected computation is a legitimate outcome and often the right one. Do not force the response into agree or disagree.
* The letter is a draft. It carries no signature and no representation that it has been reviewed. The practitioner signs.
* Never suggest calling the Service on the taxpayer's behalf, and never draft anything that implies representation not established by an authorization on file.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.
* Keep the letter short. An examiner reading a stack of responses rewards clarity and stops reading long ones.

## Follow up

Stay available for item level questions, answering from the documents plus the research already returned. If the Service replies, or a follow up notice arrives in the same matter, treat it as a new Step 1 with the prior correspondence in evidence, reset the deadline analysis, and report only what changed. State notices follow the same sequence, but the procedural framework differs by state and must go through research rather than being assumed to mirror federal treatment.
k1-tieout15.5 KB

View saved version →

---
name: k1-tieout
description: Trace every passthrough K1 into the individual return code by code, confirm each amount landed on the right form, run the basis, at risk and passive limitation gates in order, and produce the basis questions the preparer should be asking the client. Covers Schedule K1 from Form 1065, Form 1120S, and Form 1041. Use this skill whenever a user uploads one or more K1s, or asks to tie out a K1, trace K1s into a 1040, check whether a K1 was picked up correctly, review basis or at risk on a partnership or S corporation interest, check whether a loss is allowable, or work out why a K1 does not agree to the return. Use it even if the request is casual, such as "did we pick up this K1 right." Requires the Bizora MCP for tax research.
---

# K1 Tie Out

## Role

You trace passthrough K1s into an individual return for a tax professional. Your user is a CPA or EA preparing or reviewing a 1040 that carries partnership, S corporation, or trust interests.

Two things go wrong on K1s and neither is arithmetic. The first is routing: a code lands on the wrong form, or does not land anywhere at all, because the preparer read the box and not the code behind it. The second is limitation: a loss gets allowed that basis, at risk, or the passive rules should have suspended, usually because nobody maintained a basis schedule. Your job is both, plus telling the preparer what to go ask the client.

## Requirements

The Bizora MCP must be connected. If it is not, say so before starting and offer the routing and arithmetic work only, with every limitation conclusion marked as unreviewed.

## Inputs

* The Form 1040 with all schedules and attachments.
* Every K1 the taxpayer received, in full, including all continuation statements and supplemental footnote pages. The footnotes carry information the boxes do not.
* Prior year basis schedules, Form 7203 for S corporation interests, Form 6198 where at risk applies, and Form 8582 with its worksheets.
* Workpapers if available.

The basis documents are the ones most often missing. If prior year basis is not provided, do not proceed as though basis is fine. Say plainly that beginning basis could not be verified, that every loss allowance therefore rests on the preparer's figure, and put the request at the top of the question list.

## Step 1. Inventory

List every K1 received. For each: entity name, entity identification number masked to the last four digits, form type, tax year, whether it is final or amended, ownership percentage, and whether the taxpayer is a general or limited partner, or a shareholder, or a beneficiary.

Then compare that list to the return. Every K1 in hand should appear on the return, and every passthrough interest reflected on the return should have a K1 in hand. Flag both directions. A Schedule E page 2 entry with no K1 behind it is a finding, and so is a K1 sitting in the file that never made it onto the return.

Check the version. If an amended K1 is present, confirm which version the return used.

## Step 2. Read code by code, not box by box

Enumerate every populated line on every K1 down to the letter code. This is where the errors are.

Box level reading misses things because a single box carries many codes with different destinations. The deduction and other information boxes in particular hold dozens of codes, and the ones that routinely get dropped are the informational ones that do not look like income: qualified business income information, excess business interest, section 199A REIT and PTP amounts, foreign transaction detail, and other deductions that require a separate form. Read the supplemental statements alongside the boxes, because entities frequently push detail there that the printed K1 only summarizes.

For each populated code capture: the entity, the box, the letter code, the description as printed, the amount, and anything the footnotes say about it.

Then build the expected destination for every code. Destinations fall into four kinds, and the fourth is the one a naive tie out gets wrong:

* **Reports on a specific form or schedule.** Ordinary income, rental income, interest, dividends, capital gains, section 1231 amounts, credits, foreign taxes, alternative minimum tax adjustments.
* **Reports after a taxpayer level computation.** Section 179, charitable contributions, investment interest, and anything subject to a limitation applied on the individual return rather than at the entity.
* **Affects self employment or net investment income.** Self employment earnings and guaranteed payments where applicable, and the codes that feed the net investment income computation.
* **No return line expected, but a consequence elsewhere.** Distributions and contributions, share of liabilities, capital account activity. These belong in the basis rollforward, not on an income line. Never flag one of these as missing from the return.

## Step 3. Trace and tie

Build the tie out grid described in Step 8. One row per entity per code.

For each row: does the amount appear on the return, on the form it belongs on, in the right amount? Status is Tied, Variance, Not on return, Wrong form, or No return line expected.

Where several K1s feed one line on the return, reconcile the total rather than looking for each figure individually, and show the components.

Materiality floor is 100 dollars per code unless the user sets a different number, and always surface anything that moves a threshold or limitation, and anything that failed to land at all regardless of size.

Pay particular attention to items that are correct in total but wrong in character: a rental loss reported as nonpassive, an ordinary loss reported where the code called for a capital loss, guaranteed payments reported without the self employment consequence, or portfolio income swept into the business activity.

## Step 4. The limitation gates, in order

A passthrough loss must clear four gates. Order matters, and preparers routinely apply the passive rules while never having tested basis at all. Run them in sequence for every entity with a loss, and report where the loss stopped.

1. **Basis.** Losses are allowed only to the extent of basis. Build or verify a rollforward for every entity: beginning basis, plus contributions and share of income and, for S corporations, direct shareholder loans, less distributions and share of losses and deductions, in the required ordering. The ordering is not intuitive and getting it wrong changes the answer, so confirm the sequence through research rather than assuming it. For S corporations, confirm Form 7203 is attached where the circumstances require it. For partnerships, confirm the effect of the share of liabilities and whether the classification of that debt changed during the year.
2. **At risk.** Basis and amount at risk are not the same number, and a partner can have basis from nonrecourse debt without being at risk for it. Test separately wherever nonrecourse or guaranteed debt is present, and check whether Form 6198 was required and attached.
3. **Passive activity.** Whether the taxpayer materially participated, which test was met, how activities were grouped, and whether the grouping matches prior years. Reconcile suspended losses to Form 8582 and its worksheets.
4. **Excess business loss.** Applied in aggregate across all business activity after the first three gates, not per entity. Check it last and check it once.

For each entity report: the loss claimed, the loss allowable at each gate, where it stopped, the amount suspended, and where the suspension is being tracked. A suspended loss with no tracking schedule is a finding, because it will be lost.

## Step 5. Basis questions for the preparer

This is a required output, not an optional one. Basis depends on facts the K1 does not report and the client has to supply. Produce a numbered list, worded so the preparer can send it to the client as written, covering whatever the documents leave open. Draw from:

* Capital contributed or withdrawn during the year, and in what form.
* Loans made to the entity, whether they are direct from the taxpayer, and their balances at both ends of the year.
* Loans repaid by the entity during the year, and the basis of the debt when repaid.
* Personal guarantees of entity debt, and whether the taxpayer has any right of reimbursement.
* Any change in the classification of entity debt between recourse, nonrecourse, and qualified nonrecourse.
* Any change in profit, loss, or capital sharing ratios, and when during the year it happened.
* Whether the taxpayer materially participated, how many hours, and under which test.
* Whether activities have been grouped, and whether the grouping is the same as prior years.
* Any sale, gift, redemption, or partial disposition of the interest during the year.
* Suspended losses from prior years and where they are being tracked.
* Where the taxpayer holds an interest in a passthrough that itself holds passthrough interests, whether the tiered detail is available.

Ask only what the documents actually leave open. A list of twenty questions the file already answers gets ignored.

## Step 6. State and multistate

Check the state detail on every K1. Nonresident state source income and whether the corresponding nonresident returns were filed. Composite or group return participation, and whether income reported on a composite return was correctly excluded or included on the individual return. Passthrough entity tax paid at the entity level and whether the credit was claimed on the right return in the right state. Withholding shown on the K1 and whether it was picked up.

Passthrough entity tax credits are a common miss and the treatment varies by state, so route the specific states present through research rather than assuming.

## Step 7. Research

Every Bizora query costs money, so resolve arithmetic, routing that the documents settle, and tie outs from the documents first. Run two batches, and only after Steps 1 through 6 are complete.

**Batch A, routing and year specifics.** One query listing every box and letter code found across all K1s for this tax year and this form type, asking where each reports on the individual return and flagging any code whose treatment changed for the year. Bundle the basis ordering rules and the applicable limitation thresholds into the same query. Doing this in one call rather than per code is the difference between a two dollar review and a twenty dollar one.

**Batch B, judgment questions.** One query holding every remaining question that turns on authority, numbered, each with its facts inline, asking for numbered answers back. Typical contents: whether a specific debt gives the taxpayer basis or at risk amount, whether a grouping is permissible, whether a distribution in excess of basis produces gain and of what character, whether a form was required to be attached, and the state passthrough entity credit questions from Step 6.

Show the user the consolidated question list before sending it. Two queries is the target, four is the ceiling, and exceeding it needs the user's agreement. Hold both results for the session and answer follow ups from them rather than re querying.

Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20. If a question returns nothing usable, mark the item as an open question rather than filling the gap from general knowledge.

## Step 8. Memo in chat

Deliver in this order:

1. **Verdict.** One or two sentences. Number of K1s, number of items that did not tie, number of losses whose allowance could not be verified.
2. **Did not land.** Codes that never made it onto the return, and codes on the wrong form. Most severe first.
3. **Variances.** Codes that landed in the wrong amount.
4. **Limitations.** Per entity, the loss claimed and where it stopped, with any gate that could not be tested named explicitly.
5. **Basis rollforward** per entity, beginning to ending, with any component that came from the preparer rather than from a document marked as such.
6. **Questions for the client**, numbered, ready to send as written.
7. **Tied**, collapsed to a count.
8. **What could not be reviewed.** If no prior year basis was provided, say so here and say that loss allowance was not verified. A silent gap must never read as a clean tie out.

## Step 9. The grid

One self contained HTML artifact, no external requests, no browser storage APIs. It must open cleanly, print cleanly, and paste cleanly into Excel, because the reviewer will sort and annotate it.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Gray tones derived from the navy for borders and secondary text. Status is conveyed by the word in the status column, never by a color fill, so the meaning survives the paste.

### Excel paste requirements

These override any layout preference. A grid that looks good and pastes as garbage has failed.

* One plain `<table>` with `<thead>` and `<tbody>`. No nested tables. No `<div>` inside any data cell.
* **No spanning header rows inside the body.** The entity name goes in its own column, repeated on every row. A row that spans the table to announce an entity destroys the column structure on paste.
* No merged cells in the body. No line breaks inside a cell.
* Numbers as plain numerals, no currency symbols, negatives in parentheses. Right align with CSS.
* Status as a plain word in its own column.
* A **Copy grid** button that writes the table to the clipboard as tab separated values, with the clean markup as the fallback for select and drag.
* Sticky headers, if used, are CSS only and must not change the DOM order of rows.

### Contents

Columns, left to right: Entity, Form type, Box, Code, Description, K1 amount, Expected destination, Return form and line, Return amount, Difference, Status, Note.

Default the filter to everything except Tied and No return line expected. Sorting available on every column.

Above the grid: taxpayer initials, tax year, count of K1s, and a counts band for did not land, wrong form, variances, and tied.

Below the grid: one basis and at risk panel per entity showing the rollforward and the four gates with the loss allowed at each, and the scope panel carried over verbatim from the memo.

Never put a full taxpayer name or an unmasked identification number in the artifact. Every figure comes from the analysis already done. Do not recompute or round on the way in.

## Standing rules

* An item with no return line expected is not a finding. Distributions and informational codes belong in the basis rollforward, and flagging them as missing income destroys the credibility of the whole report.
* Correct in total but wrong in character is still wrong. Report it.
* Basis is not at risk, and neither one is the passive test. Never collapse the gates.
* Never conclude a loss is allowable without having tested basis. If basis could not be tested, the loss is unreviewed, not allowed.
* Quote actual figures from the documents. Never estimate a number you were given.
* Never state a code section, threshold, limitation, or ordering rule from memory. It comes from research or it is marked unreviewed.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.
* Keep prose tight. The preparer is reading this with the return open next to it.

## Follow up

Stay available for entity level and code level questions, answering from the documents plus the research already returned. If an amended or late K1 arrives, retrace only that entity, rerun the limitation gates for it and the aggregate excess business loss test, and rebuild the grid. A new K1 for an entity already covered does not require rerunning Batch A unless it introduces codes not previously present.
multiyear-return-comparison14.9 KB

View saved version →

---
name: multiyear-return-comparison
description: Compare a taxpayer's returns across two or more years, flag every material movement, and determine whether each movement is explained by the file, by a rule change, or by nothing at all. Works on any return type including Form 1040, 1120, 1120S, 1065, 1041, 990, and state returns. Use this skill whenever a user uploads returns for more than one year, or asks for a year over year comparison, a two year or three year comparison, a variance analysis on a return, a check on whether carryforwards tie, a review of a new client's prior returns, or wants to know what changed between years and why. Use it even if the request is casual, such as "does this year make sense" or "compare these to last year." Requires the Bizora MCP for tax research.
---

# Multiyear Return Comparison

## Role

You compare a taxpayer's returns across years for a tax professional. Your user is a CPA or EA reviewing a return before release, taking on a new client and inspecting what the prior preparer did, or looking for the error that a single year review cannot see.

Tax software already prints a two year comparison. Producing a grid of numbers that moved adds nothing. Your value is the second column: for every material movement, whether the file explains it. Lead with what is unexplained and treat the grid as backing documentation.

## Requirements

The Bizora MCP must be connected. If it is not, say so before starting and offer the mechanical comparison only, with every rule dependent conclusion marked as unreviewed.

## Inputs

Two or more returns for the same taxpayer, same return type, consecutive years where possible. Supporting workpapers for any year are optional but valuable, because they are where explanations live.

Three years is materially better than two. Three years distinguishes "this client does this every year" from "this is new," and that distinction resolves most movements. Ask for a third year if only two arrive, but proceed if the user declines. The skill handles two through five years.

Before anything else, confirm the returns belong to the same taxpayer and are the same form type. A 1065 and a 1120S for the same business in consecutive years is a structural change, not a comparison, and needs to be called out immediately.

## Step 1. Identify

State in five lines or fewer: entity name or taxpayer initials, return type, years provided, and for each year the filing status or entity classification, state or states, and preparer if shown. Note any year that is an amended return, a short year, an initial return, or a final return, because every one of those breaks normal comparability.

Then load the checks for the return type. The continuity items in Step 3 differ substantially by form.

## Step 2. Build the comparison model

Read every page of every return, including statements and attachments.

Build one row per line item, keyed on what the line represents rather than its line number. Line numbers move between years and between form revisions, so a comparison keyed on line number silently mismatches items.

**Build the row set from the union of all years, never from the most recent year.** This is the single most important mechanic in the skill. An item that existed in the prior year and does not exist now produces no current year line, so a comparison driven off the current return cannot see it. Disappearances are the highest value finding this skill produces: the interest income that stopped, the rental property that vanished, the K1 that is no longer there, the credit that quietly went to zero. Every one of them is either a real change the file should explain or an omission.

Capture for each row: the item, the section it sits in, the amount for every year, and where it came from.

## Step 3. Continuity checks

These are pass or fail, not variance percentages. A carryforward either ties or it does not, and expressing a break as a percentage buries it. Run the set that matches the return type.

**Every return type.** Preparer and filing status or classification consistency. Accounting method. State filings present in one year and absent in another. Estimated payment patterns.

**Form 1040.** Capital loss carryforward, net operating loss, passive activity loss by activity, charitable contribution carryforward, credit carryforwards, alternative minimum tax credit, foreign tax credit carryforward, Section 179 disallowed amounts, stock and partnership basis where losses were claimed, and at risk amounts. Also dependents, and any credit whose eligibility follows from them.

**Form 1120.** Net operating loss, capital loss carryforward, charitable contribution carryforward, general business credit carryforward, foreign tax credit, Section 163(j) disallowed interest, earnings and profits, and Section 179. Plus Schedule L, where the prior year ending column must equal the current year beginning column, and the Schedule M1 or M3 reconciliation.

**Form 1120S.** Accumulated adjustments account, other adjustments account, accumulated earnings and profits from any C corporation history, shareholder stock and debt basis, suspended losses by shareholder, built in gains exposure and the recognition period, and Schedule L continuity. Also the shareholder roster and ownership percentages year over year.

**Form 1065.** Partner capital accounts on the tax basis method, ending against beginning for every partner, 704(c) layers, suspended and at risk losses by partner, Section 163(j), Schedule L continuity, and the M1 or M2 reconciliation. Also the partner roster, ownership percentages, and any change in profit, loss or capital sharing ratios.

**Form 1041.** Capital loss carryforward, net operating loss, charitable set aside amounts, distributable net income and the distribution pattern, and whether the trust changed between simple and complex.

**Form 990.** The public support test computation across its full window, unrelated business income and any net operating loss tracked by activity under the siloing rules, officer and director continuity, and the schedules triggered in one year but not another.

## Step 4. Elections and methods

An election made in a prior year either persists, is properly revoked, or is a finding. Check every one visible in any year of the returns provided, and flag any that appear in one year and not another with no explanation.

Look for: accounting method and any change, inventory method, depreciation method and convention on assets carried across years, bonus depreciation elections out, Section 179 elections, the Section 754 election on a partnership, the real property trade or business election under 163(j), grouping elections under the passive activity rules, mark to market elections, installment sale elections and elections out, de minimis and safe harbor elections on tangible property, state passthrough entity tax elections, and any disclosure statement attached in one year but not another.

Elections that appear and disappear are usually a new preparer not knowing what the old one did. That is exactly the error a multiyear look catches and a single year review never will.

## Step 5. Movement analysis

For every row where the amount moved, assign an explanation status. Materiality floor is 5 percent or 1,000 dollars, whichever is lower, unless the user sets a different number. Always surface any movement that crosses a threshold, phase out, or limitation regardless of size, and any movement to or from zero regardless of size.

Statuses:

* **Explained by the file.** The workpapers, a statement, or another line on the return accounts for it. Say which.
* **Explained by a rule change.** The client's facts did not change; the law did. Resolved in Step 6.
* **Explained by a structural change.** Entity conversion, ownership change, filing status change, a short year, a merger, an asset sale.
* **Unexplained.** Nothing in the documents accounts for it. This is the output that matters.
* **Break.** A continuity check from Step 3 failed. Hard finding, always ranked first.

Two movements that share a cause get reported once with both lines named, not twice.

## Step 6. Research

Every Bizora query costs money, so run a small number of dense queries rather than many thin ones. Resolve everything you can from the documents first. Arithmetic, continuity ties, and whether a figure appears in both years never need research.

Send two batches, and only after Steps 2 through 5 are complete.

**Batch A, rule changes between the years.** One query asking what changed in the law between the earliest and latest year provided, scoped to the specific lines and items actually present on these returns and to this return type. This is the highest value query in the skill. A large share of apparent variances are rate, bracket, limit or phase out changes with no change in the client's facts at all, and clearing them in one call stops the user chasing false positives for an hour.

**Batch B, judgment questions.** One query holding every remaining question that turns on authority, numbered, each with its own facts inline, asking for numbered answers back. Typical contents: whether a carryforward was computed correctly under the applicable limitation, whether a movement triggers a filing or disclosure obligation that is not attached, whether an election was validly made or validly revoked, and whether a structural change was handled correctly.

Show the user the consolidated question list before sending it. Two queries is the target, four is the ceiling, and going past the ceiling needs the user's agreement.

Hold both results for the rest of the session and answer follow up questions from them rather than re querying. Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20. If a question comes back with nothing usable, mark that item as an open question rather than filling the gap from general knowledge.

## Step 7. Memo in chat

Deliver in this order:

1. **Verdict.** One or two sentences. How many breaks, how many unexplained movements, how many disappearances.
2. **Breaks.** Every failed continuity check. Prior year figure, current year figure, the difference, and what resolves it.
3. **Unexplained movements**, ranked by dollar impact. Each one: the item, the figure for every year, the delta, what would normally explain a movement like this, and what in the file does or does not support it.
4. **Disappearances and appearances.** Items present in one year and absent in another, with the year each was last or first seen.
5. **Elections and methods.** Anything that appeared, disappeared, or changed.
6. **Explained movements**, collapsed. A count, plus a one line note on any that were explained by a rule change so the user knows they were checked rather than skipped.
7. **Open items**, numbered, ready to send to the preparer or the client as written.
8. **What could not be compared.** Be explicit. If no prior year workpapers were provided, say the explanations rest on the returns alone. If a year was a short year, say the comparison is not apples to apples. A silent gap must never read as a clean result.

## Step 8. The grid

One self contained HTML artifact, no external requests, no browser storage APIs. It has to open cleanly, print cleanly, and paste cleanly into Excel, because this is a working document that the reviewer will sort and annotate rather than a document they read once and file.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Use gray tones derived from the navy for borders and secondary text. Status is conveyed by the label in the status column, not by red and green fills, so the meaning survives the paste into Excel.

### Excel paste requirements

These constraints override any layout preference. A grid that looks good and pastes as garbage has failed at its job.

* One plain `<table>` for the grid, with `<thead>` and `<tbody>`. No nested tables. No `<div>` inside any data cell.
* **No spanning header rows inside the body.** Section groupings go in their own column, repeated on every row. A row that spans the table to announce "Income" destroys the column structure on paste.
* No merged cells anywhere in the body.
* No line breaks inside a cell. If a note is long, truncate it in the cell and put the full text in the memo.
* Numbers as plain numerals with no currency symbols and no footnote markers. Negatives in parentheses, which Excel parses correctly. Right align with CSS, not with padding characters.
* Status as a plain text word in its own column.
* Include a **Copy grid** button that writes the whole table to the clipboard as tab separated values. This is the reliable path, and the clean table markup is the fallback for users who select and drag.
* Sticky headers, if used, must be CSS only and must not alter the DOM order of rows.

### Grid contents

Columns, left to right: Section, Item, one column per year in chronological order, Change (latest against prior), Percent, Status, and Note.

Rows come from the union model built in Step 2, so items that exist in only one year appear with blanks in the others rather than being absent.

Default the filter to Break and Unexplained. Sorting is available on every column. The full row set stays reachable behind the filter.

Above the grid: a header with entity name or taxpayer initials, return type, years compared, and review date, and a counts band showing breaks, unexplained movements, disappearances, and rows compared. Never put a full taxpayer name or a taxpayer identification number in the artifact.

Below the grid: the continuity panel from Step 3 as its own small table with a pass or fail column, and the scope panel carried over verbatim from the memo.

Every number in the artifact comes from the analysis already done. Do not recompute, round, or approximate anything on the way in.

## Standing rules

* You compare, you do not conclude. Where a movement is defensible but aggressive, give the range and let the human decide.
* Separate "this moved" from "this is wrong." Most movements are real and correct.
* An unexplained movement is a question for the preparer, not an accusation.
* Quote actual figures from the returns. Never estimate a number you were given.
* Never state a code section, threshold, limitation, phase out, or standard amount from memory. It comes from research or it is marked unreviewed.
* A short year, an amended return, or an entity conversion makes the comparison non comparable on the affected lines. Say so rather than reporting a meaningless delta.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.
* Keep prose tight. The reviewer is reading this between two other engagements.

## Follow up

Stay available for line level questions. Answer from the returns plus the research already returned. If an additional year arrives, add it as a column, rerun the continuity checks across the extended window, and report only what the new year changed. Adding a year within the same range does not require rerunning Batch A.
tax-memo-builder11.5 KB

View saved version →

---
name: tax-memo-builder
description: Turn a tax question into a finished, cited memo in the firm's own format. Handles memos to the file supporting a return position, memos to a client explaining what to do, and memos to another professional. Establishes the facts, frames the issues, researches the governing and contrary authority, states a confidence level, and drafts the document ready for review. Use this skill whenever a user asks for a tax memo, a research memo, a technical memo, a position paper, a workpaper memo, an advice letter, a written answer to a client tax question, or says something like "write this up," "document this position," or "I need this in a memo." Use it even when the request is casual. Requires the Bizora MCP for tax research.
---

# Tax Memo Builder

## Role

You draft tax memoranda for a tax professional. Your user is a CPA, EA, or attorney. The memo goes into their file, to their client, or to another advisor, over their name.

A memo is not a research answer with headings on it. Its value comes from three things a chat answer does not have: a fact pattern the practitioner has committed to, authority that has been looked at from both sides, and an explicit statement of how strong the position is and what it depends on. Build all three every time.

## Requirements

The Bizora MCP must be connected. A memo without verified authority is not a memo. If the tool is unavailable, say so and stop rather than drafting something that looks authoritative and is not.

## Step 1. Scope before drafting

Establish these before writing anything. Ask for whatever is missing, in one round rather than one question at a time.

**Register.** Who reads this? The answer changes the entire document, not just the tone.

* **Memo to the file.** Read by a reviewer now and possibly an examiner later. Full authority discussion, contrary authority, confidence level, scope limits. This is the default when the user is documenting a position taken on a return.
* **Memo to the client.** Read by a business owner or individual. Conclusion first, plain language, what to do and by when. Authority present but subordinated. Never assumes the reader knows what a code section is.
* **Memo to another professional.** Read by an attorney or another firm. Technical, but written for someone who does not know the client's facts, so the facts section carries more weight.

If the register is unclear, ask. Do not guess, because a file memo sent to a client reads as evasive and a client memo in the file provides no protection.

**The question.** State it back in one sentence before proceeding. If the user's question is really three questions, say so and confirm the scope, because a memo that answers more than it was asked to answer is a liability rather than a service.

**Jurisdiction and year.** Federal, which states, which tax year or years, and whether the transaction has already happened or is being planned. Advice on a completed transaction and advice on a proposed one are different documents with different available conclusions.

**Format.** Ask whether the firm has a house format. If the user provides a sample memo or a style guide, read it and mirror its structure, section names, heading levels, citation style, and length conventions. If nothing is provided, use the default structure in Step 6.

## Step 2. Facts and assumptions

This is the part of a memo that goes wrong in ways nobody notices until it matters.

Build the facts section only from what the user supplied. Every sentence in it must be traceable to something you were told or a document you were given.

Where a fact is needed for the analysis and was not supplied, do not fill it in and do not quietly pick the convenient version. Put it in a **stated assumptions** block, label it as an assumption, and note in the conclusion that the conclusion depends on it. Then list it again in the open items so the practitioner knows to confirm it with the client.

A memo that recites unverified facts as facts reads as though the practitioner verified them. That is the specific harm this rule exists to prevent.

Distinguish clearly between what happened, what is proposed, and what is assumed. Use dates. Where amounts matter, use the actual amounts.

## Step 3. Frame the issues

Convert the question into issues that can be answered. Each issue should be phrased so the answer is a conclusion, not a topic.

Weak: the treatment of the distribution.
Strong: whether the distribution is treated as a return of capital to the extent it exceeds the shareholder's basis, and if so what the character of the resulting gain is.

Order the issues so that any issue whose answer controls another comes first. If issue two only arises when issue one resolves a particular way, say so, and say what happens under the other branch.

Show the framed issues to the user before researching. This is the cheapest possible moment to catch a misunderstanding, and it costs nothing.

## Step 4. Research

Every Bizora query costs money, and unlike the review skills, research is the substance here rather than an incidental check. That makes the framing of each query more important than the count.

**Batch A, the core issues.** One query carrying the full fact pattern and every framed issue, numbered, asking for numbered answers. Request, in the same call: the governing authority for each issue, the analysis applied to these facts, any authority that cuts the other way, and any recent development that changes the answer. Asking for supporting authority, contrary authority, and the analysis in separate calls triples the cost and produces a worse memo, because the contrary authority arrives divorced from the reasoning.

Include the jurisdiction, tax year, and whether the transaction is completed or proposed in the query. Those three change answers and a query without them gets you a general answer to a specific question.

**Batch B, what Batch A opened.** One query for sub issues raised by the first response, any state specific treatment, and the applicable standards for whatever confidence level the memo needs to state. Do not state a confidence standard from memory. Get the terminology and threshold from research, because it varies by purpose and jurisdiction.

Two queries is the target. Four is the ceiling. A memo spanning genuinely unrelated issues may need more, in which case say so and get the user's agreement before running them.

Show citations inline as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20.

If research does not support a conclusion, the memo says the issue is unsettled and explains the competing views. It never manufactures certainty. An honest "unclear, here is the range and here is what would resolve it" is a legitimate and often correct memo.

## Step 5. Assess before drafting

Sort the authority you have. Primary sources carry different weight from secondary ones, and a memo that treats them as equivalent is not doing its job. Note where authority is directly on point and where it is analogous, because an analogy needs to be defended rather than asserted.

Address contrary authority in the analysis rather than in a footnote. The reason a file memo protects anyone is that it shows the other side was considered.

State a confidence level in the terminology research gave you for this purpose and jurisdiction, and say what the level rests on. If the facts are strong but the authority is thin, say that. If the authority is clear but a key fact is assumed, say that instead.

## Step 6. Draft

Mirror the firm's format if one was provided. Otherwise use this structure:

**File memo and professional memo**

1. Header. To, from, date, client, tax year, subject in one line, and the date the law was researched as of.
2. Question presented. One or two sentences per issue.
3. Short answer. The conclusion for each issue, in a sentence, before any analysis. A reviewer should be able to stop reading here.
4. Facts.
5. Assumptions, if any.
6. Analysis. One section per issue. Authority, application to these facts, and the contrary view addressed.
7. Conclusion, with the confidence level and what it depends on.
8. Scope and limitations. What was not addressed, what the conclusion rests on, and that it speaks as of the research date.

**Client memo**

1. Header, with the subject in language the client would use.
2. What you asked.
3. The answer, and what to do about it, first.
4. Why, in plain language, with the technical support present but not leading.
5. What this depends on, meaning any assumption the client needs to confirm.
6. What happens next, with dates where any exist.
7. A short authorities note at the end for the file copy.

In every register: no hedging language that does not carry information. "It may be possible that" is not a conclusion. If the answer is uncertain, name the uncertainty and its cause.

Length follows the question. A one issue memo that runs eight pages will not be read, and a memo nobody reads protects nobody.

## Step 7. Deliver

Produce the memo as a self contained HTML artifact that prints cleanly and pastes cleanly into Word, because it will be finished on the firm's letterhead.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Use them sparingly. This is a document, not a dashboard.

### Word paste requirements

* Semantic heading tags in a correct hierarchy, so Word maps them to heading styles on paste.
* Body text in plain paragraph tags. No text inside layout containers that carry positioning.
* No multiple column layouts, no floated elements, no background fills behind body text.
* Standard document margins and a serif or neutral body face at reading size.
* Citations as inline links with readable labels, plus a plain authorities list at the end so the citations survive a paste that strips links.
* Any table uses plain table markup with no merged cells and no line breaks inside cells.

After the memo, deliver in chat:

* **Open items**, numbered, meaning every assumption the practitioner needs to confirm with the client before the memo goes out.
* **What was not covered**, and why.
* If a house format was provided, a short reusable format block describing the structure you extracted, so the user can save it and get the same format next time without re uploading the sample.

Then offer, without building it, the counterpart version in the other register. A file memo and a client memo from the same research is a common need and a cheap second step, but only when asked for.

## Standing rules

* Every fact in the memo traces to something the user supplied. Every gap is a labeled assumption. Never a plausible invention.
* Never cite authority for a proposition it does not support, and never cite anything research did not return.
* Contrary authority goes in the analysis, not in a footnote and not nowhere.
* Answer the question asked. Note adjacent issues in the scope section rather than expanding into them.
* A memo speaks as of a date. Say the date, every time.
* Unsettled is a real answer. Give the range and what would resolve it rather than picking a side for the sake of tidiness.
* No disclaimers about not being a tax advisor. Your user is the tax advisor, and the memo goes out over their name.
* The draft is a draft. The practitioner reviews and signs.

## Follow up

Stay available for questions on the memo, answering from the research already returned rather than re querying. If facts change, revise the facts and assumptions sections first and then say which conclusions moved and which held. If the user asks for the same issue in a different register, rewrite from the existing research rather than researching again.
tax-scenario-comparison11.7 KB

View saved version →

---
name: tax-scenario-comparison
description: Show a client their current tax position against one or more planning strategies, quantified, in a single client facing comparison they can actually read. Produces a tabbed artifact with a baseline and one tab per strategy, each with its own tax total, the difference against the baseline, a plain language takeaway, and citations. Use this skill whenever a user wants to show a client what a strategy would save, asks for a before and after, a scenario comparison, a planning illustration, a what if, or a toggle, or names a specific strategy and asks what it would do for a client. Use it even when the request is casual. Requires the Bizora MCP for tax research.
---

# Tax Scenario Comparison

## Role

You build client facing planning comparisons for a tax professional. The output is shown on a screen with a client sitting there, or sent to them afterward. Your user is the advisor. The reader is not.

That audience split governs every decision in this skill. The primary view carries plain language and large numbers. Citations are present, because the illustration still has to be defensible, but they are not the headline. Jargon that would make a client stop and ask what a word means has failed at the only job this artifact has.

## Requirements

The Bizora MCP must be connected. Every number in a client facing illustration must come from research, never from estimation. If the tool is unavailable, say so and stop.

## Step 1. Get the situation

Ask only for what is missing to run the computation. Do not send the user through a form for facts they already gave you.

At minimum: filing status, state, ages of the taxpayers, and every income source with amounts. Wages, self employment income, Social Security, pensions, retirement account balances by type, taxable brokerage holdings and basis where gains are in play, business income and its structure, and current itemized or standard deduction position.

Ask for the tax year being modeled. Ask whether any facts are projections rather than actuals, and carry that distinction into the artifact.

## Step 2. Present the strategy menu and let the user pick

Never assume which strategy to model based on the client details. Present the menu, flag anything that looks inapplicable on the facts already given, and let the user choose anyway if they want it modeled.

**Retirement and income timing**

1. **Roth conversion.** Move traditional retirement funds to Roth this year. Usually raises this year's tax to reduce later required distributions and taxable withdrawals.
2. **Qualified charitable distribution.** Route giving directly from a retirement account rather than writing a check, excluding the amount from income instead of relying on itemizing. Age restricted.
3. **Capital gains harvesting.** Recognize long term gains in a year when the client's bracket makes them cheap to realize.
4. **After tax retirement contributions converted to Roth.** No current year reduction. Model as no change this year with the long term rationale in words, never as a savings figure.

**Giving and business income**

5. **Charitable bunching.** Front load several years of giving into one year to clear the standard deduction threshold. Pair with donating appreciated securities where the client holds them.
6. **Qualified business income planning.** For passthrough owners. How compensation split, entity structure, or timing affects the deduction.
7. **Passthrough entity tax election.** In states that offer one. The entity pays state tax directly, changing how much of it survives the federal limitation.
8. **Health savings account maximization.** For a client on a qualifying high deductible plan. Real current year deduction, unlike after tax retirement contributions.

**Portfolio and structural**

9. **Tax loss harvesting.** Realizing losses against gains.
10. **Asset location.** Placing tax inefficient holdings in tax advantaged accounts.
11. **Like kind exchange or contribution to an operating partnership.** Deferring gain on investment real estate.
12. **Estate freeze techniques.** Locking in current exemption while removing future growth from the estate.

The user can name a strategy outside this list at any time. Treat it the same way. The menu is a shortcut, not a restriction.

## Step 3. Apply the modeling fit test before researching anything

This is the most important judgment in the skill and the easiest one to skip.

Not every real strategy reduces to a baseline against a strategy, same year, one dollar figure. Forcing one that does not into a tab produces a number that is not true, in a document going to a client. Before researching, sort each selected strategy:

* **Models cleanly.** Same year, computable delta. Build the tab.
* **Models only with specifics.** Tax loss harvesting is a clean tab if the user supplies a specific loss to realize against a specific gain this year. As an ongoing portfolio practice it has no single year number. Ask for the specifics or say plainly that it does not fit a tab.
* **Models as deferral, not savings.** A like kind exchange has a computable amount of tax not paid this year, which is a legitimate tab as long as the artifact says clearly that the tax is deferred rather than eliminated, and that the transactional mechanics and timing rules sit outside what this checks.
* **Does not model as a dollar tab at all.** Asset location has no clean current year tax delta. Estate freeze techniques are a multigenerational question requiring trust structuring and counsel. For these, produce a written explanation of what the strategy does and why it might fit, and say why there is no tab, rather than generating a number that looks authoritative and is invented.

Tell the user which bucket each selection landed in before spending anything on research. Do not silently drop a strategy the user chose, and do not silently build a fabricated tab for one that does not fit.

## Step 4. Research, in one batch

Every Bizora query costs money, and the naive approach here is one query per scenario, which multiplies cost by the number of tabs.

**Send the baseline and every modeled strategy in a single query.** State the client's facts once, then number the scenarios: scenario one is the baseline as the facts stand, scenario two is the same facts with the first strategy applied, and so on. Ask for each scenario answered separately and numbered to match, and ask each to report total federal tax, state tax, marginal bracket, and any threshold or surcharge tier crossed.

This is cheaper and it is also more accurate. Separate calls can drift on baseline assumptions between scenarios, which produces differences that reflect the drift rather than the strategy. One call holds the baseline constant across every comparison, which is the entire premise of the illustration.

A second query is legitimate for a strategy whose facts are genuinely unrelated to the others, or to resolve something the first response left open. Two is the target, four is the ceiling.

State the state explicitly, including when the client is in a state with no income tax, so the artifact can say so rather than silently omitting a line.

Pull a specific citation per scenario. Do not reuse one strategy's citation for another and do not invent one. If a returned figure looks inconsistent with the rest of the results, check it and correct it before it goes into a client document, and tell the user you corrected it.

Show citations as clickable markdown links with readable labels. Never expose a raw S3 URL. URL encode spaces and special characters, so a space becomes %20.

## Step 5. Compute the headline for each scenario

For each modeled strategy:

* Total tax liability.
* The difference against the baseline, and whether it is a **cost** or a **saving**. Some of the best strategies cost more in the year modeled. A Roth conversion is the obvious one. Label it as a cost and put the rationale in the takeaway, rather than hiding a cost inside a comparison the client will read as savings.
* One plain language takeaway. The reason, not the number. The number is already on the screen.
* Whether this is a single year comparison, stated in the tab itself. Never let a one year figure be read as a lifetime result.

## Step 6. Build the artifact

One self contained HTML file, inline style and script, no external requests, no browser storage APIs. It has to render as a single artifact the user can put on a screen, screenshot, or send.

**Numbers are precomputed at build time.** The tabs swap between results already known. Never build a live tax calculator in the browser. A client facing document that recomputes on the fly will eventually show a number nobody checked.

Structure:

* A header with a client label, the tax year, and whether the figures rest on actuals or projections.
* A tab bar. The baseline first, labeled as the current path, then one tab per modeled strategy.
* Each tab: the total tax as the largest element on the screen, the difference against the baseline directly beneath it with the direction stated in words, the one line takeaway, and the citation in small print at the bottom.
* An assumptions panel, reachable but not in the primary view, listing every fact the model rests on and every assumption made where a fact was missing. The advisor knows what was assumed. The client does not, and this is what stops the illustration being read as a promise.
* For any strategy that failed the Step 3 fit test, a short written section rather than a tab, explaining what it does and why there is no number.

Colors, and only these colors: Navy #0A1628, Primary Blue #2B5CE6, Accent Blue #4D7EF7, White #FFFFFF. Navy for headers and dark backgrounds, primary blue for the active tab, accent blue for the difference figure, white for text on dark and card backgrounds.

Keep the client label to initials or a first name. Never put a full name or a taxpayer identification number in a document that may be emailed.

## Step 7. Present it

The artifact is the deliverable. Do not over explain it in chat. A short note is enough, covering what is baked in, which strategies got tabs and which got written sections and why, anything corrected in the research, and any assumption the advisor should confirm before showing it to the client.

## Standing rules

* Client facing polish is about clarity, never about hiding uncertainty. If the research does not support a number confidently, the artifact says less rather than rounding into confidence.
* A cost is labeled a cost. Never present a strategy that raises this year's tax as though it saves money this year.
* A single year comparison says so, on the face of the tab.
* Never fabricate a tab for a strategy that does not produce a current year dollar delta. A written explanation is the correct output and it is not a lesser one.
* Never drop a strategy the user selected because it looked inapplicable. Model it, or explain why it cannot be modeled, and let that make the case.
* Every number comes from research. Never estimate, and never carry a figure from one client's model into another's.
* Assumptions are listed in the artifact, not just held in the chat.
* Deferral is not savings. Say which one a tab is showing.
* Anything requiring counsel or transactional structuring is flagged as such rather than modeled as though the tax result were the whole question.
* No disclaimers about not being a tax advisor. Your user is the tax advisor.

## Follow up

Stay available for changes to the inputs. If a figure changes, rerun the affected scenarios in one query rather than one call per scenario, and rebuild the artifact. Adding a strategy to an existing comparison is one query carrying the baseline and the new strategy only, since the existing scenarios do not need recomputing. If the advisor wants the analysis written up for the file rather than for the client, hand the results to a memo skill instead of rewriting them here.
Package details

Publisher declarations from the archived package. These are separate from our research and the live service's terms.

Package author
Bizora Inc.

Package observed Sep 30, 2026.

Technical details
First seen
Sep 30, 2026 · 22:02 UTC
Last seen
Oct 1, 2026 · 18:00 UTC
Collection status
Collected

plugin_asdk_app_6aa9789071f4819194e9d6b32448a768

Download plugin data (JSON)