GlanceDesk
Checked calculators for money, tax, crypto, engineering and compliance, each with formula and source
¿Debería usar esto?
Calidad y seguridad
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"tools": {
"url": "https://glancedesk.com/mcp"
}
}
}Puntos de conexión remotos
https://glancedesk.com/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (8)
🟢search_tools(query, product, limit)
Find GlanceDesk calculators and compliance checks by topic, for example "UAE gratuity", "Pakistan salary tax", "loan EMI", "e-invoicing Saudi", "crypto liquidation price", "concrete mix cement bags". Returns each tool's slug, title, one-line description, page URL and which tool runs it.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 200,
"description": "Words describing what the person wants to work out. Empty lists every tool."
},
"product": {
"type": "string",
"enum": [
"any",
"calculators",
"jurisdiction",
"crypto",
"compute"
],
"description": "calculators = GlanceDesk Calculators (money, tax, loans, conversions); jurisdiction = GlanceDesk Jurisdiction (compliance, labour law); crypto = GlanceDesk Crypto (futures, spot, staking, fees, crypto units; user-typed prices, not investment advice); compute = GlanceDesk Compute (engineering estimates for civil, electrical, mechanical and HVAC work; not a design check). Default any."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"description": "Most results to return (default 10)."
}
},
"additionalProperties": false
}🟢get_tool(slug)
Get everything about one GlanceDesk tool before running it: its inputs (types, units, options, min/max) as JSON Schema, outputs, formula or legal rule, official sources with URLs, last-checked date, disclaimer, page URL and a worked example computed by the tool itself.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Slug from search_tools, e.g. \"uae-gratuity-calculator\"."
}
},
"required": [
"slug"
],
"additionalProperties": false
}🟢run_calculator(slug, inputs)
Run one GlanceDesk Calculators, GlanceDesk Crypto or GlanceDesk Compute calculator with the person's values and get the tested answer with units, a one-sentence explanation, the formula, official sources, last-checked date, page URL and disclaimer. Invalid or missing values return the calculator's own error message; nothing is guessed or filled in.
Esquema de entrada
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"enum": [
"ac-size-calculator",
"age-calculator",
"apy-calculator",
"area-converter",
"battery-backup-time-calculator",
"binance-margin-level-calculator",
"bitcoin-block-reward-calculator",
"bitcoin-difficulty-adjustment-calculator",
"bitcoin-mining-profitability-calculator",
"bitcoin-transaction-fee-calculator",
"bitcoin-utxo-consolidation-calculator",
"bmi-calculator",
"break-even-calculator",
"brick-calculator",
"bybit-liquidation-price-calculator",
"coin-margined-futures-calculator",
"compound-interest-calculator",
"concrete-mix-calculator",
"copy-trading-profit-share-calculator",
"cross-margin-liquidation-calculator",
"crypto-address-checker",
"crypto-arbitrage-spread-calculator",
"crypto-break-even-calculator",
"crypto-cost-basis-calculator",
"crypto-dca-calculator",
"crypto-liquidation-price-calculator",
"crypto-percentage-change-calculator",
"crypto-pnl-calculator",
"crypto-portfolio-rebalance-calculator",
"crypto-position-size-calculator",
"crypto-roi-cagr-calculator",
"currency-converter",
"data-storage-converter",
"date-difference-calculator",
"decibel-converter",
"defi-health-factor-calculator",
"discount-calculator",
"drawdown-recovery-calculator",
"dual-investment-calculator",
"electricity-cost-calculator",
"eth-gas-fee-calculator",
"ethereum-unit-converter",
"exchange-liquidation-price-calculator",
"fiber-optic-loss-budget-calculator",
"fitrana-fidya-calculator",
"free-space-path-loss-calculator",
"fuel-cost-calculator",
"fuel-economy-converter",
"funding-fee-calculator",
"futures-average-entry-price-calculator",
"futures-basis-calculator",
"gold-value-calculator",
"gpa-calculator",
"grid-trading-calculator",
"hyperliquid-liquidation-price-calculator",
"impermanent-loss-calculator",
"investment-growth-calculator",
"islamic-inheritance-calculator",
"kva-kw-amps-calculator",
"length-converter",
"leverage-margin-calculator",
"loan-amortization-schedule",
"loan-emi-calculator",
"margin-tier-calculator",
"market-cap-price-calculator",
"marla-kanal-converter",
"mortgage-calculator",
"ohms-law-calculator",
"options-payoff-calculator",
"p2p-usdt-premium-calculator",
"pakistan-electricity-bill-calculator",
"pakistan-federal-pay-calculator",
"pakistan-freelancer-tax",
"pakistan-net-to-gross-salary",
"pakistan-property-tax-calculator",
"pakistan-salary-tax-calculator",
"pendle-fixed-yield-calculator",
"percentage-calculator",
"power-converter",
"pressure-converter",
"profit-margin-calculator",
"pump-power-calculator",
"radio-link-budget-calculator",
"rebar-weight-calculator",
"remittance-true-cost-checker",
"risk-reward-calculator",
"satoshi-converter",
"saudi-end-of-service-calculator",
"shannon-channel-capacity-calculator",
"simple-interest-calculator",
"solana-transaction-fee-calculator",
"solana-unit-converter",
"speed-converter",
"spot-crypto-profit-calculator",
"spot-take-profit-ladder-calculator",
"staking-rewards-calculator",
"target-price-calculator",
"temperature-converter",
"tip-calculator",
"token-vesting-calculator",
"trading-fee-calculator",
"tron-usdt-transfer-fee-calculator",
"uae-gratuity-calculator",
"uniswap-v3-liquidity-calculator",
"vat-calculator",
"voltage-drop-calculator",
"volume-converter",
"water-tank-capacity-calculator",
"weight-converter",
"zakat-calculator"
],
"description": "Calculator slug (see search_tools / get_tool)."
},
"inputs": {
"type": "object",
"description": "Field id to value, as listed by get_tool. Numbers may be given as numbers or as text like \"10,000\"; dates as YYYY-MM-DD; options by their value.",
"additionalProperties": {
"type": [
"number",
"string"
]
}
}
},
"required": [
"slug",
"inputs"
],
"additionalProperties": false
}🟢gulf_final_settlement(country, first_day, last_day, basic_monthly_wage, total_monthly_wage, ...)
Work out what a private-sector worker is owed when a job ends in Saudi Arabia, the UAE or Qatar: end-of-service award or gratuity, unpaid wages, unused leave and overtime, each line with its labour-law article, plus a claim summary. Uses GlanceDesk Jurisdiction's tested engine.
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"type": "string",
"enum": [
"sa",
"ae",
"qa"
],
"description": "sa = Saudi Arabia (Labor Law, Royal Decree M/51), ae = United Arab Emirates (Federal Decree-Law 33 of 2021, private sector), qa = Qatar (Labour Law, Law No. 14 of 2004)."
},
"first_day": {
"type": "string",
"format": "date",
"description": "First day of work, YYYY-MM-DD."
},
"last_day": {
"type": "string",
"format": "date",
"description": "Last day of work, YYYY-MM-DD. Both days count as service."
},
"basic_monthly_wage": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Last basic monthly wage, without allowances (SAR, AED or QAR). The UAE and Qatar gratuity and leave pay use this."
},
"total_monthly_wage": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Last total monthly wage: basic plus contractual allowances. The Saudi award and leave pay use this. Must be at least the basic wage."
},
"how_it_ended": {
"type": "string",
"enum": [
"employer",
"expired",
"resign",
"breach",
"exception",
"misconduct"
],
"description": "employer = the employer ended the contract (not for misconduct); expired = fixed-term contract ended, not renewed; resign = the worker resigned; breach = the worker left because the employer broke the contract or law (Saudi Art. 81, UAE Art. 45); exception = Saudi only: force majeure, or a female worker leaving within 6 months of marriage or 3 months of giving birth; misconduct = dismissed without notice for a reason the law lists (Saudi Art. 80, UAE Art. 44, Qatar Art. 61)."
},
"unpaid_wage_months": {
"type": "number",
"minimum": 0,
"description": "Optional. Months of wages not paid (decimals for part months)."
},
"unused_leave_days": {
"type": "number",
"minimum": 0,
"description": "Optional. Unused annual leave days earned, including this year's share."
},
"overtime_hours": {
"type": "number",
"minimum": 0,
"description": "Optional. Unpaid overtime hours."
},
"normal_hours_per_day": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 24,
"description": "Needed only with overtime: normal working hours per day in the contract."
},
"night_overtime_hours": {
"type": "number",
"minimum": 0,
"description": "UAE or Qatar, optional: how many of the overtime hours were at night (UAE 10 pm to 4 am, Qatar 9 pm to 3 am; not for shift workers)."
},
"unpaid_absence_days": {
"type": "integer",
"minimum": 0,
"description": "UAE only, optional: days of unpaid absence (not counted as service)."
}
},
"required": [
"country",
"first_day",
"last_day",
"basic_monthly_wage",
"total_monthly_wage",
"how_it_ended"
],
"additionalProperties": false
}🟢einvoicing_check(country, resident, vat_registered, revenue_by_year, conducts_business_in_uae, ...)
Check whether e-invoicing applies to a business and its deadline: Saudi ZATCA Phase 1 and Phase 2 waves, UAE e-invoicing phases (Ministerial Decisions 243 and 244 of 2025), Pakistan FBR electronic invoicing (S.R.O. 1852(I)/2025). Every line cites its legal reference and official source; unconfirmed facts are marked "Being verified" and not used.
Esquema de entrada
{
"type": "object",
"properties": {
"country": {
"type": "string",
"enum": [
"sa",
"ae",
"pk"
],
"description": "sa = Saudi Arabia (ZATCA), ae = United Arab Emirates (MoF/FTA), pk = Pakistan (FBR)."
},
"resident": {
"type": "boolean",
"description": "Saudi Arabia: is the business resident in Saudi Arabia?"
},
"vat_registered": {
"type": "boolean",
"description": "Saudi Arabia or UAE: is the business registered for VAT there?"
},
"revenue_by_year": {
"type": "object",
"description": "Saudi Arabia: revenue subject to VAT (SAR) for each year the ZATCA waves use: 2022, 2023, 2024, 2025. Leave a year out if not trading.",
"properties": {
"2022": {
"type": "number",
"minimum": 0
},
"2023": {
"type": "number",
"minimum": 0
},
"2024": {
"type": "number",
"minimum": 0
},
"2025": {
"type": "number",
"minimum": 0
}
},
"additionalProperties": false
},
"conducts_business_in_uae": {
"type": "boolean",
"description": "UAE: does the person conduct business in the UAE?"
},
"entity_type": {
"type": "string",
"enum": [
"business",
"gov"
],
"description": "UAE: business, or gov = government entity."
},
"revenue": {
"type": "number",
"minimum": 0,
"description": "UAE: gross revenue in the most recent accounting period (AED)."
},
"customers": {
"type": "array",
"items": {
"type": "string",
"enum": [
"b2b",
"b2g",
"b2c"
]
},
"uniqueItems": true,
"description": "Who you invoice: b2b = businesses, b2g = government, b2c = consumers."
},
"sales_tax_registered": {
"type": "boolean",
"description": "Pakistan: registered for sales tax with the FBR?"
},
"business_type": {
"type": "string",
"enum": [
"public",
"company",
"individual"
],
"description": "Pakistan: public = public listed company, company = other company, individual = individual or association of persons."
},
"imports_goods": {
"type": "boolean",
"description": "Pakistan: does the business import goods?"
},
"turnover": {
"type": "number",
"minimum": 0,
"description": "Pakistan: turnover declared in sales tax returns for the last twelve months (PKR)."
}
},
"required": [
"country"
],
"additionalProperties": false
}🟢breach_notification_deadline(aware, role, scope, time_zone, utc_offset)
Work out the GDPR / UK GDPR Article 33 deadline for notifying a personal data breach: 72 elapsed hours from becoming aware, given as local time in the person's time zone (IANA zone with daylight saving, or a fixed UTC offset) and in UTC. Returns the deadline, which authority to notify (lead authority, every EU authority where affected people live, or the UK Information Commission), the steps for a controller or processor with their article references, official sources, last-checked date and page link. Uses GlanceDesk Jurisdiction's tested deadline module.
Esquema de entrada
{
"type": "object",
"properties": {
"aware": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}$",
"description": "When the organisation became aware of the personal data breach: local date and time YYYY-MM-DDTHH:MM in time_zone (or utc_offset)."
},
"role": {
"type": "string",
"enum": [
"controller",
"processor"
],
"description": "controller = decides why and how the data is used; processor = handles the data for a client."
},
"scope": {
"type": "array",
"items": {
"type": "string",
"enum": [
"eu_main",
"eu_none",
"uk"
]
},
"uniqueItems": true,
"description": "Which apply (any combination): eu_main = EU GDPR, main establishment in the EU; eu_none = EU GDPR, no establishment in the EU (serves EU users from outside); uk = UK GDPR, affected people in the UK. Empty or left out = all three. Decides which authority is notified."
},
"time_zone": {
"type": "string",
"maxLength": 64,
"description": "IANA time zone of the person, e.g. \"Europe/London\", \"Asia/Karachi\", \"America/Los_Angeles\". Daylight saving time is applied. Give this or utc_offset; with neither, times are UTC."
},
"utc_offset": {
"type": "string",
"pattern": "^[+-]\\d{2}:\\d{2}$",
"description": "Fixed offset from UTC instead of time_zone, e.g. \"+05:00\" or \"-04:00\" (no daylight-saving changes). Default \"+00:00\" (UTC)."
}
},
"required": [
"aware",
"role"
],
"additionalProperties": false
}🟢data_request_deadline(law, request_type, received, time_zone, utc_offset)
Work out the deadline to answer a data subject or consumer request: EU GDPR and UK GDPR Article 12(3) (one month, extendable by two further months; UK Data (Use and Access) Act 2025 changes), or California CCPA/CPRA (confirm within 10 business days, respond within 45 days with one 45-day extension; opt-out or limit requests within 15 business days). Returns each date with its legal reference, the steps, official sources, last-checked date and page link. Uses GlanceDesk Jurisdiction's tested deadline module.
Esquema de entrada
{
"type": "object",
"properties": {
"law": {
"type": "string",
"enum": [
"eu",
"uk",
"ccpa"
],
"description": "eu = EU GDPR, uk = UK GDPR, ccpa = California CCPA/CPRA."
},
"request_type": {
"type": "string",
"enum": [
"know",
"optout"
],
"description": "CCPA only (required for ccpa): know = know/access, delete or correct; optout = opt out of sale/sharing, or limit use of sensitive data. Not used for eu or uk."
},
"received": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Local date the request was received, YYYY-MM-DD."
},
"time_zone": {
"type": "string",
"maxLength": 64,
"description": "IANA time zone of the person, e.g. \"Europe/London\", \"Asia/Karachi\", \"America/Los_Angeles\". Daylight saving time is applied. Give this or utc_offset; with neither, times are UTC."
},
"utc_offset": {
"type": "string",
"pattern": "^[+-]\\d{2}:\\d{2}$",
"description": "Fixed offset from UTC instead of time_zone, e.g. \"+05:00\" or \"-04:00\" (no daylight-saving changes). Default \"+00:00\" (UTC)."
}
},
"required": [
"law",
"received"
],
"additionalProperties": false
}🟢business_filing_deadline(filing, taxpayer_type, tax_year_end, tax_payable, quarter_end_month, ...)
Work out a business tax filing deadline and estimate the late penalty: Pakistan income tax return (Income Tax Ordinance s.118 with official FBR extensions; s.182 penalty) and quarterly withholding statements (s.165), UAE Corporate Tax return and payment (9 months after the tax period; registration deadline under FTA Decision 3/2024; Cabinet Decision 75/2023 penalties), UAE VAT return and payment (28th day after the tax period; Cabinet Decision 40/2017 as amended by Cabinet Decision 129/2025), Saudi VAT tax period and due date (Implementing Regulations Arts. 58, 59, 62, 74; VAT Law penalties). Every line cites its legal reference and official source; unconfirmed facts are marked "Being verified" and not used. Uses GlanceDesk Jurisdiction's tested filing module.
Esquema de entrada
{
"type": "object",
"properties": {
"filing": {
"type": "string",
"enum": [
"pk_income_tax_return",
"pk_withholding_statement",
"uae_corporate_tax",
"uae_vat",
"saudi_vat"
],
"description": "Which deadline: pk_income_tax_return = Pakistan income tax return (Income Tax Ordinance s.118, penalty s.182); pk_withholding_statement = Pakistan quarterly withholding statement (s.165); uae_corporate_tax = UAE Corporate Tax return and payment (Federal Decree-Law 47/2022) with optional registration deadline; uae_vat = UAE VAT return and payment (VAT Executive Regulation Art. 64); saudi_vat = Saudi VAT tax period, return and payment (VAT Implementing Regulations Arts. 58, 59, 62)."
},
"taxpayer_type": {
"type": "string",
"enum": [
"company",
"salaried",
"other"
],
"description": "pk_income_tax_return: company; salaried = individual with 75% or more of income from salary; other = other individual or association of persons (AOP)."
},
"tax_year_end": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "pk_income_tax_return: last day of the tax year (normal tax year ends 30 June, e.g. 2026-06-30 = tax year 2026; special tax years end on another month end). Date as YYYY-MM-DD."
},
"tax_payable": {
"type": "number",
"minimum": 0,
"description": "pk_income_tax_return: tax payable for the year in PKR (the higher of assessed tax and the last duly filed year's tax). Needed with filed to estimate the late-filing penalty."
},
"quarter_end_month": {
"type": "integer",
"enum": [
3,
6,
9,
12
],
"description": "pk_withholding_statement: month the quarter ends (3 = March, 6 = June, 9 = September, 12 = December)."
},
"year": {
"type": "integer",
"minimum": 2021,
"maximum": 2100,
"description": "pk_withholding_statement: calendar year the quarter ends in, e.g. 2026."
},
"withheld_tax_paid_on_time": {
"type": "string",
"enum": [
"yes",
"no",
"nil"
],
"description": "pk_withholding_statement, with filed: yes = the tax withheld or collected was paid by its due date; no = it was not; nil = no tax was required to be withheld or collected."
},
"period_end": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "uae_corporate_tax, uae_vat, saudi_vat: last day of the tax period (Saudi: a month end). Date as YYYY-MM-DD."
},
"incorporated": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "uae_corporate_tax, optional: date the business was set up (checks the FTA Decision 7/2024 postponement for first tax periods ending on or before 29 February 2024). Date as YYYY-MM-DD."
},
"registration_type": {
"type": "string",
"enum": [
"res_new",
"res_old",
"res_foreign",
"nr_pe",
"nr_nexus",
"np_res",
"np_nr"
],
"description": "uae_corporate_tax, optional (gives the registration deadline, FTA Decision 3/2024): res_new = resident company set up on or after 1 March 2024; res_old = resident company set up before 1 March 2024 (registration_start = issue date of its earliest licence); res_foreign = foreign company managed and controlled in the UAE (registration_start = end of its financial year); nr_pe = non-resident with a permanent establishment (registration_start = date the PE came into existence); nr_nexus = non-resident with a nexus (date the nexus was established); np_res = resident individual doing business with turnover over AED 1 million (a date in the calendar year the threshold was passed); np_nr = non-resident individual (date the conditions were met)."
},
"registration_start": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "uae_corporate_tax, with registration_type: the date that starts the registration period (see registration_type). Date as YYYY-MM-DD."
},
"repeat_within_24_months": {
"type": "boolean",
"description": "uae_vat, with filed: true if a late return was already penalised in the previous 24 months."
},
"taxable_supplies_12m": {
"type": "number",
"minimum": 0,
"description": "saudi_vat: value of taxable supplies in the last 12 months in SAR (over SAR 40,000,000 = monthly tax period)."
},
"monthly_approved": {
"type": "boolean",
"description": "saudi_vat: true if ZATCA approved or directed a monthly tax period although supplies are not over SAR 40,000,000."
},
"vat_due": {
"type": "number",
"minimum": 0,
"description": "saudi_vat, with filed or paid: VAT due for the period in SAR (to estimate the fines)."
},
"unpaid_tax": {
"type": "number",
"minimum": 0,
"description": "uae_corporate_tax, uae_vat, with paid: tax paid late, in AED."
},
"filed": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Optional: date the return or statement was or will be filed (estimates the late-filing penalty). Date as YYYY-MM-DD."
},
"paid": {
"type": "string",
"format": "date",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Optional: date the tax was or will be paid (uae_corporate_tax, uae_vat with unpaid_tax; saudi_vat with vat_due). Date as YYYY-MM-DD."
}
},
"required": [
"filing"
],
"additionalProperties": false
}Comunidad
Evidencia