2,711 ISDA DRR rules across nine derivatives regimes - EU and UK EMIR, CFTC, SEC, CSA, ASIC, MAS, JFSA, HKMA - plus 557 SFTR rules compiled from the FCA's and ESMA's own publications.
We tell you where you fail, and the root cause. Every rule that broke quotes the regulator's official text behind it, and shows the values in your report that tripped it, down to the record it came from in a batch. SFTR findings carry the FCA's and ESMA's own rejection codes, so a finding maps straight onto your trade repository's NACK.
We check what the rulebook doesn't. Gentek checks run alongside the rules. Is the CCP authorised on the ESMA register? Is the venue MIC real? Does the instrument's CFI match the asset class you reported? Is the LEI still in good standing? Did you file inside the deadline, on the regime's holiday calendar? These never move the rulebook's verdict — they sit beside it.
Overview
The Gentek MCP Server brings Gentek's regulatory data into AI assistants such as Claude, ChatGPT, and Copilot. (MCP, or Model Context Protocol, is the standard that lets assistants connect to outside tools.) Instead of opening regulator spreadsheets and cross-referencing columns, you ask in natural language; your assistant searches the official validation rules and reference data and returns a sourced answer citing file, sheet, and cell, with a link to the regulator's published data.
The service covers two areas:
Validation rules: field definitions, formats, error codes, conditional logic, and reporting requirements for EMIR, SFTR, and MiFIR, in both UK (FCA) and EU (ESMA) versions, plus the ASIC (Australia), HKMA (Hong Kong), CFTC (US), and CSA (Canada) regimes, and checking trade reports against many of these rules.
Reference data: instrument lookups from FIRDS (both ESMA and FCA data) and entity lookups from the GLEIF LEI database, sourced from the same registers regulators use, not unverified web results.
For reporting, compliance, and oversight teams: routine checks are faster, and every answer comes from the official sources regulators use and shows where it came from.
Connecting takes a few minutes; this guide shows how.
For hands-on help or specialised changes, email info@gentek.ai.
The Tools at a Glance
The service provides 14 tools. You do not call them directly: describe what you need and your assistant picks the tool, fills in the details, and presents the result. Each capability links to its examples.
Field definitions, formats, error codes and field conditionality requirements for EU EMIR derivative and margin reporting (ESMA) search_eu_emir_validation_rules
Derivative transaction reporting data elements, reporting guidance, and TR validation guidance for Australia (ASIC Rules 2024) search_asic_validation_rules
Examines an XML trade report against the official rulebook's encoded rules — ISDA DRR for derivatives (EU/UK EMIR, CFTC, SEC, CSA, ASIC, MAS, JFSA, HKMA), Gentek's compiled FCA/ESMA rulebooks for SFTR — plus Gentek's own checks and GLEIF/FIRDS verification of its identifiers examine_trade_report
Every rule the examination runs, by regime, report type, or rule id: official text, source citation, encoded logic, and what is and is not machine-checked search_validation_rules
Official sources
Every answer cites the regulator's published file by name, sheet and cell. These are the publications behind the rules; each regulator distributes its own, under its own terms.
EU EMIR (ESMA)
EMIR REFIT validation rules, reconciliation tolerances and the data-quality notification template (ESMA74-362-2683)
UK EMIR (FCA)
UK EMIR validation rules, 2026 edition
EU SFTR (ESMA)
SFTR validation rules, the March 2023 update (ESMA74-362-1008), applicable from 11 September 2023
UK SFTR (FCA)
UK SFTR validation rules v1.0, applicable from 25 November 2024
ISDA Digital Regulatory Reporting — the open-source DRR/CDM Rune model (7.6.0 at the time of writing; each response names the version it ran)
FCA and ESMA SFTR reporting schemas — ISO 20022 usage guidelines for auth.052 / auth.070 / auth.071
ESMA list of authorised CCPs and the EMIR Art. 25 register of recognised third-country CCPs (backing the CCP standing checks)
Getting Connected
Add Gentek to your assistant once and the tools are available in every conversation.
Creating your Gentek account
If you do not have one, sign up here and register. Registration is self-service; you are then issued the OAuth client ID and client secret needed when connecting.
Register
On the Gentek sign-in page, select New user? Register and complete the form.
Email: your work email
Password
First name, Last name, Company, Job title, and Reason for access.
Verify your email
Gentek emails a verification link to the address you registered; you must verify before you can sign in. If it does not arrive, check spam, then use Resend.
You're ready
Once you click the verification link, you will see this page.
A second email contains the credentials for the next steps; add these to your AI provider when you connect.
Signing in later. After the first time, you sign in with just the email and password you created here.
Add the connector in your AI assistant
Add the connector URL, client ID, and client secret to your assistant. When you first connect, sign in with the Gentek email and password you registered — not the client ID or secret. Microsoft Copilot (via Copilot Studio) also needs the Authorization and Token URLs from the same email.
If you are already signed in to your provider in the same browser, you may not be prompted again.
Two common sign-in errors: in Claude, a prompt to open the desktop app that fails (it is signed in to a different account than Claude.ai); and a cookie error (sign-in started in one browser and finished in another). Use one browser and matching accounts throughout. See Troubleshooting.
Note: connecting here also makes Gentek available in your Claude Code sessions — no separate setup.
Open Settings
Go to claude.ai and open the sidebar, then select Customize.
Go to Connectors
Select Connectors, then click the + next to the search box and select Add custom connector. On Team and Enterprise plans you must be an admin to add a connector.
Enter details
Give the connector a name (e.g. Gentek Reg Knowledge) and paste the connector URL from your email. Under advanced settings, enter the client ID and secret from registration. Click Add.
Press Connect and sign in with your Gentek credentials
Once authenticated, Claude has access to all 14 tools.
Go to chatgpt.com, click your profile icon, and select Settings.
Enable developer mode
In Settings, open Security and login and turn on Developer mode. On Business and Enterprise workspaces, Developer mode may need to be enabled by your administrator.
Create the app
Go to Plugins and click the + button. Enter a name (e.g. Gentek Reg Knowledge). Add a brief description of when to use this MCP server, e.g. “Use this server when answering regulatory reporting or reference data questions.” then paste the connector URL from your email into the connection box. The server URL is required before you can continue.
Configure Auth
Select OAuth as the connection type. Open Advanced auth settings, set Client registration to User-Defined OAuth Client, and leave the callback URL as is. Enter the Client ID and Client Secret from the email sent by Gentek, and set the Token endpoint auth method to client_secret_basic. Accept the terms and conditions, then click Create.
Note: an app you create in developer mode stays private to you; in a chat, type @ followed by the app name to invoke it.
Microsoft 365 Copilot connects through an agent built in Copilot Studio, so you need access to it in your organisation. As well as the connector URL, client ID, and client secret, you will need the Authorization and Token URLs — all in your welcome email.
Open Copilot Studio
Go to copilotstudio.microsoft.com (not copilot.microsoft.com or copilot.cloud.microsoft) and create a new agent, or open an existing one.
Add the MCP server
On the agent’s Tools page, select Add a tool, then New tool, then Model Context Protocol.
Enter details
Give the server a name (e.g. Gentek Reg Knowledge), add a brief description of when to use this MCP server, e.g. “Use this server when answering regulatory reporting or reference data questions.”, and paste the connector URL from your email into Server URL.
Configure Auth
Select OAuth 2.0 as the authentication type and Manual as the OAuth 2.0 type. Enter the Client ID and Client Secret from the email sent by Gentek, and the Authorization URL and Token URL from the same email (use the Token URL as the Refresh URL as well), then click Create.
Connect
Click Next. On the Add tool dialog, select Create a new connection and sign in with your Gentek account, then select Add and Configure.
Publish
Publish the agent from Copilot Studio to make it available in Microsoft 365 Copilot or Teams (generative orchestration must be enabled — the default for new agents).
Any other application supporting remote (streamable HTTP) MCP servers with OAuth should connect the same way: add an MCP server, enter the connector URL, client ID and secret from your email, and sign in with your Gentek account. Untested clients are not officially supported but should generally work.
A worked session, with the three files to follow along.
What gets rejected?
One session, three files: an EMIR batch that bounces six ways, a trade that passed in-house validation but carries a dead counterparty, and an SFTR batch broken four ways on a single record.
You
Run this through EU EMIR before it goes to the trade repository. What gets rejected?
INVALID — six rulebook failures, plus one additional Gentek flag. It would be rejected on six EU EMIR DRR rule breaks:
EMIR_VR_2002_01 — 2.2 Report Tracking Number left blank. Per ESMA Q&A the RTN is only required when venue of execution (2.41) is an EU trading-venue MIC, so the report as submitted does not reconcile 2.41 and the RTN either way.
EMIR_VR_2002_03 — the same field, mirror condition: the RTN should be blank when 2.41 is not a trading-venue MIC.
EMIR_VR_2030_02 — the trade is flagged cleared (2.31 = Y) but 2.30 Clearing Obligation is not set to the required UKWN.
EMIR_VR_2036_01 — 2.34 Master Agreement Type is populated (ISDA) but the required 2.36 Master Agreement version is missing.
EMIR_VR_2037_01 — 2.37 Intragroup is missing, and it is required (TRUE/FALSE) whenever venue of execution is not a regulated-market MIC.
EMIR_VR_2038_01 — 2.38 PTRR is populated with true, false; only a single TRUE or FALSE is allowed, not both.
The two RTN failures point at one root cause: 2.41 Venue of Execution and 2.2 Report Tracking Number are inconsistent with each other, and whichever is correct, the other needs fixing to match.
Beyond the rulebook, one Gentek check flagged something the DRR verdict does not cover: the CCP named on the trade (LEI R0MUWSFPU8MPRO8K5P83, BNP Paribas) is not on ESMA's list of authorised CCPs or the Art. 25 third-country register. That would not cause a NACK on its own — either the CCP LEI is wrong, or the trade is being routed to an entity not authorised to clear it. Everything else was clean: schema validation passed, all three LEIs resolve and are active in GLEIF, and both ISINs resolve in FIRDS.
You
The clearing obligation one, EMIR_VR_2030_02 — where does that requirement come from?
Gentek
Straight from ESMA's EU EMIR REFIT validation rules: the workbook esma74-362-2683_emir_refit_validation_rules…xlsx, sheet Validations_Cpty_derivative, field 2.30. That field has three linked conditions, error-coded EMIR-VR-2030-01/02/03; the one that fired is condition 2.
Field 2.30 records whether the contract belongs to a class of OTC derivatives subject to the clearing obligation, and whether both counterparties are themselves subject to it under Regulation (EU) 648/2012. Valid values are TRUE, FLSE or UKWN. Condition 2 ties it to field 2.31: once a trade is marked actually cleared (2.31 = Y), 2.30 must be UKWN, because the report is meant to record unknown rather than assert TRUE or FLSE. The report had 2.31 = Y with 2.30 left blank. It is conditionally mandatory at both trade and position level for a NEWT action, per the requirement matrix cells L55 and U55 on that sheet.
You
This trade passed our own validation — what do you think?
This one clears the DRR rulebook clean: every checkable rule ran, none failed, and schema and field formats both pass. The in-house validation was right that it is structurally sound against EMIR's own rules. Two things surface outside the rulebook check itself.
The counterparty's LEI is dead — the real problem. ANGGYXNX0JLX3X63JN86, reported as Counterparty 2, resolves in GLEIF to Credit Suisse AG with status RETIRED. Credit Suisse AG was absorbed into UBS and its registration lapsed as part of that. A retired LEI is not in the accepted set (Issued, Lapsed, Pending transfer, Pending archival), and this was checked as of the trade's own reporting date against the TARGET2 closing-day calendar, not just today. A trade repository's front-end validation typically will not catch this, because the report is schema-valid and field-format-valid — it just references an entity identifier that is no longer live.
The CCP is not on the register. Central counterparty LEI 549300FM54TXULUKO729 resolves to DTCC Solutions LLC, which does not appear on ESMA's authorised-CCP list or the Art. 25 recognised third-country register. One contextual note needing no action: the ISIN carries a GB prefix while the execution venue is coded XXXX, flagged as a note only because cross-listing is normal.
You
Please give me the trade using that LEI.
Gentek
Only the Counterparty 2 LEI changed; everything else in the trade is untouched — with the flag repeated that the substitution rests on GLEIF showing that entity as UBS's main Swiss entity, not on any confirmed novation or booking mapping for this trade.
You
Can you revalidate that trade to confirm it solves that rule?
Gentek
Confirmed. GENTEK-LEI-04 (the retired-LEI issue) and GENTEK-LEI-01 (the not-current warning) are both gone, and BFM8T61CT2L1QCEMIK50 resolves clean as UBS AG, Zurich, ACTIVE/ISSUED. The DRR rulebook verdict stays VALID, unaffected either way since it was already passing. Two items remain, unrelated to the LEI swap: GENTEK-CCP-01, the CCP still absent from ESMA's authorised-CCP and third-country registers, and GENTEK-MIC-03, the ISIN and venue country-prefix note, contextual only.
You
One of our other counterparties shows LAPSED, not RETIRED — do we have to stop reporting it too?
Gentek
No, and the answer is precise about why: a lapsed registration means the entity stopped renewing, which the standing check flags as not current while the acceptance check passes it, because the regulators permit reporting a lapsed LEI. Retired is a different state with a different consequence. One check warns; the other decides.
INVALID — a three-record batch whose first record, the NEWT securities loan, is broken. Run as UK SFTR, because the test LEIs and BIC point to GB entities and the regime has to be chosen explicitly. Three schema-level failures would bounce the file before any rule logic runs: at line 43 field 1.4 Nature of reporting counterparty appears in a position the schema does not allow; at line 73 field 2.1 UTI carries bad-uti!, which fails the required pattern [A-Z0-9]{1,52}; and at line 128 field 2.15 Termination date sits where the schema does not expect it.
Record 1 also breaks three rules:
GENTEK-SFTR-UK-MATRIX-1.3 (FCA SFT-003) — field 1.3 not populated, but required for a new securities-loan trade.
GENTEK-SFTR-UK-MATRIX-2.15 (FCA SFT-028/029) — 2.15 Termination date is populated, but the rulebook requires it blank for a NEWT securities loan.
GENTEK-SFTR-UK-1.6 (FCA SFT-004) — fund classification XXXX is not in the allowed set (ETFT, MMFT, REIT, OTHR), and is required because 1.5 is UCIT.
So one record carries a bad UTI, a missing mandatory field, a field populated where it must be blank, and an invalid enum value. Records 2 (VALU) and 3 (COLU) passed what could be checked. Reference data is a real gap rather than noise: none of the five LEIs resolved in GLEIF — they look synthetic rather than registered — which also knocked out the downstream checks that depend on GLEIF, and one ISIN has no FIRDS record while the other resolved fine. What did not get evaluated falls into two groups: rules needing prior trade-repository state, which cannot be checked from a single message in isolation, and rules needing date arithmetic or sign conventions the engine does not encode. Neither is a failure, and neither is silently passed.
You
That's a lot of text — can you visualise the findings as HTML, and show the row of the XML which caused each failure?
Gentek
The findings come back as an interactive page: click any finding and the corresponding line lights up in an XML pane beneath it, auto-scrolled into view, filterable by schema versus rulebook, with arrows to step through each finding in turn. One honest caveat carried on the face of it — the 1.3 finding has no line of its own, because the failure is that the field is absent, so it points at the counterparty block where the field should sit.
Look up a field definition (EMIR)
Ask for a field by name or number: the response gives description, format, error codes, M / C / O / N/A requirement per event type and level, and the exact source.
Example prompt
What are the validation rules for the UTI field under EU EMIR for a new trade?
Compare UK and EU requirements
Ask about UK and EU in one prompt to get a side-by-side answer for the same field.
Example prompt
How does the UTI field differ between UK EMIR and EU EMIR for action type NEWT?
Check conditional requirements by product (SFTR)
SFTR validations can be filtered by SFT type (repo, buy-sell-back, securities lending, margin lending) and by event type and reporting level.
Example prompt
Under EU SFTR, when is the Collateral quality field required for repos?
The same question against UK SFTR draws on the FCA's published rules (uk-sftr-validation-rules-v1.0.xlsx).
Investigate error codes and conditional logic (MiFIR)
MiFIR responses include the full validation rule set per field (XML schema rules, application rules, error codes, and error text), so you can work back from a rejection to its cause.
Example prompt
Our MiFIR report was rejected with error CON-070. What does the buyer identification code field require?
List a complete field reference
Ask for the full reference table of a sheet, filtered to what you need — for example every mandatory field for a margin update.
Example prompt
List all mandatory fields for a margin update (MARU) under EU EMIR.
Worked example: diagnose a TR rejection
A common task is working back from a trade repository rejection (NACK) to its cause, especially where UK and EU rules diverge. Here the assistant checks the UK SFTR rules for a new repo at trade level against the EU rules, tracing the rejection to fields 2.85 and 2.86 — conditionally mandatory in the UK, optional in the EU.
Example prompt
Our UK SFTR report on repo UTI GENTEKREPO20260811X was rejected on the collateral section, but the EU leg of the same trade was accepted. It's a new trade (NEWT) at trade level with a government bond as collateral. Check it against the UK rules, compare with the EU rules, and tell me what's likely causing the UK rejection.
Paste an ISIN (or search by name, CFI code, issuer LEI, or venue MIC) for the full FIRDS record from both ESMA (EU) and FCA (UK) data: where an instrument is listed and which regulator oversees it.
Example prompt
Look up ISIN GB00BH4HKS39. Is it in FIRDS for both the EU and the UK?
Each record shows when its data was refreshed; EU and UK results stay separate. To filter to one jurisdiction, just ask (“only check UK FIRDS”).
Entity lookups (GLEIF)
Search by LEI or entity name for the full record from the global LEI database: registration status, jurisdiction, addresses, corporate hierarchy, and category. Active, lapsed, and duplicate records are ranked.
Example prompt
Is LEI 213800TB53ELEUKM7Q61 active, and who is it registered to?
The record's status and last-update date let you confirm an entity is active before relying on its LEI.
Worked example: trace a rejection to a retired LEI
Check an instrument and its issuer in one go: the ISIN in FIRDS, the issuer LEI in GLEIF. Here both lookups run together and spot that the issuer LEI is no longer active.
Example prompt
Our reports on FR0011855188 keep getting rejected on the issuer details, can you work out why?
Examine a derivatives report
Example prompt
Examine this EMIR trade report before we submit it.
Name the regime for SFTR: UK and EU share identical messages, so we never guess which rulebook applies.
Look up the rule behind a finding
Every rule id we cite resolves in one call — the official text, the source cell it came from, and the logic we ran.
Example prompt
What exactly does rule GENTEK-SFTR-UK-2.14 check?
Submitting the report. auth.030 / auth.108 or DTCC RDS for derivatives; auth.052 / 070 / 071 for SFTR. Raw XML or gzipped base64, up to 5 MB in one call — every record examined, no batching.
Example Scenario: a technology BA, not expert in EU EMIR fields, needs synthetic data for positive and negative unit tests on the “Collateralisation Category” enumerations.
Example prompt
Create a CSV with all required fields for an EU EMIR Collateral Update (MARU). Lay it out as one field per column. Populate 2 rows with internally-consistent synthetic records that pass syntax and conditional validation rules, but with an important feature: 1 record must have an invalid code in the Collateralisation Category field that breaks validation.
Writing Effective Queries
A good search names what you want to check, the regulation and jurisdiction, and any identifier or filter that narrows the result.
Name the regulation and jurisdiction (“under UK EMIR”, “EU SFTR”); otherwise your assistant may check both — sometimes exactly what you want.
Field names, numbers, keywords, and error codes all work: “Field 2.1”, “UTI”, “collateral”.
Filters narrow to your exact case: event type (NEWT, MODI, MARU…), SFT type (repo, securities lending…), trade vs position level.
A complete ISIN or 20-character LEI returns one exact record; a partial name returns the closest matches, best first.
Ask a more specific question for a more specific answer, or a broader one for a general overview.
To examine a report, attach the XML and name the regime where the document cannot identify it: SFTR always needs “UK SFTR” or “EU SFTR”; DTCC RDS needs CFTC, SEC, or CSA.
Any rule id in an examination finding can be looked up verbatim (“what does GENTEK-SFTR-UK-2.14 check?”) — official text, source cell, encoded logic.
Troubleshooting
Common symptoms and what fixes them.
Verification email did not arrive.
Check spam, use Resend, and confirm you used the correct work email.
Stuck at sign-in or “account not fully set up”.
You may still need to verify your email or accept the Acceptable Use Policy.
Connecting in Claude, you are prompted to open the Claude desktop app and get an error.
The desktop app may be signed in to a different account than Claude.ai; use the same account in both before you connect.
You see a cookie error during sign-in.
Sign-in started in one browser and finished in another; use a single browser throughout. If it continues, contact Support.
The assistant does not use the Gentek tools.
Check the connector is added and that access was allowed when prompted. In ChatGPT, you may also need to refresh the app under Settings → Plugins and start a new chat.
Microsoft Copilot cannot connect or the tools never appear.
MCP access in Copilot Studio runs through Power Platform connectors, so organisation data policies can block it. If sign-in completes but tools stay unavailable, contact your administrator.
You are asked to sign in again.
Your session expired; sign in again with your Gentek account.
The result is less precise than expected.
Add the regulation, jurisdiction, field number or full identifier, and any filter; broad searches return broader answers.
No matching entry is found.
Reported explicitly when the authoritative source has no match; try a more specific query (field number or name).
A lookup fails or times out.
FIRDS and LEI lookups use Gentek's own regularly updated copy of the data; wait a moment and ask again.
Examining an SFTR report asks which regime applies.
UK and EU SFTR use identical messages and the document does not name its jurisdiction; say “UK SFTR” or “EU SFTR”.
A report you believe is correct returns RESULT: INCOMPLETE.
Not a failure: nothing failed, but some applicable checks could not be evaluated — each listed with the official text and reason. Common on compliant reports: regulators publish some obligations no single message can decide.
Include a short description of the issue, the query submitted, and the assistant used. The same address handles hands-on help getting connected and specialised changes.