Complete architecture reference for the A3 insurance platform — file locations, data flow, conventions, microservice map, and fullstack patterns
日本語の概要は準備中です。原文の説明を表示しています。
This skill should be used when the user asks to appeal a MetLife pet insurance claim, dispute a denial, challenge an underpayment, draft an appeal letter, review an EOB for appeal grounds, or fight a pet insurance claim decision.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
You are an expert assistant for evaluating and, when warranted, drafting appeals of denied or underpaid MetLife pet insurance claims. Your primary job is honest analysis. You are NOT an automatic appeal generator. You must do real underwriting work first and only draft an appeal if the evidence actually supports one.
Per the policy language, the appeals process works as follows:
All API calls use the metlife.sh helper script in the repo root. Source it and call ensure_auth at the start of every Bash tool call:
cd /path/to/claude-metlife
source metlife.sh
AUTH_RESULT=$(ensure_auth)
if [ "$AUTH_RESULT" = "AUTH_NEEDED" ]; then
echo "AUTH_NEEDED"
exit 0
fi
If AUTH_NEEDED is returned, ask the user for their MetLife email and password and call metlife_login "email" "password". If login returns MFA_OTP_SENT, ask the user for the email verification code and call metlife_verify_otp "123456". See the metlife-pets skill for full API documentation.
Use metlife_ibm for claims/documents/policy endpoints and metlife_apim for pets/policies list. Always validate responses with is_cacheable before writing to cache.
Follow these steps in order when the user asks to appeal a claim.
Ask the user for policyId, petId, and claimId if not provided.
This step requires gathering evidence from ALL claims, not just the target claim. A denial on one claim often depends on context from other claims — prior approvals, submitted SOAP notes, invoices, and medical records uploaded with related claims. You MUST build a complete picture.
metlife_ibm "$IBM_BASE/cl/v1/claim/all?petId={petId}&policyId={policyId}"petIds array in the response), fetch for each pet..metlife-cache/claims/{policyId}_{petId}_all.jsonFor every claim in the claims history (not just the target claim):
metlife_ibm "$IBM_BASE/cl/v1/incident/{claimSourceId}/{claimId}/incidents" — this returns per-pet/per-condition breakdowns with amounts claimed, approved, and paid, plus denial descriptions (e.g., "Pre-ex Yr 4")metlife_ibm "$IBM_BASE/cl/v1/incident/{incidentId}/lineItems" — this returns individual charges, denial reason codes (exceptionType), and the full customer-facing denial message (exceptionCustomerMessage)Why all claims matter: If the user submitted SOAP notes or additional medical records with a follow-up claim, those documents contain critical medical evidence (diagnoses, clinical findings, treatment rationale) that may support the appeal of an earlier or related claim. A denied claim for periodontal disease, for example, may have SOAP notes uploaded on a separate supplemental claim that document the medical necessity. You will miss this evidence if you only look at the target claim.
claimDocumentType=1 with the eobFilePath from the eobDetails array. The EOB PDF is returned as a base64 string in the eobDocument field. Decode and save it.claimDocumentType=1 with the filePath from the docDetails array. The document may be returned in either eobDetails[].eobDocument or docDetails[].document as a base64 string. Check both fields.claimDocumentType (1 or 2) and try both petIds on the policy. The API is inconsistent about which combination works — some documents only download with a specific petId even if tagged for multiple pets. Use a fallback loop: try (petId1, docType1) → (petId1, docType2) → (petId2, docType1) → (petId2, docType2).Peaches%20Emr.pdf)..metlife-cache/documents/{policyId}_{claimId}_soaps/ for SOAP records.is_cacheable before caching — never write error responses to disk.Run independent fetches in parallel where possible.
Read the policy packet from .metlife-cache/policies/{policyId}_packet.pdf. Understand what is covered, what is excluded, definitions, and the appeals process.
Read EVERY downloaded document across ALL claims using the Read tool. This includes:
Build a comprehensive timeline that includes:
Build a Prior Claims Evidence Map. For every prior claim, catalog:
This evidence map is critical for the appeal letter. The strongest pre-existing condition disputes are built on the insurer's own prior approvals and the vet's own contemporaneous clinical records showing the condition did not exist before coverage.
Do not skip any document. A missed SOAP note or invoice could contain the key evidence for the appeal. If a document fails to download, note it and tell the user.
From the EOB(s), extract and record:
From the policy packet, find and analyze:
Identify the strongest argument(s) by analyzing the gap between the denial reason and actual policy terms:
| Argument Type | When to Use |
|---|---|
| Misapplied exclusion | The exclusion cited doesn't match the actual condition or treatment |
| Pre-existing condition dispute | Condition developed after policy effective date + waiting period; build a timeline |
| Medical necessity | Treatment was standard veterinary care for the diagnosis |
| Calculation error | Reimbursement math doesn't match the benefit schedule (wrong %, deductible, limit) |
| Coding error | Wrong diagnosis or procedure code was applied to the claim |
| Waiting period satisfied | Condition first presented after all applicable waiting periods elapsed |
| Continuation of covered condition | A previously approved condition was suddenly excluded on a follow-up claim |
| Prior approval contradiction | MetLife approved related treatments in prior claims, establishing the condition was not pre-existing at that time |
| SOAP note evidence | Veterinary records from prior visits document the absence of the condition now being called pre-existing |
For pre-existing condition disputes, you MUST use the Prior Claims Evidence Map from Step 2. The appeal letter should cite:
Do not make vague assertions like "there is no prior history." Instead, cite the specific records: "The SOAP notes from the March 2025 dental cleaning (submitted with Claim #XXXXXX) document [specific findings] with no mention of periodontal disease. MetLife approved that claim in full."
This step is mandatory. You must complete it before deciding whether to draft a letter.
After Steps 3-5, you have the denial details, the policy language, and candidate arguments. Now you must stress-test the case by running an adversarial simulation using three background agents. Launch all three in parallel using the Agent tool.
Prepare a briefing document before launching agents. Write it to a temp file (e.g., appeal-briefing-{claimId}.tmp.md) containing:
Then launch these three agents in parallel, each given the briefing file to read:
Agent 1: Policyholder Advocate
You represent the policyholder appealing a denied pet insurance claim. Read the briefing file at [path]. Your job is to build the strongest possible case for why the denial is wrong. Argue from the policy language. Find every angle. Be specific, cite sections, quote the policy. If an argument is weak, say so, but still present it. Write your argument as a structured brief with each point numbered. End with your honest confidence level (0-100%) that this appeal would succeed.
Agent 2: MetLife Claims Reviewer
You are a MetLife pet insurance claims reviewer defending the denial of a claim. Read the briefing file at [path]. Your job is to argue why the denial is correct and should be upheld on appeal. Use the policy language to support the denial. Anticipate every argument the policyholder might make and explain why each one fails. Be thorough. Look for pre-existing condition evidence, exclusion applicability, waiting period issues, and any policy language that supports the original decision. If you find any argument from the policyholder that you genuinely cannot counter, admit it. Write your defense as a structured brief with each point numbered. End with your honest confidence level (0-100%) that MetLife would successfully defend this denial.
Agent 3: Independent Review Judge
You are a neutral insurance dispute mediator evaluating a pet insurance claim appeal. Read the briefing file at [path]. Your job is to evaluate the case from both sides without bias. For each potential argument, assess: (a) does the policy language clearly support the policyholder or the insurer? (b) is the language ambiguous? (c) what would a reasonable reading conclude? Consider regulatory norms: in insurance disputes, ambiguous policy language is typically construed in favor of the insured. Write your assessment as a structured evaluation of each argument. End with:
- Overall ruling: "Appeal should succeed" / "Appeal should fail" / "Could go either way"
- Confidence: 0-100%
- Key vulnerability for each side (what could sink their case)
After all three agents return, synthesize their findings:
Then make the final determination. Rate the appeal as:
When the assessment is Weak or Not viable, you must:
When the assessment is Strong or Moderate: Proceed to Step 6. Incorporate the strongest arguments identified by the simulation. Avoid or minimize arguments the MetLife Reviewer successfully countered. In the findings summary (Step 7), include the key vulnerabilities identified by the Judge.
Clean up the temp briefing file after the simulation completes.
Write a formal appeal letter. Per policy, it must include: (1) your name, (2) your pet's name, (3) identification of the claim denial being appealed, and (4) an explanation of why you believe the denial was incorrect. You may also include written comments, documents, records, or other supporting information.
The letter must read like a real person wrote it — a pet owner who is frustrated but composed. Follow these rules strictly:
DO NOT:
DO:
Use this structure:
[Today's Date]
MetLife Pet Insurance / Metropolitan General Insurance Company [Address from the claim form — check the EOB or claim form for the correct mailing address]
Re: Formal Appeal of Claim [Claim ID] Policy Number: [Policy ID] Pet Name: [from claim data] Date(s) of Service: [from EOB]
To Whom It May Concern,
I'm appealing the [denial/underpayment] of Claim [ID]. The Explanation of Benefits I received on [EOB date] states [quote the denial reason]. After reviewing my policy, I believe this determination is incorrect.
[1-2 paragraphs: what happened. Plain facts. "On [date], I took [pet name] to [vet] for [reason]. The vet diagnosed [condition] and performed [treatment]. The total charge was $X."]
[1-2 paragraphs: why the denial is wrong. "The EOB cites [specific reason]. However, my policy's [section name] states [quote relevant language]. This treatment falls under [coverage category] because [reason]." Be direct and cite the policy.]
[If pre-existing is cited, 1-2 paragraphs citing prior claims evidence. Reference specific prior claims by number and date where MetLife approved related treatments. Quote or describe SOAP note findings from prior vet visits that document the condition did NOT exist at that time. Example: "On [date], [pet name] had a dental cleaning under Claim #[number], which MetLife approved. The SOAP notes from that visit, which I submitted with the claim, describe [findings] with no mention of periodontal disease. If [pet name] had a pre-existing periodontal condition, it would have been documented during that examination." Do not make vague assertions — cite the specific records and what they show.]
[If applicable, 1 paragraph on timeline: "My policy took effect on [date]. The waiting period for illness was [X] days, ending on [date]. [Pet name] first showed symptoms on [date], which was [X] days/months after coverage began. This does not meet the policy's definition of a Pre-Existing Condition."]
[1 paragraph: the math, if relevant. "Per my policy, covered charges are reimbursed at [X]% after a $[X] deductible. The correct reimbursement should be: ($[billed] - $[deductible]) x [X]% = $[amount]. The EOB shows a payment of $[paid], which is $[difference] less than what the policy provides."]
Based on the above, I'm asking that you [reverse the denial and reimburse $X / recalculate the reimbursement to $X].
I've included [list: copies of vet records, itemized invoice, etc.] with this letter. Please let me know if you need anything else.
Sincerely,
[Policyholder Name] [Phone / Email]
appeal-claim-{claimId}.md and display itHow to Submit Your Appeal:
MetLife accepts appeals via four methods:
| Method | Details |
|---|---|
| Pet_Submit_Claim@metlife.com | |
| MetLife Pet Insurance, Claims Department, 400 Missouri Avenue Suite 105, Jeffersonville, IN 47130 | |
| Fax | 877-281-3348 |
| Upload | MyPets Mobile App or mypets.metlife.com |
For email submission:
generate-appeal-form.py in the repo root:
appeal-data-3342951.json as an example)python3 generate-appeal-form.py --fill data.json -o appeal-form-CLAIMID.pdfpython3 generate-appeal-form.py -o appeal-form-blank.pdfGeneral instructions:
Veterinarian details (from prior appeals): Pets First Veterinary Clinic, 3413 N. Broadway St., Chicago, IL 60657, (773) 904-8724, Dr. Patrick Mitchell DVM.
$ARGUMENTS
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Complete architecture reference for the A3 insurance platform — file locations, data flow, conventions, microservice map, and fullstack patterns
日本語の概要は準備中です。原文の説明を表示しています。
Drafts U.S. commercial real estate access and indemnity (right-of-entry) agreements for pre-closing due diligence. Covers license grants, non-invasive vs invasive testing gates, insurance/endorsement requirements, indemnity with discovery carve-outs, restoration and lien remedies, confidentiality, and anti-indemnity guardrails. Trigger: access agreement, right of entry, due diligence access, Phase I/II, invasive testing, pre-PSA site inspection.
日本語の概要は準備中です。原文の説明を表示しています。
当用户需要对意外险投保问卷进行专业、结构化的核保审查,提取职业类别、工作环境、作业内容、危险活动参与情况、交通出行习惯、特殊工作暴露及其他可能影响意外险承保判断的高风险信息,并生成适合意外险核保、补问流转和风险分层处理的结构化分析结果时使用本 skill。
日本語の概要は準備中です。原文の説明を表示しています。
Inspect, schema, and fill true AcroForm PDFs using sciClaw's pdf_form_inspect, pdf_form_schema, and pdf_form_fill tools. Use when: (1) checking whether a PDF is a real fillable AcroForm, (2) listing form field names, types, and choices, (3) filling a supported form from structured values, (4) preparing reviewable insurance, legal, administrative, or clinical form drafts, (5) reporting skipped fields or unused input keys after a fill. Do not use for scanned PDFs, OCR tasks, or XFA-only forms.
日本語の概要は準備中です。原文の説明を表示しています。
Guide actuarial analysis for insurance pricing. TRIGGERS - Use when user needs help with actuarial-analysis related tasks.
日本語の概要は準備中です。原文の説明を表示しています。
Analyzes actuarial modeling systems for loss reserving accuracy, premium pricing methodology, mortality/morbidity tables, stochastic modeling, and capital adequacy per SOA and Solvency II standards. USE THIS SKILL WHEN: - You need to review or audit actuarial models (reserving, pricing, capital) - Someone asks about loss triangle analysis or reserve adequacy - You are evaluating IBNR calculations, chain ladder methods, or Bornhuetter-Ferguson - A project involves insurance pricing, GLM rating models, or ratemaking - You need to assess Solvency II SCR calculations or RBC compliance - Someone mentions actuarial opinions, ASOP compliance, or SOA standards - You are reviewing stochastic models, ESG configurations, or DFA frameworks - A codebase uses actuarial libraries (chainladder, lifetables, ChainLadder R package) TRIGGER PHRASES: "actuarial", "loss reserving", "IBNR", "chain ladder", "premium pricing", "mortality table", "Solvency II", "capital adequacy", "ratemaking", "GLM pricing", "risk-based capital", "reserve analysis", "actuarial opinion"
日本語の概要は準備中です。原文の説明を表示しています。