Skip to main content
Glama

CukaiMax Malaysian Tax Authority

Server Details

Source-linked Malaysian individual and sole-proprietor tax guidance for AI agents.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
jakzaizzat/cukaimax-agent
GitHub Stars
0
Server Listing
cukaimax-tax-authority

TDQS

A4/5.0

Scored across 5 tools

Disambiguation5/5

Each tool targets a distinct action: checking readiness, fetching release details, listing releases, preparing a draft, and searching rules. No two tools overlap in purpose, and the form-specific context (Form B vs Form BE) further differentiates them.

Naming Consistency5/5

All tool names follow a consistent lowercase verb_noun pattern (assess_, get_, list_, prepare_, search_). The style is uniform and predictable, making it easy to infer the action from the name.

Tool Count5/5

With 5 tools, the server is well-scoped for its purpose. It covers discovery, search, readiness assessment, and draft preparation without being bloated or too sparse.

Completeness4/5

The tool set covers the main workflows for Form BE and Form B preparation, but there is a slight asymmetry: readiness is only for Form B, and draft preparation only for Form BE. Submission and data storage are intentionally excluded, so the surface is coherent but not fully symmetric.

Available Tools

5 tools
assess_form_b_2025_readinessAssess Form B 2025 preparation readinessA
Read-onlyIdempotent
Inspect

Check whether the source records, finalised accounts, official worksheets, and conditional schedules needed for manual Form B preparation are ready. This does not calculate or submit Form B.

ParametersJSON Schema
NameRequiredDescriptionDefault
auditNo
taxYearNo
recordsKeptYes
assessmentTypeYes
incentiveClaimNo
carriesOnBusinessYes
partnershipIncomeNo
residentIndividualYes
businessLossClaimedNo
businessAccountsReadyYes
incentiveApprovalReadyNo
taxPaymentRecordsReadyYes
capitalAllowanceClaimedNo
businessComputationReadyYes
businessLossScheduleReadyNo
partnershipStatementReadyNo
foreignIncomeScheduleReadyNo
personalReliefEvidenceReadyYes
capitalAllowanceScheduleReadyNo
assessmentIssuedInTaxpayerNameNo
foreignIncomeReceivedInMalaysiaNo

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already establish readOnly, idempotent, non-destructive behavior. The description adds value by clarifying that this is a readiness check only and explicitly excludes calculation and submission, which is a meaningful behavioral boundary beyond the annotations. It does not describe the output shape, but the safety profile is well covered.

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

Conciseness5/5

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

The description is two sentences with no filler. It front-loads the core purpose, lists the relevant record types, and closes with an important exclusion. Every sentence earns its place.

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

Completeness2/5

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

Given the tool has 21 parameters, 8 required booleans, a nested audit object, and no output schema, the description is too thin. It does not explain what the returned readiness result looks like, how required parameters interact, or what conditional schedule dependencies exist, so an agent would still need to infer much of the calling contract.

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

Parameters2/5

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

The input schema has 21 parameters with 0% description coverage, and the description does not compensate. It only refers broadly to 'source records, finalised accounts, official worksheets, and conditional schedules,' leaving key parameters like assessmentType, partnershipIncome, foreignIncomeReceivedInMalaysia, and the various schedule-ready booleans unexplained.

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?

The description uses a specific verb ('Check whether...are ready') and identifies concrete resources: source records, finalised accounts, official worksheets, and conditional schedules. It further distinguishes itself from preparation/calculation/submission tools, especially the sibling prepare_be_2025_draft.

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?

The context is clear: this tool is for assessing readiness before manual Form B preparation. It explicitly states what it does not do ('does not calculate or submit Form B'), providing a useful when-not signal, though it does not name sibling alternatives or explicitly sequence it before prepare_be_2025_draft.

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

get_tax_authority_releaseGet Malaysian tax authority releaseB
Read-onlyIdempotent
Inspect

Return a supported Form BE or Form B release, its official sources, validation result, review status, and known limitations.

ParametersJSON Schema
NameRequiredDescriptionDefault
auditNo
taxYearNo
formTypeNoBE

TDQS

B3/5.0
Behavior3/5

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

The annotations already communicate read-only, idempotent, non-destructive behavior, so less description is needed. The phrase 'supported' adds a hint of availability filtering and the response contents are useful, but the description does not disclose error cases, operational constraints, or required auth context.

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

