FxLayer
Server Details
Indian FEMA compliance: RBI purpose codes, EDPMS / IDPMS, Form 145 / 146 and export deadlines
- Status
- Healthy
- Uptime
- 100.0% over 19 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 8 tools
Most tools are clearly distinct by resource and action, such as regulatory updates, deadline lookups, and about. The main ambiguity is between `search` and `find_purpose_codes`, both accepting plain-language phrases and relating to purpose codes, and between `fetch` and `get_purpose_code` for retrieving code details. Descriptions help clarify, but an agent could still hesitate in those cases.
All names use snake_case, but the set mixes single verbs (`search`, `fetch`), verb-noun forms (`find_purpose_codes`, `get_purpose_code`), noun phrases (`export_realisation_deadline`, `services_edf_due_date`, `regulatory_updates`), and a prepositional prefix (`about_fxlayer`). The names are readable but do not follow one predictable convention.
Eight tools are well scoped for a compliance-reference server, covering discovery, retrieval, purpose-code lookup, deadlines, updates, and background. Each tool appears to earn its place without excessive breadth.
The surface covers the core workflow: search guides and codes, fetch full content, find and inspect purpose codes, check selected deadlines, and read regulatory updates. Minor gaps remain, such as no general browse/list operation for all guides or all deadlines, but agents can work around this through `search` and `fetch`.
Available Tools
8 toolsabout_fxlayerAbout FxLayerARead-onlyIdempotentInspect
What FxLayer is, its modules, plans with starting prices, and where to sign up or read more.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnlyHint=true, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the safety profile is covered. The description adds value by disclosing the categories of content returned (modules, plans, prices, signup links), but says nothing about return format or freshness beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence enumerating the exact content coverage, with no filler or redundancy. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters, no output schema, and safety fully covered by annotations, the description's content enumeration is sufficient for an agent to know what it will get back. Adding freshness or link/format details would round it out, but nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, which is the baseline 4 case. The description correctly implies a parameterless, single-shot lookup, and there are no arguments an agent could misconfigure.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific resource (FxLayer) and enumerates the content served: what it is, modules, plans with starting prices, and signup/read-more links. It is clearly an informational/reference tool, distinct from the regulatory and EDF-due-date siblings, though it does not explicitly contrast itself with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is for questions about FxLayer itself, pricing, or signup. There is no explicit when-to-use statement, no exclusions, and no named alternative among the sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
export_realisation_deadlineExport realisation deadlineBRead-onlyIdempotentInspect
The last day to realise and repatriate an export's proceeds under FEMA (for exports from 1 October 2026, nine months from the date of export, or twelve when invoiced or settled in rupees), with the rule and its source.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | ||
| currency | No | Invoice currency, e.g. USD or INR. | |
| export_date | Yes | Shipping Bill date (goods) or invoice date (services), YYYY-MM-DD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, closed-world and non-destructive, so the safety bar is low; the description adds real value by disclosing what comes back (the applicable rule plus its source) and the substantive rule thresholds. It does not say what happens for exports dated before 1 October 2026, leaving a genuine behavioral hole.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the core concept before the parenthetical rule detail. Every clause carries information, though the nested parenthetical costs a little readability.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description does well to say the response includes the rule and its source. However, for a rule-driven calculator it omits what the tool does with pre-October-2026 export dates and how the goods/services distinction affects the answer, so an agent cannot fully predict the outcome.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% and the schema already documents export_date and currency, so baseline applies. The description contributes indirectly by explaining that the twelve-month window applies when invoiced or settled in rupees, which hints at how currency changes the result, but it never explains the goods/services enum or how kind alters the calculation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Names a specific domain concept (the last day to realise and repatriate export proceeds under FEMA) and what accompanies the answer (the rule and its source), so an agent can tell it apart from the adjacent services_edf_due_date. The verb is implicit — it never says 'returns the deadline' — but the resource and scope are unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No when-to-use or when-not-to-use guidance, and no routing against the closest sibling services_edf_due_date, which an agent could easily confuse this with. The eligibility rule (exports from 1 October 2026) is stated as domain fact but not framed as a precondition for calling the tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchRead a guide or a purpose-code pageARead-onlyIdempotentInspect
The full text (Markdown) of a guide or a purpose-code page, by the id search returned (guide:, code:) or by its address on fxlayerhq.com.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, closed-world), so the description's job is to add context — and it does, disclosing that the return is full Markdown text and that ids come in two prefixed forms (guide:<slug>, code:<code>) or as an fxlayerhq.com address. It stops short of describing error behavior for malformed ids.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that leads with the return value and then qualifies the id input. No filler; the parenthetical id formats earn their place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description carries the burden of describing the return, and it does (full text in Markdown). For a one-parameter read tool with annotations covering safety, this is nearly complete; only failure modes and explicit sibling disambiguation are missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% — the schema only says the single parameter is a string. The description compensates well by explaining what the id is (returned by search) and its two concrete formats plus the address alternative, giving real meaning beyond the type declaration.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (read/return full text) and resource (a guide or a purpose-code page), plus the accepted id forms. It is clear on its own, though it never explicitly contrasts itself with the close sibling get_purpose_code, so an agent must infer the difference.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'by the id `search` returned' implies the intended workflow (call search first, then fetch the id), which is useful. However, there is no explicit when-to-use guidance and no comparison against get_purpose_code, find_purpose_codes, or search, so routing is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_purpose_codesFind the RBI purpose code for a paymentARead-onlyIdempotentInspect
RBI purpose codes that fit a payment or receipt described in plain words, best first, each with its bank form (Form A1 / A2), Form 145 / 146, income-tax nature, GST and reporting.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | Yes | What the money is for, e.g. 'software development for a US client'. | |
| direction | No | inward = money received from abroad (P codes), outward = money paid abroad (S codes), any = both. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare this a read-only, idempotent, non-destructive, closed-world lookup, so the safety profile is covered. The description adds genuine behavioral value by disclosing result ordering ('best first') and the enrichment payload attached to each hit (Form A1/A2, Form 145/146, income-tax nature, GST and reporting), which annotations cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that states the match, the ranking, and the per-result contents with no filler. It is dense but every clause carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must carry the return-value burden, and it does list what each result contains. Minor gaps remain: it does not say how many results are returned by default or how limit interacts with the ranking.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 67% – query and direction are documented in-schema (including the inward=P / outward=S mapping), while limit has only min/max constraints. The description's 'described in plain words' merely restates the query parameter and adds nothing about direction or the limit's effect, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the resource (RBI purpose codes), the input form (a payment or receipt described in plain words) and the output shape (best-first, with bank forms and tax/GST metadata), so the tool's function is unmistakable. It does not, however, differentiate itself from the sibling get_purpose_code, which an agent could easily confuse with this lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: 'fit a payment or receipt described in plain words' suggests this is the fuzzy/natural-language lookup path. There is no explicit statement of when to prefer it over get_purpose_code, no prerequisites, and no when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_purpose_codeOne RBI purpose code in fullARead-onlyIdempotentInspect
One RBI purpose code (e.g. P0802, S1006) with the reasoning: which bank form, income-tax nature and Form 145 / 146 part, GST, reporting, cautions and the matching code for the other direction.
| Name | Required | Description | Default |
|---|---|---|---|
| code | Yes | e.g. P0802 or S0802 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description adds useful behavioral context by enumerating exactly what the record contains (form mapping, tax nature, GST, reporting, cautions, reverse-direction code), which is more than the annotations provide. No output schema exists, so this enumeration carries real weight.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the resource and then lists the returned fields. Nothing is wasted, though the fragment lacks an explicit verb and the long enumerations list becomes a run-on.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully compensates by listing the returned content, and the lone parameter is covered by the schema. What is missing is only the selection guidance against find_purpose_codes and error behavior for an unknown code, which are minor for a simple keyed lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the single 'code' parameter is documented with examples in the schema itself; the description repeats the same example codes (P0802, S1006) without adding format, casing, or validation meaning. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (a single RBI purpose code) and enumerates the content returned (bank form, income-tax nature, Form 145/146 part, GST, reporting, cautions, reverse-direction code). The word 'One' implicitly distinguishes it from the sibling find_purpose_codes, though the verb ('get') is left implicit and sibling differentiation is only hinted at rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: passing a code like P0802/S1006 and getting the full breakdown suggests a lookup-by-known-code tool, contrasted with the plural sibling find_purpose_codes. There is no explicit statement of when to prefer this over searching, nor any note about invalid codes.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
regulatory_updatesRecent RBI, FEMA and tax changesARead-onlyIdempotentInspect
The RBI / FEMA / income-tax / GST changes FxLayer follows: the rule, when it takes effect, its source and what changed in FxLayer. Newest first.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| query | No | Optional words to filter by. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so safety is covered. The description adds behavior the annotations cannot: newest-first ordering and the shape of each returned item (rule, effective date, source, FxLayer delta), which is the most valuable disclosure given there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence: the subject comes first, the item contents are compactly enumerated, and the ordering hint closes it. No filler or restated title.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description usefully enumerates the return fields and ordering, and the tool is a simple two-parameter read. It still omits pagination/limit semantics, which is the one gap for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is only 50% (query documented, limit not), so the description should carry more weight. 'Newest first' weakly implies limit selects the most recent N entries, but neither limit's cap of 50 nor query's matching semantics are clarified beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific resource (RBI / FEMA / income-tax / GST changes tracked by FxLayer) and enumerates what each item carries (rule, effective date, source, FxLayer delta), which is clear. It does not explicitly contrast itself with siblings such as about_fxlayer or search, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use statement, no prerequisites, and no named alternative. An agent must infer that this is the feed for regulatory-change lookups rather than a keyword search like search or a static explainer like about_fxlayer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchSearch FxLayer's guides and purpose codesARead-onlyIdempotentInspect
Search FxLayer's compliance guides and the RBI purpose-code reference with plain words (for example 'EDPMS entry not closed', 'Form 145 Part C', 'software export purpose code'). Returns ids for fetch.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Plain words or a purpose code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds genuine value by disclosing the free-text query style and, importantly, the return contract ('Returns ids for `fetch`'), which is the key behavioral fact given there is no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One tight sentence with the corpus named first, examples in parentheses, and the return contract last. Every clause carries information; no filler. It could be marginally cleaner, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, the description covers what is searched, how to phrase the query, and what comes back (ids for fetch) — the essentials. It omits ranking, result limits, or fallback behavior when no match is found, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is already described as 'Plain words or a purpose code.' The description goes beyond that by supplying three concrete example queries, giving the agent a real sense of the expected input shape (natural language phrases as well as code identifiers).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search) and resource set (compliance guides plus the RBI purpose-code reference), so the agent knows exactly what corpus is queried. It does not explicitly distinguish itself from sibling find_purpose_codes or get_purpose_code, which also concern purpose codes, leaving some ambiguity about which to pick for a code-only lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied through the free-text examples ('EDPMS entry not closed', 'Form 145 Part C') and the note that results are 'ids for fetch', which hints at a search-then-fetch flow. However, there is no explicit when-to-use versus when-not guidance and no mention of find_purpose_codes as the alternative for direct code lookups.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
services_edf_due_dateMonthly services EDF due dateARead-onlyIdempotentInspect
When the monthly EDF for a services export invoice is due (30 days from the end of the month of invoicing, for invoices from 1 October 2026), with the rule and its source.
| Name | Required | Description | Default |
|---|---|---|---|
| invoice_date | Yes | YYYY-MM-DD |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive safety, and the description adds value beyond them by disclosing the return payload ('the rule and its source') and the hard-coded calculation rule with an effective date. It does not contradict any annotation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler, and the core rule is stated up front. The heavy parenthetical makes it slightly harder to scan, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, but the description names what is returned (rule plus source), covering the main return-value gap. It is thin on behavior for invoices dated before 1 October 2026 and on the exact output shape, which keeps it from a 5 for a tool with no structured return contract.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (invoice_date, format YYYY-MM-DD), so the baseline would be 3. The description goes further by tying the parameter to the invoicing month-end rule and the 1 October 2026 threshold, giving the date input meaning the schema alone does not convey.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the specific resource (monthly EDF due date for a services export invoice) and encodes the actual computation rule (30 days from month-end of invoicing, effective for invoices from 1 October 2026), so an agent knows exactly what is produced. It stops short of naming the closest sibling, export_realisation_deadline, so it doesn't fully disambiguate the two deadline tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'for invoices from 1 October 2026' clause implicitly scopes applicability, which is useful selection context. However, there is no explicit when-to-use/when-not-to-use statement and no routing to the sibling deadline tool, so applicability before October 2026 is left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
8 tool updates
- First observed
about_fxlayer - First observed
export_realisation_deadline - First observed
fetch - First observed
find_purpose_codes - First observed
get_purpose_code - First observed
regulatory_updates - First observed
search - First observed
services_edf_due_date
Related MCP Connectors
UAE Corporate Tax: CT computation, SBR, penalties, free zone test, TP and health-check.
VAT registration, US sales-tax nexus and filing calendars for cross-border sellers
Deterministic cross-border tax engine: PE, GAAR, Indian TP, rule-level lookup. Compiled law, no LLM.
- IndiaCosOAuthcom.indiacos
Indian company, LLP, GST, PAN, director and court-case records for KYB, due diligence and leads
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables access to Indian regulatory data including SEBI orders, RBI circulars, MCA company details, GST verification, and more, designed for fintech and legaltech applications.MIT
- FlicenseNot gradedqualityDmaintenanceEU e-invoicing — UBL/CII conversion to XRechnung and FatturaPA-
- AlicenseAqualityBmaintenanceCSRD Compliance - MCP server providing AI-powered tools and automation by MEOK AI Labs660 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to manage Indian enterprise systems by providing tools for accounting (TallyPrime), invoicing (Zoho Books), and GST compliance (validation, e-invoice generation, and GSTR-2B reconciliation), with dry-run-first writes and an audit trail.1Apache 2.0
Glama MCP Gateway
Add one secure layer between your agents and this server.