Heffl Free Tools
by heffl.com · remote · no sign-in to list tools · v1.1.0 · published by com.heffl
Free email verification, business calculators, UAE estimates and drafts. No API key.
15 tools: 14 change things and 1 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things14Claude Code: ask: see these tools
- Only reads1Claude Code: allow: see these tools
5 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http free-tools https://api.heffl.com/api/public-tools/mcpFindings
Matches of fixed checks, with the text they matched.
The server marks "coaching_agreement" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "generate": a word for a change.
The server marks "retainer_agreement" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "generate": a word for a change.
The server marks "quotation_generate" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "quotation_generate" says "generate": a word for a change.
- Warnsow_generate
The server marks "sow_generate" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "sow_generate" says "generate": a word for a change.
The server marks "whatsapp_generate" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "whatsapp_generate" says "generate": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
15 tools
Changes things 14Claude Code: ask
agency_pricingCalculate project price from labor, overhead and risk buffer.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate project price from labor, overhead and risk buffer. margin is percentage of selling price; overhead and riskBuffer are percentage additions. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Agency pricing and profitability
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
coaching_agreementGenerate the website's coaching agreement as plain text.1 finding
Why it is in this group
- The description's first verb is "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "coaching_agreement" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate the website's coaching agreement as plain text. Missing text fields use placeholders. Draft only; legal review may be needed. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Coaching agreement template
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
email_verifyCheck one email's syntax, mail routing, disposable/free-provider/role flags, and SMTP recipient acceptance.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Check one email's syntax, mail routing, disposable/free-provider/role flags, and SMTP recipient acceptance. Sends no email. DNS alone does not verify a mailbox. unknown means inconclusive or mailbox not checked; likely_deliverable is evidence, not a delivery guarantee. No login or API key required. Rate limited.
Annotations the server declares
- title: Verify an email address
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
freelance_rateCalculate sustainable rates.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate sustainable rates. margin is a percentage buffer added to annual income plus overhead, matching the website. All money must use the same currency. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Freelance hourly and day rates
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
photography_pricingCalculate session price, costs, profit and per-photo price.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Calculate session price, costs, profit and per-photo price. Margin is a percentage of selling price; currency-neutral, no conversion. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Photography pricing
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
quotation_generateGenerate quotation JSON and plain-text draft with percentage discounts per item and tax on discounted amounts.1 finding
Why it is in this group
- The name "quotation_generate" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "quotation_generate" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "quotation_generate" says "generate": a word for a change.
Description, as the server wrote it Generate quotation JSON and plain-text draft with percentage discounts per item and tax on discounted amounts. Does not save, send, or render PDF; website provides visual export. Currency is a label, no FX conversion. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Quotation document data
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
retainer_agreementGenerate the website's monthly retainer agreement as plain text.1 finding
Why it is in this group
- The description's first verb is "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "retainer_agreement" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The description's first verb is "generate": a word for a change.
Description, as the server wrote it Generate the website's monthly retainer agreement as plain text. Missing text fields use placeholders. Draft only; legal review may be needed. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Retainer agreement template
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
risk_assessmentScore user-supplied risks using likelihood × impact (1–5).No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Score user-supplied risks using likelihood × impact (1–5). Low <=6, medium <=14, high >=15. Does not infer likelihood or impact. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Project risk assessment
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
sow_generateGenerate a scope-of-work draft using the existing Heffl DeepSeek service.1 finding
Why it is in this group
- The name "sow_generate" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "sow_generate" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "sow_generate" says "generate": a word for a change.
Description, as the server wrote it Generate a scope-of-work draft using the existing Heffl DeepSeek service. Returns untrusted HTML, not legal advice. Drafts may infer details; verify before use. Provider configuration required server-side. Free, no authentication required. Rate limited.
Annotations the server declares
- title: AI scope of work draft
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
uae_corporate_taxEstimate standard UAE corporate tax on already-adjusted taxable income in AED: 0% up to 375000 and 9% above.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Estimate standard UAE corporate tax on already-adjusted taxable income in AED: 0% up to 375000 and 9% above. Does not determine deductions, free-zone rules, relief or multinational minimum tax. Free, no authentication required. Rate limited.
Annotations the server declares
- title: UAE corporate tax estimate
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
uae_gratuityAED estimate for covered private-sector full-time foreign workers using monthly basic salary, at least one year service, 21 days for first five years then 30; capped at 24 months b…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it AED estimate for covered private-sector full-time foreign workers using monthly basic salary, at least one year service, 21 days for first five years then 30; capped at 24 months basic salary. Assumes continuous service without unpaid leave; no deductions or alternative schemes assessed. Free, no authentication required. Rate limited.
Annotations the server declares
- title: UAE end-of-service gratuity estimate
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
uae_real_estate_vatEstimate VAT on ordinary commercial/residential property in AED, not transfer fees.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Estimate VAT on ordinary commercial/residential property in AED, not transfer fees. Residential zero-rating requires FIRST supply within three years of completion; other residential supply exempt. No mixed-use or specialist properties. Free, no authentication required. Rate limited.
Annotations the server declares
- title: UAE property VAT estimate
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
uae_vatEstimate standard 5% UAE VAT in AED, inclusive or exclusive.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Estimate standard 5% UAE VAT in AED, inclusive or exclusive. Does not classify exempt or zero-rated supplies. Free, no authentication required. Rate limited.
Annotations the server declares
- title: UAE VAT estimate
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
whatsapp_generateGenerate a business WhatsApp message draft using Heffl's DeepSeek service.1 finding
Why it is in this group
- The name "whatsapp_generate" says "generate": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "whatsapp_generate" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":false,"openWorldHint":true}; The name "whatsapp_generate" says "generate": a word for a change.
Description, as the server wrote it Generate a business WhatsApp message draft using Heffl's DeepSeek service. Only drafts text; never sends messages. Provider configuration required server-side. Free, no authentication required. Rate limited.
Annotations the server declares
- title: AI WhatsApp message draft
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
Only reads 1Claude Code: allow
business_daysCount weekdays between dates or add/subtract days.No findings
Why it is in this group
- The description's first verb is "count": a word for reading.
Description, as the server wrote it Count weekdays between dates or add/subtract days. UTC dates, Monday–Friday; start included and end excluded unless includeEnd. Offset excludes start. Public holidays are not excluded. Free, no authentication required. Rate limited.
Annotations the server declares
- title: Business days and date offsets
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.1.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http free-tools https://api.heffl.com/api/public-tools/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__free-tools__business_days"
],
"ask": [
"mcp__free-tools__email_verify",
"mcp__free-tools__photography_pricing",
"mcp__free-tools__freelance_rate",
"mcp__free-tools__agency_pricing",
"mcp__free-tools__risk_assessment",
"mcp__free-tools__coaching_agreement",
"mcp__free-tools__retainer_agreement",
"mcp__free-tools__uae_vat",
"mcp__free-tools__uae_corporate_tax",
"mcp__free-tools__uae_gratuity",
"mcp__free-tools__uae_real_estate_vat",
"mcp__free-tools__quotation_generate",
"mcp__free-tools__sow_generate",
"mcp__free-tools__whatsapp_generate"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as free-tools. Review it before you use it.