Conciseness5/5

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

One sentence with no filler, front-loaded with the core action and resource, then a compact enumeration of return contents. Every word earns its place.

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

Completeness2/5

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

With no output schema and a nested audit parameter, the description is too thin. It does not clarify the taxYear values, the meaning of 'supported,' the audit fields, or how to choose among the sibling tools, leaving a nontrivial operation underspecified.

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

Parameters2/5

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

Schema description coverage is 0%, so the description needs to compensate. It mentions Form BE or Form B, which maps to formType, but it does not explain the taxYear parameter, the audit object, or how they affect the release being returned.

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

Purpose4/5

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

The description uses a specific verb, 'Return,' and names the resource as a supported Form BE or Form B release, while also listing what is included: official sources, validation result, review status, and known limitations. It is clear on its own, but it does not explicitly contrast itself with sibling list/search tools.

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

Usage Guidelines2/5

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

No usage guidance is provided. The description does not say when to use this tool instead of list_tax_authority_releases, search_tax_authority, or the preparation/assessment siblings, and it lacks any prerequisites, exclusions, or selection criteria.

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

list_tax_authority_releasesList Malaysian tax authority releasesA
Read-onlyIdempotent
Inspect

Discover supported years, forms, versions, statuses, capabilities, and limitations before selecting a release.

ParametersJSON Schema
NameRequiredDescriptionDefault
auditNo

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already convey that this is a safe, read-only, idempotent operation, so the description does not need to repeat those facts. It adds value by disclosing what the tool reveals: supported years, forms, versions, statuses, capabilities, and limitations. It does not mention pagination or exact response shape, but that is secondary for a discovery tool.

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

Conciseness5/5

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

A single sentence, front-loaded with the tool's purpose and ending with the concrete dimensions the agent can discover. Every phrase earns its place and there is no redundant wording.

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

Completeness4/5

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

For a read-only listing/discovery tool with strong annotations and only one optional audit parameter, the description gives the agent enough context to call it at the right time and understand what can be learned. It does not detail the return structure, but given the explicit list of discovery dimensions, the omission is acceptable.

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

Parameters1/5

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

The only parameter, audit, is an optional nested object with runId, sequence, and previousEventId, and schema description coverage is 0%. The description does not explain this parameter at all, leaving the agent without guidance beyond raw field names and JSON structure. Since schema coverage is low and the description fails to compensate, this dimension is poorly served.

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

Purpose4/5

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

The description uses a clear discovery-oriented verb and names the resource—tax authority releases—and its purpose: to learn supported years, forms, versions, statuses, capabilities, and limitations before selecting a release. It distinguishes itself from fetch-style siblings like get_tax_authority_release by framing this as the pre-selection discovery step, though it does not explicitly name alternatives.

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?

The description gives a clear context for use: call this tool before selecting a release, so the agent can understand available options and constraints. It does not explicitly name sibling tools or state when not to use it, so it falls just short of full alternative-routing guidance.

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

prepare_be_2025_draftPrepare Form BE 2025 draftA
Read-onlyIdempotent
Inspect

Compile reviewed taxpayer inputs and a deterministic TaxBrain relief evaluation into source-linked Form BE fields. This tool never stores data or submits to MyTax, and output remains review-gated.

ParametersJSON Schema
NameRequiredDescriptionDefault
auditNo
incomeYes
creditsNo
rebatesNo
taxYearNo
paymentsNo
donationsNo
inputBlockersNo
assessmentTypeYesForm BE A6 assessment-type code selected by the taxpayer
reliefEvaluationYes
assessmentIssuedInTaxpayerNameNoRequired for A6 code 1 or 2; true only when the joint assessment is issued in this taxpayer’s name

TDQS

A4.2/5.0
Behavior5/5

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

The description adds valuable behavioral facts beyond the annotations: 'never stores data or submits to MyTax', 'output remains review-gated', and 'source-linked'. These details align with readOnlyHint=true, idempotentHint=true, and destructiveHint=false, with no contradiction.

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

Conciseness5/5

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

The description is two concise sentences with the core action front-loaded and the safety/review constraints stated immediately after. No filler or redundant information.

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

Completeness3/5

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

Given 11 parameters, nested objects, no output schema, and low schema coverage, the description covers the tool's purpose and constraints but leaves out guidance on how to structure the inputs or what the returned draft will contain. It is adequate for selection but not fully complete for invocation.

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

