# ISS Calculator MCP MCP

> The ISS Calculator MCP handles Service Tax (ISS) compliance. It lets you determine tax rates based on a service type and specific municipality, check if withholding is mandatory, and compute the final tax liability including allowed deductions. This tool ensures your billing calculations meet local financial regulations.

## Overview
- **Category:** finance
- **Price:** Free
- **Tags:** iss, tax, municipality, finance, calculator

## Description

Calculating taxes isn't simple; it depends heavily on where the transaction happens and what services are involved. You shouldn't guess rates or rely on outdated spreadsheets. This MCP handles complex municipal tax rules, ensuring you calculate the Service Tax (ISS) correctly every time. It determines the proper rate for any given service type and location, verifies if withholding is required by law, and then computes the final amount due, factoring in deductions. If your process involves multiple variables—like a gross income amount versus an allowable deduction—this tool makes sure the math is right. Since this MCP lives within Vinkius, you don't have to worry about connecting separate tax services; everything needed for compliant financial calculations is centralized here.

## Tools

### calculate_tax_liability
Computes the final tax amount owed after factoring in gross income, specific service details, and allowable deductions.

### check_withholding_status
Determines if local law mandates that the Service Tax must be withheld when making a payment.

### get_applicable_rate
Retrieves the precise tax rate percentage for a specified service type within any given municipality.

## Prompt Examples

**Prompt:** 
```
What is the tax rate for IT services in Sao Paulo?
```

**Response:** 
```
To find this, you should call `get_applicable_rate` with municipalityName: 'Sao Paulo' and serviceType: 'IT Services'.
```

**Prompt:** 
```
Calculate the tax for a 1000 gross amount cleaning service in Rio de Janeiro with 200 deduction.
```

**Response:** 
```
You can use `calculate_tax_liability` with municipalityName: 'Rio de Janeiro', serviceType: 'Cleaning', grossAmount: 1000, and deductionAmount: 200.
```

**Prompt:** 
```
Is withholding required for construction services in Belo Horizonte?
```

**Response:** 
```
Use the `check_withholding_status` tool with municipalityName: 'Belo Horizonte' and serviceType: 'Construction' to verify this.
```

## Capabilities

### Determine Applicable Tax Rate
Finds the specific service tax percentage required for a given municipality and service type.

### Check Withholding Requirements
Verifies whether local law requires that the tax be withheld at the source of the transaction.

### Compute Final Tax Amount
Calculates the final, compliant tax liability by accounting for gross amounts, deductions, and applicable rates.

## Use Cases

### Processing an Invoice from a New Client
A billing specialist receives a service invoice for Belo Horizonte. They ask their agent to check the tax rate and calculate liability. The agent calls `get_applicable_rate` first, then uses `calculate_tax_liability`, delivering the correct ISS total instantly, preventing an undercharge dispute.

### Verifying Payment Requirements
A finance analyst is setting up a payment for construction services. Before paying out, they query their agent to run `check_withholding_status` for the specific region, confirming if local law requires them to deduct tax upfront.

### Handling Deductions on High-Value Services
A company processes a large IT service payment in Sao Paulo. They tell their agent to run `calculate_tax_liability`, supplying the gross amount and the allowed deduction. The tool returns the exact net tax liability, factoring everything correctly.

### Comparing Tax Rules Across Cities
A compliance officer needs a quick comparison of ISS rates for cleaning services between Rio de Janeiro and São Paulo. They use `get_applicable_rate` twice in sequence to pull two distinct tax percentages, quickly building a report.

## Benefits

- Accuracy: Never guess a rate again. Use `get_applicable_rate` to pull the precise Service Tax percentage from any municipality, eliminating manual lookups and compliance risk.
- Compliance Check: Before finalizing billing, use `check_withholding_status` to instantly confirm if tax must be withheld at source, preventing payment rejection issues.
- Final Calculation: Don't just get a rate; calculate the final amount. The `calculate_tax_liability` tool handles deductions and gross amounts in one step for guaranteed accuracy.
- Jurisdictional Scope: This MCP supports complex geographical rules. It doesn't care if you're billing across state lines, as long as you specify the municipality.
- Workflow Control: You can enforce a strict compliance sequence—checking status first, then rate, then liability—ensuring no step is skipped.

## How It Works

The bottom line is, you feed it your transaction details, and it spits out a legally compliant tax number.

1. First, run a check to see if tax withholding is required for the specified service and location.
2. Next, use the tool to pull the exact tax rate percentage from the municipality database based on the service type.
3. Finally, pass all gathered data (gross amount, deductions, and rates) into the calculation function to get the final liability figure.

## Frequently Asked Questions

**How do I use calculate_tax_liability to find my tax amount?**
Call `calculate_tax_liability` and provide the municipality name, service type, gross amount, and any deduction amounts. It returns the final taxable base and the resulting tax liability.

**What if I don't know the rate for my location? Should I use get_applicable_rate first?**
Yes. Always start by calling `get_applicable_rate`. This ensures you pull the correct percentage, which is mandatory before running any calculation.

**Does check_withholding_status cover all tax rules?**
The `check_withholding_status` tool verifies if withholding is required for a specific service and location. It's the necessary first step to validate compliance before proceeding.

**Can I calculate tax liability without knowing deductions?**
You can, but it’s not recommended. To get the most accurate figure, pass the deduction amount (even if zero) into `calculate_tax_liability` to ensure all factors are considered.

**What happens if I use calculate_tax_liability with an unsupported service type?**
The MCP handles input validation and sends back a clear error message. You'll need to check the required service codes or adjust your inputs before recalculating.

**Is the tax rate retrieved by get_applicable_rate always current with new municipal ordinances?**
The MCP is built using regularly updated databases that reflect major municipal changes. If a rate changed recently, check the documentation for the exact update cycle.

**Do I need to run get_applicable_rate before calling calculate_tax_liability?**
While you can call them separately, confirming the applicable rate first ensures your calculation uses the most accurate tax percentage available in the system.

**Does check_withholding_status require specific credentials or logins for a municipality?**
No. This MCP pulls required withholding information from established public domain rules within Vinkius, so no special client credentials are necessary to run `check_withholding_status`.