com. mart402/ extract
by mart402.com · remote · no sign-in to list tools · v0.2.0 · published by com.mart402
Web extraction, OCR (Japanese-strong), invoice and company data for AI agents. x402, no API key.
35 tools: 2 do something that can't be undone, 29 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone2Claude Code: ask: see these tools
- Changes things29Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http extract https://mart402.com/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnmeal_vision
The server marks "meal_vision" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "analyze": a word for reading.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
35 tools
Can't be undone 2Claude Code: ask
jp_business_daysJapanese holidays, business-day arithmetic, statutory filing deadlines with holiday shift, wareki conversion.No findings
Why it is in this group
- The input addresses people (input.to): what it sends cannot be taken back.
Description, as the server wrote it Japanese holidays, business-day arithmetic, statutory filing deadlines with holiday shift, wareki conversion. $0.003/call. Deterministic, cites primary sources; errors and unverified rules are never billed. Required by mode (default add): add -> from, days; between -> from, to; holidays -> year; deadline -> kind, base_date; wareki -> date.
Annotations the server declares
- title: Jp Business Days
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
pdf_mergeMerge 2-10 PDFs into one, in order.No findings
Why it is in this group
- The name "pdf_merge" says "merge": a word for a change that another call does not undo.
Description, as the server wrote it Merge 2-10 PDFs into one, in order. Deterministic, $0.003.
Annotations the server declares
- title: Pdf Merge
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
Changes things 29Claude Code: ask
document_pipelineOne call: PDF invoice to parse (hallucination-guarded OCR) + field extraction + arithmetic verification (+optional issuer enrich).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.
Description, as the server wrote it One call: PDF invoice to parse (hallucination-guarded OCR) + field extraction + arithmetic verification (+optional issuer enrich). Flat $0.05/document; inputs validated before payment. Choose this when a PDF is an invoice/receipt and you want parse + field extraction + arithmetic verification in one paid call; for text only use parse_document.
Annotations the server declares
- title: Document Pipeline
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
enrich_companyCompany name/domain/URL to a verified profile from primary sources + GLEIF LEI and Japan NTA corporate-number registries.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.
Description, as the server wrote it Company name/domain/URL to a verified profile from primary sources + GLEIF LEI and Japan NTA corporate-number registries. Per-field evidence + confidence, honest nulls; unresolved lookups never charged. $0.03/company. Choose this when you have a company NAME or DOMAIN and need a registry-grounded profile (GLEIF LEI / Japan NTA) with per-field evidence; pass country_hint 'jp' for Japanese companies.
Annotations the server declares
- title: Enrich Company
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
extract_urlExtract a web page to clean Markdown + metadata (auto JS rendering, robots.txt respected).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.
Description, as the server wrote it Extract a web page to clean Markdown + metadata (auto JS rendering, robots.txt respected). $0.005 fast / $0.01 rendered; cached results half price. Choose this when you need a web PAGE as clean Markdown to read yourself; to fill a schema use structured_extract, for a PDF use pdf_info then parse_document.
Annotations the server declares
- title: Extract Url
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_bonus_netBonus net pay: social insurance and withholding tax (official rate table, based on previous month salary).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.
Description, as the server wrote it Bonus net pay: social insurance and withholding tax (official rate table, based on previous month salary). $0.01/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Bonus Net
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_company_profileJapanese company site to a standard profile JSON (name, address, representative, capital, contact).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.
Description, as the server wrote it Japanese company site to a standard profile JSON (name, address, representative, capital, contact). $0.03/site. Choose this when you have the URL of a Japanese company's OWN site and want its standard profile fields read from the page; for name/domain lookups use enrich_company (country_hint: jp).
Annotations the server declares
- title: Jp Company Profile
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_consumption_taxConsumption tax: per-rate invoice rounding, qualified-invoice validation, simplified taxation, 20% special.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.
Description, as the server wrote it Consumption tax: per-rate invoice rounding, qualified-invoice validation, simplified taxation, 20% special. $0.01/call. Deterministic, cites primary sources; errors and unverified rules are never billed. Required by mode (default invoice_totals): invoice_totals -> lines; validate_invoice -> document; simplified -> taxable_sales_excl_yen, category; two_percent -> taxable_sales_excl_yen, taxable_period_start, taxable_period_end.
Annotations the server declares
- title: Jp Consumption Tax
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_crypto_taxJapan crypto-asset tax: realized income under the NTA total-average or moving-average method (sell/spend/exchange as disposals, fees deductible), verified against the official NTA …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.
Description, as the server wrote it Japan crypto-asset tax: realized income under the NTA total-average or moving-average method (sell/spend/exchange as disposals, fees deductible), verified against the official NTA FAQ examples. $0.05/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Crypto Tax
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_dependent_thresholdIncome-wall analysis: tax, social insurance (1.06M/1.30M), spousal and student-dependent walls.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.
Description, as the server wrote it Income-wall analysis: tax, social insurance (1.06M/1.30M), spousal and student-dependent walls. $0.02/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Dependent Threshold
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_mortgageMortgage schedules (level payment/principal), total interest, prepayment effect.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.
Description, as the server wrote it Mortgage schedules (level payment/principal), total interest, prepayment effect. $0.005/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Mortgage
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_overtime_wageOvertime premium pay (Labor Standards Act Art.37, official rounding notice) and Article-36 limit check.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.
Description, as the server wrote it Overtime premium pay (Labor Standards Act Art.37, official rounding notice) and Article-36 limit check. $0.015/call. Deterministic, cites primary sources; errors and unverified rules are never billed. Required by mode (default pay): pay -> monthly_salary_yen, monthly_scheduled_hours, hours; check36 -> monthly_overtime_hours.
Annotations the server declares
- title: Jp Overtime Wage
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_payroll_netAnnual gross salary to net take-home (social insurance + income tax + resident tax).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.
Description, as the server wrote it Annual gross salary to net take-home (social insurance + income tax + resident tax). Exact NTA Beppyo-5 table. $0.02/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Payroll Net
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_payroll_suiteJapan payroll suite: net salary + social insurance + income walls (+bonus) in one call.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.
Description, as the server wrote it Japan payroll suite: net salary + social insurance + income walls (+bonus) in one call. Flat $0.05.
Annotations the server declares
- title: Jp Payroll Suite
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_payslip_auditAudit a Japanese payslip: recompute statutory premiums and withholding tax from official tables and diff against the actual amounts, with per-item verdicts (match/explainable/misma…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.
Description, as the server wrote it Audit a Japanese payslip: recompute statutory premiums and withholding tax from official tables and diff against the actual amounts, with per-item verdicts (match/explainable/mismatch). $0.02/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Payslip Audit
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_retirement_taxRetirement income tax: deduction by years of service, half-taxation rules, exact withholding rounding.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.
Description, as the server wrote it Retirement income tax: deduction by years of service, half-taxation rules, exact withholding rounding. $0.02/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Retirement Tax
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
jp_social_insuranceMonthly social insurance premiums from the official Kyokai-Kenpo grade table (FY2026).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.
Description, as the server wrote it Monthly social insurance premiums from the official Kyokai-Kenpo grade table (FY2026). $0.01/call. Deterministic, cites primary sources; errors and unverified rules are never billed.
Annotations the server declares
- title: Jp Social Insurance
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
meal_visionAnalyze a meal photo to itemized nutrition JSON: dishes, portions, kcal, macros with per-item confidence, reference-object scale calibration, scene-complexity detection, a disclose…1 finding
Why it is in this group
- The description's first verb is "analyze": a word for reading.
- The server marks it as not read-only (readOnlyHint: false).
Findings
- Warn
The server marks "meal_vision" as not read-only (readOnlyHint: false), and its words say it reads.
What this check looks forMatched text
annotations: {"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "analyze": a word for reading.
Description, as the server wrote it Analyze a meal photo to itemized nutrition JSON: dishes, portions, kcal, macros with per-item confidence, reference-object scale calibration, scene-complexity detection, a disclosed calibrated kcal range, PFC balance ratios and alcohol-aware 4/4/9 cross-checks. Calibrated on 30 weighed meals (range contained truth in 26/30). Every call is a 3-run consensus with disclosed spread + item agreement. $0.05/image.
Annotations the server declares
- title: Meal Vision
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
ocr_imageOCR one image to text with dual-engine consensus, calibrated confidence and per-segment corroboration.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.
Description, as the server wrote it OCR one image to text with dual-engine consensus, calibrated confidence and per-segment corroboration. Japanese-strong. Flat $0.05/image. Choose this when the input is an IMAGE (photo, screenshot, receipt); for PDFs use parse_document.
Annotations the server declares
- title: Ocr Image
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
operator_historyFree 12-week measured score history for any x402 operator from the Market402 index (weekly series, trend, volatility, badge).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 Free 12-week measured score history for any x402 operator from the Market402 index (weekly series, trend, volatility, badge). Check a seller's record before your agent pays an unfamiliar endpoint.
Annotations the server declares
- title: x402 operator track record (Market402)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
parse_documentParse a PDF to structured Markdown (hallucination-guarded OCR for scanned pages, Japanese-strong).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.
Description, as the server wrote it Parse a PDF to structured Markdown (hallucination-guarded OCR for scanned pages, Japanese-strong). Pass url (one step: the 402 quotes the exact price for that PDF) or quote_id from quote_parse (price fixed by the quote). One of the two is required. Choose this when the input is a PDF and you want its full text as Markdown; call pdf_info first if you do not know whether it is scanned, and use document_pipeline instead for invoices you also want verified.
Annotations the server declares
- title: Parse Document
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
pdf_infoPDF facts before you pay for parsing: pages, metadata, per-page text volume, scanned-or-not estimate.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.
Description, as the server wrote it PDF facts before you pay for parsing: pages, metadata, per-page text volume, scanned-or-not estimate. $0.001. Choose this first for any unknown PDF (cheapest real call); then parse_document, pdf_pages or document_pipeline.
Annotations the server declares
- title: Pdf Info
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
pdf_pagesExtract pages from a PDF by 1-based ranges (e.g.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.
Description, as the server wrote it Extract pages from a PDF by 1-based ranges (e.g. 1-3,7) into a new PDF. Deterministic, $0.002.
Annotations the server declares
- title: Pdf Pages
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
portrait_analysisPersonal color analysis from 1-3 portraits: measured pixel colorimetry (CIELAB/ITA) cross-checked against vision-model attributes, cross-photo lighting consistency, then a publishe…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.
Description, as the server wrote it Personal color analysis from 1-3 portraits: measured pixel colorimetry (CIELAB/ITA) cross-checked against vision-model attributes, cross-photo lighting consistency, then a published deterministic rule table gives the 4-season verdict with palette and style advice. No identification; images not stored. Flat $0.05/call.
Annotations the server declares
- title: Portrait Analysis
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
portrait_precheckFREE analyzability check before paying for portrait_analysis: is a face detectable, is the photo quality good enough (clipping/color cast)?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 FREE analyzability check before paying for portrait_analysis: is a face detectable, is the photo quality good enough (clipping/color cast)? Deterministic, no LLM. 10/hour/IP.
Annotations the server declares
- title: Check a portrait photo (free)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
quote_parseFree quote for PDF parsing: page count, route (text/scan-OCR) and the exact final price, before any payment.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 Free quote for PDF parsing: page count, route (text/scan-OCR) and the exact final price, before any payment. Use the returned quote_id with parse_document (on /mcp or /mcp/docs).
Annotations the server declares
- title: Quote a PDF parse (free, exact price)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
report_packVolume pricing for style_report: one $19.90 payment returns 10 single-use credit codes ($1.99/unit vs $2.99 single, en or ja, no expiry).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.
Description, as the server wrote it Volume pricing for style_report: one $19.90 payment returns 10 single-use credit codes ($1.99/unit vs $2.99 single, en or ja, no expiry). Treat codes like cash.
Annotations the server declares
- title: Report Pack
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
structured_extractFill YOUR JSON schema from any URL (hybrid LLM + deterministic canonicalization).No findings
Why it is in this group
- The description's first verb is "fill": a word for a change.
Description, as the server wrote it Fill YOUR JSON schema from any URL (hybrid LLM + deterministic canonicalization). $0.03/call. Choose this when you have your OWN JSON schema to fill from any page; for company profiles use enrich_company or jp_company_profile.
Annotations the server declares
- title: Structured Extract
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
style_profileIntegrated styling verdict: seasonal color (measured colorimetry consensus) + face-impression zone (published geometry rules) + body frame + integration rules (palette subset, tast…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.
Description, as the server wrote it Integrated styling verdict: seasonal color (measured colorimetry consensus) + face-impression zone (published geometry rules) + body frame + integration rules (palette subset, taste, silhouette, modifiers). 1-3 face photos, optional full-body + questionnaire. Flat $0.05/call.
Annotations the server declares
- title: Style Profile
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
style_reportClient-ready deliverable: the style-profile analysis rendered as a finished English PDF report (palette with color names, style-aware outfit formulas, virtual draping boards with d…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.
Description, as the server wrote it Client-ready deliverable: the style-profile analysis rendered as a finished English PDF report (palette with color names, style-aware outfit formulas, virtual draping boards with disclosed candidate conflicts, honest confidence) returned as report_pdf_base64 + full profile JSON. For agents serving human end-clients. Flat $2.99/call, or $1.99/unit with a prepaid report_pack credit (pass pack_code).
Annotations the server declares
- title: Style Report
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
verify_invoiceVerify extracted invoice fields: arithmetic consistency, line-item totals, JP registration number check-digit + corporate-number existence observation (official Japan NTA registry)…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.
Description, as the server wrote it Verify extracted invoice fields: arithmetic consistency, line-item totals, JP registration number check-digit + corporate-number existence observation (official Japan NTA registry), accounting-ready JSON. $0.015/call. Choose this when you already HAVE invoice fields (from your own extraction) and only need them checked; to start from a PDF use document_pipeline.
Annotations the server declares
- title: Verify Invoice
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
Only reads 4Claude Code: allow
get_catalogMart402 product catalog: all products, prices, payment config, error codes, rate limits.No findings
Why it is in this group
- The name "get_catalog" says "get": a word for reading.
Description, as the server wrote it Mart402 product catalog: all products, prices, payment config, error codes, rate limits. Free.
Annotations the server declares
- title: Mart402 catalog (products, prices, policies)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_receiptRe-fetch a previously paid result for free by receipt id (every paid response carries receipt_id).No findings
Why it is in this group
- The name "get_receipt" says "get": a word for reading.
Description, as the server wrote it Re-fetch a previously paid result for free by receipt id (every paid response carries receipt_id).
Annotations the server declares
- title: Re-fetch a paid result by receipt
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
get_sampleFree recorded sample response for a paid product (from real production runs, marked sample:true) - see the exact response shape before paying anything.No findings
Why it is in this group
- The name "get_sample" says "get": a word for reading.
Description, as the server wrote it Free recorded sample response for a paid product (from real production runs, marked sample:true) - see the exact response shape before paying anything. Available: document-pipeline, enrich, extract, jp-bonus-net, jp-business-days, jp-company, jp-consumption-tax, jp-crypto-tax, jp-dependent-threshold, jp-mortgage, jp-overtime-wage, jp-payroll-net, jp-payroll-suite, jp-payslip-audit, jp-retirement-tax, jp-social-insurance, meal-vision, ocr, parse, pdf-info, pdf-merge, pdf-pages, portrait-analysis, report-pack, structured, style-profile, style-report, verify.
Annotations the server declares
- title: Mart402 sample output
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
search_x402_servicesSearch the Market402 verified index of the whole x402 economy by capability (e.g.No findings
Why it is in this group
- The name "search_x402_services" says "search": a word for reading.
Description, as the server wrote it Search the Market402 verified index of the whole x402 economy by capability (e.g. 'ocr', 'market-data'). Every result is a real, probed resource with a measured 402 Score. Free.
Annotations the server declares
- title: Search x402 services (Market402 index)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
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 0.2.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http extract https://mart402.com/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__extract__get_catalog",
"mcp__extract__get_receipt",
"mcp__extract__search_x402_services",
"mcp__extract__get_sample"
],
"ask": [
"mcp__extract__quote_parse",
"mcp__extract__portrait_precheck",
"mcp__extract__operator_history",
"mcp__extract__extract_url",
"mcp__extract__parse_document",
"mcp__extract__ocr_image",
"mcp__extract__verify_invoice",
"mcp__extract__enrich_company",
"mcp__extract__structured_extract",
"mcp__extract__jp_company_profile",
"mcp__extract__document_pipeline",
"mcp__extract__pdf_merge",
"mcp__extract__pdf_pages",
"mcp__extract__pdf_info",
"mcp__extract__meal_vision",
"mcp__extract__style_profile",
"mcp__extract__style_report",
"mcp__extract__report_pack",
"mcp__extract__portrait_analysis",
"mcp__extract__jp_payroll_net",
"mcp__extract__jp_bonus_net",
"mcp__extract__jp_social_insurance",
"mcp__extract__jp_dependent_threshold",
"mcp__extract__jp_consumption_tax",
"mcp__extract__jp_business_days",
"mcp__extract__jp_overtime_wage",
"mcp__extract__jp_retirement_tax",
"mcp__extract__jp_mortgage",
"mcp__extract__jp_payslip_audit",
"mcp__extract__jp_crypto_tax",
"mcp__extract__jp_payroll_suite"
],
"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 extract. Review it before you use it.