- Brand
- Fiscal.ia
- Category
- Finance
- Primary Subcategory
- Legal Research Engines
Integration details
Description
IFG brings official tax sources into ChatGPT for tax advisers, tax lawyers, accountants and in-house tax teams. Research legislation, administrative guidance, case law, tax treaties, EU law and OECD publications across the jurisdictions available in IFG. Find a source from a citation or topic, browse a code or treaty, and open the relevant provision with its official publisher link. Check available text versions and applicability information for a specified date. Read treaty provisions and their tax-effect dates, locate passages in long documents, and retrieve published legal changes. Use the cited sources to support research notes, client work and internal tax analysis. Coverage, historical depth and applicability evidence vary by source and jurisdiction. IFG identifies missing evidence and partial results so professionals can assess the limits of each source.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Legal Research Engines
- Secondary Subcategories
- None listed
- Brand
- Fiscal.ia
- Access
- Account required
- First tracked
- 2026-07-11
- Tool count
- 5
- Market
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Your score is coming
ChatGPT now suggests Plugins on its own when they match a user's request.Your Plugin Discovery Score measures how often yours appears, and it will show here as soon as it’s ready.
What discovery looks like

Get alerts for IFG
Get updates when IFG’s Discoverability Score or category rank changes.
Competing in ChatGPT Legal Research Engines
View Category5 tools agents can invoke
Use this once you know the instrument (from a reference or a title search): returns its table of contents in official order, with each provision's heading when the publisher gives one; officialPath appears on the first provision of each section and applies to the following ones until the next officialPath. Pick the relevant provisions, then open them with get_authority (toc[].id). Follow nextCursor for long instruments. To find words inside the instrument, use search_authority with its workId. status=repealed or unavailable marks provisions whose current wording is not served; missing headings never prove absence. mode=audit adds relations and manifestations.
browse_instrument
Delta feed of sealed legal effects whose effective date is on or after since (YYYY-MM-DD). A since on or before today covers the period up to today; for announced future entry into force, pass a since after today. Public types: created, amended, repealed, suspended, denounced, new_decision, new_opinion (an Advocate General's or prosecutor's opinion: no res judicata, never a decision), new_ruling, treaty_effect, plus published for the first official Journal officiel publication of a French non-consolidated act or rectification: published carries publicationDate, dateBasis=publication and applicability.status=publication_only, without effectiveFrom; since filters its publication date and never proves a legal effective date. A doctrine, ruling, form, administration page or data edition (created or amended) is dated the same way: publicationDate with dateBasis=publication, without effectiveFrom; it is a publication, never a legal effect. Internal maintenance classes (parser corrections, republishes, metadata backfills) are not served. An amendment whose effective date is not proven carries dateBasis=no_later_than and noLaterThan instead of effectiveFrom: its publisher shows the new wording in force at the latest on that day, which since filters; it proves no effective date. effects[] carry workId and source{authority,url}. An item on one provision also carries id, openable with get_authority; an item on a whole instrument carries workId only — navigate it with browse_instrument. An id is never served unless get_authority opens it. retroactive[] (first page) lists amendments published on or after since whose effective date is earlier (retroactive application clause), with publicationDate. A treaty effect whose date depends on the tax (MLI) comes once per date, with the taxes it reaches that day (scopes). An effect dated after today (since after today) carries applicability: status=not_yet_in_force for a new wording, or status=applicable with reason=repeal_scheduled until a scheduled repeal. legislative_history in kinds lists bills, amendments and reports by publication date. For France, the Journal officiel of day D enters the feed the following night (DILA publishes its daily archives in the evening; IFG reads them between 3:30 and 6:00, Paris time); the default French feed keeps the articles of the tax codes and the non-codified texts whose official title is fiscal (an appointment or a non-tax decree is left out). collection describes only FR/lois-legi, the French non-codified DILA scope: checkedAt and each source's lastArchive name the observed boundary; dailyStatus=observed means that boundary was applied at that check, pending means archives or their projection remained pending, unresolved means recent coherent proof is missing. coverageStatus=complete|partial|unresolved separately reports the held inventories' coverage; status=ok|partial|unresolved combines those states. Partial coverage does not mean the daily watcher stopped. An empty feed proves neither that the publisher issued no text nor that the collection is current. For France, the default feed (no kinds, no workId) over at most 92 days up to today comes by importance, by date within each rank, each effect carrying importance: legislation (tax codes, acts, ordinances, decrees, treaties), administrative_doctrine, leading_decision (decisions their publisher marks), regulation (arrêtés and other non-codified texts), supreme_court_decision, appeal_decision, first_instance_decision, information (administration pages, forms, data); read the first ranks first and follow nextCursor for the rest. Otherwise effects come by date. The default Luxembourg feed keeps the Legilux laws and regulations whose official title is fiscal and leaves out customs binding tariff information (pass kinds to get it).
changes_since
Call this once, right after your answer, with the date of the facts and the texts the answer relies on: IFG re-reads each text at that date, checks that the words you quoted are in the official text, and shows the result under your answer as the IFG control card (Claude, ChatGPT): status and version at that date, each quote found or not, what IFG links to the text (guidance, case law, upcoming amendments), the full text one click away, the citation to copy. sources: one entry per text, in the order cited: id as IFG returned it; passage, the decisive words you quoted (500 characters at most); label, the name you used in the answer; date when that text was read at another date. date: the date of the facts (YYYY-MM-DD; today when none was given). The check says only that the quoted words are in that text at that date, nothing more; a quote with an ellipsis is checked fragment by fragment; a quote under three words, or a text whose transcription is not reviewed, is not checked. If the result reports a quote as not found, re-read the text (get_authority with passage) and correct the quote or the version cited in one sentence; otherwise add nothing after this call. It never changes your answer and never replaces reading the texts with get_authority.
check_sources
Use this to read the official text of one provision or document at the date of the facts, with its official source and a ready-to-cite link. In your answer, name each text inside the sentence that relies on it (article 209 B, I of the CGI), that name linked to citation.url; never paste citation.markdown as a block, nor a string of links after a sentence; then call check_sources (date of the facts, ids read, words quoted): IFG checks each quote in the official text at that date and shows the sources under the answer. Pass date (YYYY-MM-DD, the date of the tax event); without it, IFG reads today's law. Check applicability.status (applicable, applicable_with_amendments, not_yet_in_force, repealed, publication_only, unresolved) and any conditions before concluding; applicable_with_amendments: the served wording applies on that date but is not the whole rule, because an official act IFG holds changes it and its publisher has not consolidated it (reason amended_without_consolidation), or a non-codified act replaces one of its amounts for the tax year of the facts (reason noncodified_derogation, warning with amount): read the served text with the acts in applicability.readWith, whose warnings come first; never conclude on the served text alone; currentVersion, previousVersion and future_effects show the neighbouring versions (the next future effect in full; the next four with date, change, source and the act shortened (future_effects_total counts them all when there are more), all in full with include_versions). A version whose effective start is not proven, only attested by its publisher, has version from null and carries publisherVersion {from, to, dateBasis: no_later_than}: the publisher shows that wording in force at the latest on from; it proves no effective date; applicability.from then gives that date with applicability.fromBasis no_later_than (applicable at the latest since then). Applicable never comes without applicability.from: when entry into force differs by category (alternatives), applicability.from is the latest category date, fromBasis latest_category; for a treaty dated tax by tax (scopes, all applicable), the latest scope date, fromBasis latest_scope. If applicability is unresolved and candidateVersions is present, no main text is selected: each candidate carries its exact text, source, citation and the official acts that produced it in producedBy; publisherVersion records the publisher’s version bounds, not applicability to the facts; compare the stated condition before choosing; when deferredPassages is present, the published wording mixes passages applicable from its publication and passages whose act defers application (applicability.reason partial_application): each passage gives its subdivision, the former and the new words, the clause with its date and link, and appliesAtDate (true, false, or null when the passage could not be attached to an act); no whole wording applies before the deferred date, read both candidates. Missing candidate text makes resolution partial; when a boundary depends on the tax (treaty and MLI effects), it has no single date: scopes or untilScopes give the date of each tax instead of from or to, and applicability.scopes gives each tax's status on the date asked (applicable: this wording governs that tax; not_yet_in_force: not yet for that tax, the previous version or none governs it: read it again with tax_context; unresolved: the treaty dates that tax by the start of the tax period, such as a financial year beginning after a date: a period beginning on or after from is governed by this wording, a period already running on that date by the previous wording or treaty until it closes; for periods of twelve months or less, every fact from the latest date given in undatedScopes is governed by this wording; give tax_context.periodStart, the first day of the tax period of the facts, and IFG serves the wording that governs that period: applicability.reason tax_period_started_after, or tax_period_started_before with the previous wording, applicable until the period closes) with the official sentence that dates it (condition); nextCalls then gives a ready-to-copy get_authority call for each tax (periodStart YYYY-MM-DD to replace by the first day of the tax period when the tax is dated by it). A repealed provision lists in replacedBy the provisions that took it over (publisher's concordance; subdivision names the part taken over when the publisher's concordance table gives it): open them with the same date; a number renumbered before it ever entered into force names its successor with the successor's own from date; a provision still in force whose parts are taken over by provisions starting later, with no repeal published, lists them in replacedBy with partial: true and their own from date, and stays applicable; a provision that took over older ones lists them in replaces; a repealed provision with no successor held carries successor.status none_known, which never proves that none exists. material_dependency names what conditions the provision: a non-codified text that derogates from it, then its implementing provisions (role implementing_provision: regulatory articles of the same code, or of a CGI annex, that cite it by number, with the sentence citing it), then a non-codified text that cites it (publisher's "cited by", most recent first, not exhaustive); include_effects lists them all: read it before concluding. A warning noncodified_derogation quotes a non-codified rule that departs from the provision without amending it (temporary rate, extension, exception) or institutes a contribution or tax on it; publisher_note_previous_version quotes the publisher's note on an earlier wording whose application clause runs beyond it; publisher_note_clause_amended says the non-codified clause cited by the publisher's note has a later wording (date, amending act, link): read that clause at the date of the facts. A warning constitutional_review quotes a Conseil constitutionnel decision whose operative part declares words of this article unconstitutional (outcome censure) or constitutional under a reservation (outcome reserve): the wording it targets, whether those words appear in the served wording (wordsInServedText), and its effect paragraphs; IFG infers nothing from it: read the decision before concluding. A decision given after the date asked is never this warning: constitutional_review_later lists it (id, title, date, outcome, source). A warning cjeu_invalidity quotes a judgment of the Court of Justice of the EU whose operative part declares this EU provision invalid, in whole or in so far as it does something (the words targeted), and the limitation of its effects in time when the judgment writes one; IFG infers nothing from it: read the judgment before concluding. A warning leading_decisions lists, strongest first then most recent (five at most, each with its official summary when published, given once: in cited_by_decisions when the decision is listed there), the decisions their publisher marks as important whose official summary names this provision, the judgments of the Court of Justice that cite it, and the decisions whose operative part or stated principle of law names it (Italy: Constitutional Court declaring it unconstitutional, then Court of Cassation joint sections, rejected constitutional questions, other Cassation principles of law): they may refine or restrict its literal reading; IFG infers nothing from them: read them before concluding. A warning pending_law names a Swiss federal law adopted by Parliament and published in the Federal Gazette, not yet in force, that amends this provision (its referendum and entry-into-force clause, quoted): never the applicable wording until it enters into force. A warning consolidated_act, on a Swiss Official Compilation publication (CH/RO_…), names the consolidated act it published (workId): read that act's provisions at the date of the facts; the publication alone gives no applicable wording. On an IFG commentary note (IFG_DOCTRINE), leading_decisions_of_cited_texts gives, for each text the note cites, those same leading decisions of that text read on the date asked (id, label, decisions with official summary, date, source), refreshed at every answer; the note itself says nothing about them: read them before concluding. cited_by_provisions lists the provisions of the country's other laws that refer to this one by its number and law (another tax or base, for example GewStG § 8 Nr. 5 adding back dividends exempt under KStG § 8b), each with the sentence that refers to it; a warning cross_tax_references names them: read them before concluding on the total tax burden; IFG infers nothing from them. On the decision, constitutional_review_targets opens the law or code provisions actually censured or reserved (outcome censure or reserve); constitutional_review_targets_total announces any remaining targets. For a code article or a non-codified law article, interpreted_by lists the administrative doctrine in force on the date asked that deals with it (it cites the article in its title, a plan heading or the opening it starts from: a BOFiP opening paragraph, the answer of a ministerial answer or ruling; or at least twice; a passing mention or a range of articles does not count; the field name does not mean the doctrine interprets it: read it), each item with its nature (bofip, bofip_archive, customs, ruling, ministerial_answer, circular, bofip_news: a BOFiP news item, dgfip_page: a DGFiP page on impots.gouv.fr, official news or guidance, not opposable doctrine), date (since when it cites the article: the first edition doing so, or the publication), source.url (for the BOFiP, the dated permalink of the edition in force on the date asked), editionDate (for the BOFiP and rulings, the date of that linked edition, distinct from date), subdivision (the part of the article it comments, read in the sentence citing it: I, b) and, once superseded or withdrawn, until: BOFiP editions (before 12 September 2012, the former BOI archives), customs doctrine (douane.gouv.fr), rulings, ministerial answers (those published before 12 September 2012 only up to that date) and circulars; BOFiP and customs doctrine first, the main commentary first (the article in its title, a plan heading or the opening it starts from), then the one citing it most, then rulings, ministerial answers, circulars and DGFiP pages (answers, circulars and pages most recent first), each nature keeping places on the first page (20 per page; interpreted_by_total and interpreted_by_counts give the full count): open it with the date of the facts. When no doctrine in force on the date asked deals with the article, interpreted_by_later lists the first doctrine of each nature published afterwards on the same article number and regime (at most 3): it was not in force on the date asked (its date says when it was published); read its own application dates before relying on it. cited_by_decisions lists court decisions IFG holds that cite the code article by its number and code, only those decided on or before the date asked while the article number had the regime in force on that date (decisions given after the date asked: cited_by_decisions_later, the first 3 with cited_by_decisions_later_total, never in this list nor in leading_decisions): first, on up to 10 places, those their publisher marks as important in their official title (Conseil constitutionnel, Publié au recueil Lebon, Publié au bulletin, Mentionné dans les tables du recueil Lebon), most recent first; then by court level (France: Conseil d'État, Conseil constitutionnel and Court of Justice; courts of appeal and Cour de cassation; tribunals; elsewhere: constitutional and supreme courts and the Court of Justice; courts of appeal; first instance), most recent first within each level (at most 20; cited_by_decisions_total gives the count), each with its summary when the publisher gives one (last level of the Conseil d'État titrage, Cour de cassation sommaire, quoted as published): not exhaustive; read each decision before relying on it. cited_by_decisions_counts gives the number of decisions IFG holds per court (France: conseil_etat, conseil_constitutionnel, cour_de_justice, cour_de_cassation, cour_administrative_appel, cour_appel, tribunal_administratif, tribunal_judiciaire, conclusions_rapporteur_public, analyse_officielle; elsewhere, read in the decision's official heading or number: cour_constitutionnelle, cour_de_justice, cour_edh (European Court of Human Rights), cour_supreme, cour_appel, premiere_instance, conclusions (advocate general); autre: court not recognised): a court missing from the short list may still have decisions. When IFG holds more decisions than the answer shows, links_scope.cited_by_decisions.nextCursor is given even in the short answer: pass it back as cursor (same id, date and language) to read the whole list from its first page, in pages of 20, each page giving the next cursor until status complete; include_links does the same from the first page. A warning future_date_reading says the date asked is after today: the wording served is the one texts published so far provide for that date, and a later law may still change it. A warning publication_date_after_today says the publisher dates this piece after today (announced publication, such as a ministerial answer awaiting its Journal officiel): that date is the publisher's, not yet reached; never cite the piece as published before it. A warning retroactive_application says the served wording entered into force after the date asked (entryIntoForce, acts) and applies retroactively from appliesFrom: it is the law for those facts, but it was not published on that date; publishedWording says what was published then (previous_version, or not_held with the acts already published in publishedActs): when the question is what could be known at that date, say both. A warning pending_bill names a finance or social security bill not yet adopted whose article would amend this provision (bill article, date, quoted line): never law, check the adopted law. On a treaty article, pending_treaty names a signed convention or amending protocol that its publisher lists as not yet in force and that would replace or amend this convention (the instrument article that targets this one, signature date, link): never law, the convention read still applies; renegotiation_clause quotes a treaty rendezvous clause whose deadline has passed and names the texts of the same treaty signed since, or says none is published. The mutual agreements listed in interpreted_by of a treaty article carry nature mutual_agreement, date (of the agreement), from and until (its own effect period) and applicability (its status on the date asked). On a doctrine document, interprets lists the articles it comments (main commentary first); on a French court decision, the code articles it cites by number and code (most cited first); on published administrative doctrine (in France a BOFiP edition, ruling, ministerial answer, circular or customs doctrine; elsewhere the served doctrine of the country), the warning later_decision_requires_review names the decisions issued after its publication on the articles it comments: in France those marked important by their publisher, on the articles it mainly comments; elsewhere those of the country's highest courts or published in their official collection, which the message names (a country without such a written rule gets no warning); each source gives the article, the doctrine's sentence citing it (doctrinePassage) and the decision's published summary (decisionSummary), quoted as published, and precision, read from the citations only: same_subdivision (a subdivision the decision cites is the one the doctrine comments, contains it or lies within it), other_subdivision (both name subdivisions of the article, none shared) or article_only (one of them names only the article), with doctrineSubdivision and decisionSubdivisions as cited; sources come in that order and the message counts each group; precision never says the same question is decided; IFG never says that they contradict it: read both. transposes lists only national-provision to EU-directive-article links supported by a precise official statement; on a directive article, transposed_by lists those proved national provisions, the code article before its amending-law article. When an official piece says a national provision transposes a directive as a whole without naming its articles (« transposée à l'article L. 251 B et suivants du LPF »), transposes lists the directive itself with scope directive (collective, never one of its articles), also on a code article created by the act article the piece names (via); such provisions appear in transposed_by only on the directive's Transposition article. Each link gives basis (official_doctrine, official_judgment or official_legislative_material), doctrine or evidenceId, the official quote and, where identified, nationalSubdivision and directiveSubdivision; collective:true means the source links several provisions collectively and does not establish which national provision implements which directive provision; a collective piece comes once, its directive articles listed in articles (each separately with include_links). Published legislative material is usable only if the adopted text and the exact link are established. notifiedImplementationOf, on a national text, gives the national implementation notifications for a whole directive (basis national_implementation_notification, measure, noticeId to open the documentary notice and its EUR-Lex URL): of that text itself (scope provision or act), or of the act that created it or produced its served wording (scope producing_act, via names that act or act article; wholeAct: true when the whole act was notified, notified for the whole act); a finance law or other multi-subject act notified as a whole reaches only the article that a notified implementing measure names. On a directive, notifiedNationalMeasures lists the measures notified for the whole directive only on its Transposition article (the article requiring Member States to adopt and communicate them) or for the directive as a whole; on any other article it lists only the measures notified for the amending directive that supplied that article's whole wording (amendingAct), and notifiedNationalMeasures_wholeDirective gives the count of whole-directive measures and the id of the article that lists them. Scope provision, act, notice or producing_act describes the national object, never a proved link to a directive article. Neither a notification nor a quoted official statement establishes completeness, conformity or a date of application: open the evidence and the texts. amendedBy names the official acts producing or modifying this wording; incorporated:true means their changes are already in the served text or in a candidate identified by candidateVersions[].producedBy; this never chooses which candidate applies, and signed is a signature date, never an application date. A date with dateBasis=publisher_register is the date recorded in the publisher’s register, never a publication or application date. On an EU amending act, amends lists the proved target provisions with their source and quoted evidence (up to 20, amends_total gives the count); the relation itself supplies no effective date. ifgDoctrine lists IFG's own notes (unofficial commentary, never a source) that cite this provision, published by the date asked; ifgDoctrine_later lists up to 3 published after it, each with its date. A note whose cited text changed after its date carries the warning commented_text_modified_after_publication; a note read for facts before its publication is served as a publication with the warning ifg_commentary_other_date (publishedAt, lawAsOf): it describes the law at lawAsOf, not at the date of the facts. Answers are short by default: interpreted_by keeps one item of each doctrine nature then up to 5, cited_by_decisions the first 5, amends the first 5, transposed_by and notifiedNationalMeasures each keep one item per State then up to 5 (lists_truncated names each shortened list, each total stays); include_links expands them. For interprets and interpreted_by, links_scope names each list with status page, complete or unavailable, page number, returned and total; pass links_scope.<list>.nextCursor back as cursor to read all links in pages of 20 using the same id, date and language. A links page does not repeat the text or candidateVersions. Other expanded link lists remain bounded at 20 with their totals. A text, or the combined texts of candidateVersions, longer than 50 000 characters read without passage comes in pages (text_scope.status=page, start, end, total_characters): pass nextCursor back as cursor for the next page, including the following candidates; candidateVersions_total gives their total. Quote citation.markdown, the clickable official link with the version date. passage returns the paragraphs containing a short literal phrase, or the whole subdivision named by its label (2 ter, IV, 2, 1°, § 40); a text up to 20 000 characters is returned whole, the matches located in text_scope.ranges. language selects the exact publisher manifestation in that language (fr, de, it, en); if it does not exist, IFG says so and never substitutes another language. include_versions lists dated versions; include_effects or mode=audit adds detailed effects. For treaties IFG chooses the scope; use tax_context only if IFG reports an ambiguity. On a treaty covered by the multilateral convention (MLI), the warning mli_applies (effect started on the date asked: date per tax, the anti-abuse clause, the synthesised text link), mli_not_yet_in_force or mli_effect_unresolved says so, and citation.text repeats it. On a date before the article was created (publisher's created-by link), applicability is not_yet_in_force with reason not_yet_created and createdBy names the creating act and its date. On a date before the entry into force that an act fixes for its own original wording (Swiss ordinance: « La présente ordonnance entre en vigueur le 1er janvier 2027 »), applicability is not_yet_in_force with reason act_not_yet_in_force and from that date. A newly created article whose whole wording applies only from a later date set by its act (« exercices clos à compter du … ») is not_yet_in_force with reason deferred_application until that date, with the clause in condition. When its act dates its application by category of business (large companies first, micro, small and medium-sized enterprises later), applicability.alternatives gives each category's date (from), its official sentence (condition) and, when a decree may postpone it, the latest date allowed (latest): not_yet_in_force before the earliest date (for an amended article, the previous wording governs facts before it), unresolved (reason tax_effect_condition) between the dates, since the category is a fact the date does not give, then applicable with no single date. When the application clause bounds the financial years covered (« exercices ouverts entre … et … », « exercices clos du … au … »), applicability.exercises gives that bound as written (basis opened or closed, from, to, condition, act): it bounds the financial year, never the date of facts; within it the wording is applicable with the clause as condition, and for closed years to is also the end for dated facts; after its end applicability is unresolved (reason tax_effect_condition): the financial year concerned decides. A code wording whose entry into force is fixed by a decree IFG has not identified is never applicable: applicability unresolved, reason unresolved_clocks, the clause in condition, the publisher's bounds in publisherVersion; the previous version may still govern the facts. A treaty article dated only by the convention's entry into force, its application clause not read by IFG, is unresolved (reason treaty_application_unread, entryIntoForce) from that entry into force until 1 January of the second calendar year after it, the text served: a convention usually applies from 1 January, or the tax period, following its entry into force; read its entry-into-force article before concluding. A number absent from the official table of a served instrument returns identifier_unresolved, the message and suggestions naming its real neighbouring provisions; text_scope always says whether the text is whole (status full, total_characters). Text without official proof is never returned. When only a publisher catalogue or national implementation notice is held, resolution is partial and applicability unresolved: documentaryNotice contains official metadata, not legal text; its citation says notice documentaire, and linkedAuthorities or suggestions open any proved related texts. A warning control_gap means IFG's nightly automatic control against the official source found a discrepancy on this object (requirement, detail, control date): when it touches what IFG asserts, applicability is unresolved (reason control_gap) and verification is control_gap, the text stays with its official link; when it touches the text itself, the text is withheld (text_status control_gap) and the official link stays; in both cases open the official link before relying on anything.
get_authority
Use this when the user asks about the tax law of France, Luxembourg, Switzerland, Belgium, Germany, Monaco, Andorra, Italy, the UK, the US, opened EU countries (see jurisdiction), tax treaties, the EU, the OECD and the UN (a rule, rate, threshold, deadline, exemption, treaty, ruling or case), even without naming IFG: IFG holds the official texts with their version at the date of the facts. Use it to locate official tax sources: resolve a reference, find an instrument by its official title, search words inside one instrument (workId), or list a jurisdiction's catalogue (query=""). It does not answer tax questions: a question or a sentence is refused. How to find a text: (1) If you know or can infer the provision (e.g. art. 67 LIFD, § 8b KStG, LIR 166, CGI 209 B, art. 206 CIR 92, BOI-…, ECLI, treaty/CH-FR-1966/11), search that reference first, then check the heading and text you get: a recalled number can be wrong or renumbered. (2) Otherwise find the instrument by its official title, read its table of contents with browse_instrument and open the relevant provisions. (3) To find words inside a long instrument or a case-law collection, search with its workId. Unscoped keyword search is a last resort; query="" lists a jurisdiction's catalogue page by page, useful for small shelves, not to scan thousands of texts. A miss never proves absence. Results are candidates: open them with get_authority before relying on them; each carries its workId (browse_instrument). With workId, a provision number absent from the instrument's official table is never ok: candidates found by its words carry match: approximate, honestGap identifier_unresolved says the number is absent and suggestions name the real neighbouring provisions. A case_law candidate whose publisher number states its nature carries nature: decision, opinion (advocate general or prosecutor: no res judicata), journal_notice (Official Journal summary or notice of a case, not the decision) or undetermined. resolution.status: ok | no_hit_for_this_query | time_budget | another typed gap.
search_authority
IFG ChatGPT Plugin FAQ
How the directory, categories and Discoverability Score work.
Read the methodologyHow do I improve IFG's ChatGPT Plugin discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are IFG alternatives on ChatGPT?
As of 2026-11-02, IFG competes with Accords AF Recherche, Adminio LEX, Advoga IA, AI Attorney Pakistan, AI Lawyer Kazakhstan, AI Rechtshulp, AiLexLux Legal, AL WAKEELO and 104 more in ChatGPT Legal Research Engines, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.