Skip to main content
Glama

Fiscalité d'un compte-titres ordinaire

simulate_cto
Read-onlyIdempotent

Calcule, pour une année, la fiscalité d'un compte-titres ordinaire d'une personne physique (CGI art. 200 A, 158, 150-0 A et 150-0 D). Entrées : plus-values, moins-values, dividendes, intérêts, option pour le barème, revenu imposable du foyer hors prélèvement forfaitaire, nombre de parts, situation, revenu fiscal de référence, dispense, moins-values reportables et plus-values de titres acquis avant 2018. Sortie : impôt sur le revenu et prélèvements sociaux, séparés. Par défaut, prélèvement forfaitaire. L'option globale pour le barème est chiffrée lorsque le revenu imposable hors ces revenus et le nombre de parts sont fournis ; sinon le résultat est le forfait et indique que l'option n'est pas chiffrée. Les moins-values s'imputent sur les seules plus-values, avec un report de dix ans.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
anneeNoAnnée des revenus. Seule 2026 est couverte. Absente : 2026, indiqué dans le résultat.
partsNoNombre de parts du foyer. Absent : l'option pour le barème n'est pas chiffrée.
interetsNoIntérêts et coupons bruts.
situationNoSeul ou couple. Sert à la dispense de prélèvement forfaitaire non libératoire. Absente : la dispense n'est pas appréciée.
dividendesNoDividendes bruts.
plusValuesNoPlus-values de cession de l'année, avant imputation des moins-values. Zéro est un gain nul.
moinsValuesNoMoins-values de cession de la même année.
dispensePfnlNoDispense de prélèvement forfaitaire non libératoire demandée dans le délai. Absente : le prélèvement est retenu.
optionBaremeNoOption globale annuelle pour le barème. Absente : prélèvement forfaitaire.
plusValuesAvant2018NoTitres acquis avant 2018. L'abattement pour durée de détention s'applique avec l'option pour le barème.
moinsValuesReportablesNoMoins-values des années antérieures encore reportables, une ligne par année.
revenuImposableHorsPfuNoRevenu imposable du foyer hors dividendes, intérêts et plus-values du prélèvement forfaitaire. Zéro est un revenu nul. Absent : l'option pour le barème n'est pas chiffrée.
revenuFiscalReferenceN2NoRevenu fiscal de référence de l'avant-dernière année, lorsqu'il est connu.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • changedInput schema / properties / annee / description
      Previous value: -"Année des revenus. Seule 2026 est couverte. Absente : 2026, et le résultat le dit."New value: +"Année des revenus. Seule 2026 est couverte. Absente : 2026, indiqué dans le résultat."
    • changedInput schema / properties / parts / description
      Previous value: -"Nombre de parts. Absent : l'option barème n'est pas chiffrée. Ne pas le supposer."New value: +"Nombre de parts du foyer. Absent : l'option pour le barème n'est pas chiffrée."
    • changedInput schema / properties / plusValuesAvant2018 / description
      Previous value: -"Titres acquis avant 2018. L'abattement pour durée de détention ne s'applique qu'avec l'option barème."New value: +"Titres acquis avant 2018. L'abattement pour durée de détention s'applique avec l'option pour le barème."
    • changedInput schema / properties / revenuFiscalReferenceN2 / description
      Previous value: -"Revenu fiscal de référence de l'avant-dernière année, seulement s'il est connu."New value: +"Revenu fiscal de référence de l'avant-dernière année, lorsqu'il est connu."
    • changedInput schema / properties / revenuImposableHorsPfu / description
      Previous value: -"Revenu imposable du foyer hors dividendes, intérêts et plus-values du prélèvement forfaitaire. Zéro est un revenu nul. Absent : l'option barème n'est pas chiffrée."New value: +"Revenu imposable du foyer hors dividendes, intérêts et plus-values du prélèvement forfaitaire. Zéro est un revenu nul. Absent : l'option pour le barème n'est pas chiffrée."
    • changedInput schema / properties / situation / description
      Previous value: -"Pour la dispense de prélèvement forfaitaire non libératoire. Absente : la dispense n'est pas appréciée."New value: +"Seul ou couple. Sert à la dispense de prélèvement forfaitaire non libératoire. Absente : la dispense n'est pas appréciée."
  2. First observed

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish the safe, deterministic profile (readOnlyHint, idempotentHint, openWorldHint=false), so the bar is lower; the description still adds real behavior: output split into IR and prélèvements sociaux, the default-vs-option fallback behavior, and the loss-offset/carry-forward rule. It stops short of 5 only because permission/dependency requirements are not discussed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and scope are front-loaded, followed by inputs, outputs, default behavior, and conditional behavior in a logical order with no filler sentences. It is dense and somewhat long, but each clause carries information an agent needs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 13 optional parameters and no output schema, the description carries the burden well: it enumerates the input categories, states the return structure (IR and PS, separated), and explains the conditional regimes. Nothing essential for calling it correctly appears missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3, but the description adds domain meaning the schema does not: losses impute only against gains with a ten-year carry-forward, the abattement for pre-2018 holdings applies only under the barème option, and the fallback behavior when parts/revenuImposableHorsPfu are absent.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Calcule ... la fiscalité d'un compte-titres ordinaire d'une personne physique') with the governing CGI articles, which cleanly separates it from the sibling simulators (simulate_pea, simulate_av, simulate_ifi, simulate_dutreil, simulate_per_sortie). An agent can route to it without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It sets the default regime ('Par défaut, prélèvement forfaitaire') and the exact conditions under which the barème alternative is computed ('lorsque le revenu imposable hors ces revenus et le nombre de parts sont fournis'), which effectively guides invocation. It does not, however, explicitly name or exclude sibling tools, so it stops short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.