Parameters2/5

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

Schema description coverage is low at 18%, so the description must compensate for undocumented parameters, but it only generically references 'taxpayer inputs' and 'relief evaluation'. It does not explain required fields like assessmentType or income, or clarify the meaning of the many nested objects.

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?

The description uses the specific verb 'Compile' and names the resource 'Form BE fields', with clear inputs ('reviewed taxpayer inputs and a deterministic TaxBrain relief evaluation'). It also distinguishes itself from the sibling tools, which are about tax authority releases and readiness assessment, by focusing on draft preparation.

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?

The description clearly implies the tool should be used after inputs have been reviewed and after a deterministic TaxBrain relief evaluation exists. It does not provide explicit exclusions or name alternatives, but the context signals and sibling list make the intended usage reasonably clear.

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

search_tax_authoritySearch Malaysian tax rulesA
Read-onlyIdempotent
Inspect

Search cited Form BE or Form B rules by topic, field ID, rule ID, or TaxBrain category. Returns official source records with every match.

ParametersJSON Schema
NameRequiredDescriptionDefault
auditNo
queryYesTax topic, Form BE field, or TaxBrain category
taxYearNo
formTypeNoBE

TDQS

A4/5.0
Behavior4/5

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

Annotations already reveal readOnly, idempotent, and non-destructive behavior, so the description only needs to add context beyond that. It does so by noting the tool 'Returns official source records with every match', which clarifies result completeness and source authority. It does not contradict 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.

Conciseness5/5

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

Two compact sentences pack in the action, resource, search dimensions, and return behavior with no filler. The key scoping information is front-loaded and every clause adds value.

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

Completeness4/5

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

For a read-only search tool, the description covers scope, search inputs, and return shape ('official source records with every match'). It lacks explicit guidance on taxYear semantics and the internal audit parameter, but those are partially addressed by schema defaults and the tool's nature. Overall it is adequate for successful invocation without being exhaustive.

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

Parameters3/5

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

Schema description coverage is only 25%, so the description carries significant parameter-documentation responsibility. It enriches the query semantics by mentioning field ID and rule ID, and it covers formType via 'Form BE or Form B', but taxYear and audit are not explained in the description. This is a partial, not complete, compensation for the low schema coverage.

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?

The description opens with a specific verb ('Search'), names the resource ('cited Form BE or Form B rules'), and enumerates search dimensions ('topic, field ID, rule ID, or TaxBrain category'). This clearly separates it from sibling tools like list_tax_authority_releases or prepare_be_2025_draft.

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

Usage Guidelines3/5

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

The description implies when to use the tool by defining it as a search operation, but it does not explicitly state when to choose this over sibling tools, nor does it name alternatives. With siblings like list_tax_authority_releases and get_tax_authority_release, some implicit differentiation exists, but no explicit usage boundary is provided.

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.

  1. 5 tool updates
    • First observedassess_form_b_2025_readiness
    • First observedget_tax_authority_release
    • First observedlist_tax_authority_releases
    • First observedprepare_be_2025_draft
    • First observedsearch_tax_authority

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    A
    maintenance
    Open-source, accountant-verified tax computation skills for AI agents. 261+ skills across 172+ jurisdictions covering income tax, VAT/GST, payroll, corporate tax, crypto, and cross-border planning. Every skill is verified section-by-section by licensed CPAs and chartered accountants. 3 tools (list_skills, get_skill, get_skill_sections) and 1 prompt (skill-review).
    3
    391
    AGPL 3.0
  • F
    license
    Not graded
    quality
    B
    maintenance
    Provides AI agents with verified Vietnamese tax and legal retrieval capabilities, including searching legal documents, fetching document details, evaluating effective tax rules at a specified date, and tracking recent legal updates.
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server that connects AI agents to 34,500+ Australian Taxation Office documents, providing cited answers, tax deduction discovery, depreciation scheduling, BAS checklists, and audit risk assessment through 13 specialized tools.
    363 npm
    10
    AGPL 3.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    AI2Fin's free Tax MCP server connects any assistant or agent — Claude, ChatGPT, Cursor, custom builds — to live tax data: GST and VAT rates, income tax, company tax and capital gains across all the countries. Every answer cites the national tax authority with a verified date. No login, no API key, nothing stored. Explore for fun facts alongside all the verified rates.
    -
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.