Submit and track Fetch Pet pet insurance claims, view claim history, and download EOBs and invoices through browser automation.
Also known as pulsemcp/mcp-servers, fetchpet-mcp-server
- Stars
- 81
- Tools
- 4
- Downloads, 30 days
- 247
- Latest version
- 0.1.8
- Last commit
- Oct 9, 2026
- License
- MIT
What is Fetch Pet MCP?
Fetch Pet is an MCP server. Submit and track Fetch Pet pet insurance claims, view claim history, and download EOBs and invoices through browser automation. It exposes 4 tools, such as prepare_claim_to_submit, submit_claim, get_claims.
Summary generated from the project's README
About Fetch Pet MCP server
Managing pet insurance claims through an AI assistant is possible with fetchpet. This tool uses Playwright browser automation to interact with your Fetch Pet account directly from your local environment. By configuring your username and password as environment variables in your Claude Desktop configuration, you can automate the tedious parts of insurance management without leaving your chat interface.
Users can handle the entire lifecycle of a claim, from initial preparation to final documentation. The server includes specific tools like prepare_claim_to_submit to validate forms and get_claims to retrieve both active and historical records. For security, the submission process requires a confirmation token to ensure that the submit_claim tool only executes after you have reviewed the prepared data. You can also use get_claim_details to retrieve specific documents like invoices and EOBs, which are saved to a local directory on your machine.
What you can do with it
- 1Prepare and submit new claimsAsk the assistant to fill out a claim form using details from a vet invoice.
- 2Monitor claim statusRequest a summary of all your pending or historical insurance claims.
- 3Retrieve insurance documentsDownload specific Explanation of Benefits or invoice files for a particular claim.
Written from the project's README. Every use case is checked against a quote from it.
How to install Fetch Pet MCP
Formats verified 10 Nov 2026Add to CursorAdd to GooseInstall Fetch Pet MCP in Claude Code
$ claude mcp add --env 'FETCHPET_PASSWORD=<YOUR_FETCHPET_PASSWORD>' --env 'FETCHPET_USERNAME=<YOUR_FETCHPET_USERNAME>' fetchpet -- npx -y fetchpet-mcp-serverInstall Fetch Pet MCP in Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"fetchpet": {
"command": "npx",
"args": [
"-y",
"fetchpet-mcp-server"
],
"env": {
"FETCHPET_PASSWORD": "<YOUR_FETCHPET_PASSWORD>",
"FETCHPET_USERNAME": "<YOUR_FETCHPET_USERNAME>"
}
}
}
}Install Fetch Pet MCP in VS Code
.vscode/mcp.json
{
"servers": {
"fetchpet": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"fetchpet-mcp-server"
],
"env": {
"FETCHPET_PASSWORD": "<YOUR_FETCHPET_PASSWORD>",
"FETCHPET_USERNAME": "<YOUR_FETCHPET_USERNAME>"
}
}
}
}Install Fetch Pet MCP in VS Code CLI
$ code --add-mcp '{"name":"fetchpet","type":"stdio","command":"npx","args":["-y","fetchpet-mcp-server"],"env":{"FETCHPET_PASSWORD":"<YOUR_FETCHPET_PASSWORD>","FETCHPET_USERNAME":"<YOUR_FETCHPET_USERNAME>"}}'Install Fetch Pet MCP in Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"fetchpet": {
"command": "npx",
"args": [
"-y",
"fetchpet-mcp-server"
],
"env": {
"FETCHPET_PASSWORD": "<YOUR_FETCHPET_PASSWORD>",
"FETCHPET_USERNAME": "<YOUR_FETCHPET_USERNAME>"
}
}
}
}Install Fetch Pet MCP in Codex
$ codex mcp add fetchpet --env 'FETCHPET_PASSWORD=<YOUR_FETCHPET_PASSWORD>' --env 'FETCHPET_USERNAME=<YOUR_FETCHPET_USERNAME>' -- npx -y fetchpet-mcp-serverInstall Fetch Pet MCP in Codex config.toml
~/.codex/config.toml
[mcp_servers.fetchpet] command = "npx" args = ["-y", "fetchpet-mcp-server"] [mcp_servers.fetchpet.env] FETCHPET_PASSWORD = "<YOUR_FETCHPET_PASSWORD>" FETCHPET_USERNAME = "<YOUR_FETCHPET_USERNAME>"
Install Fetch Pet MCP in Gemini CLI
$ gemini mcp add -s user -e 'FETCHPET_PASSWORD=<YOUR_FETCHPET_PASSWORD>' -e 'FETCHPET_USERNAME=<YOUR_FETCHPET_USERNAME>' fetchpet npx -- -y fetchpet-mcp-serverInstall Fetch Pet MCP in Gemini settings.json
~/.gemini/settings.json
{
"mcpServers": {
"fetchpet": {
"command": "npx",
"args": [
"-y",
"fetchpet-mcp-server"
],
"env": {
"FETCHPET_PASSWORD": "<YOUR_FETCHPET_PASSWORD>",
"FETCHPET_USERNAME": "<YOUR_FETCHPET_USERNAME>"
}
}
}
}Fetch Pet MCP tools 4
Detected from the READMEprepare_claim_to_submitsubmit_claimget_claimsget_claim_details
| prepare_claim_to_submit | — | |
| submit_claim | — | |
| get_claims | — | |
| get_claim_details | — |
Configuration
FETCHPET_PASSWORDRequiredSecretYour Fetch Pet account password.
FETCHPET_USERNAMERequiredSecretYour Fetch Pet account email address.
FETCHPET_DOWNLOAD_DIRDirectory to save downloaded documents (EOB, invoices).
HEADLESSRun browser in headless mode (true/false).
TIMEOUTBrowser operation timeout in milliseconds.
| Name | Description | |
|---|---|---|
| FETCHPET_PASSWORD | Your Fetch Pet account password. | RequiredSecret |
| FETCHPET_USERNAME | Your Fetch Pet account email address. | RequiredSecret |
| FETCHPET_DOWNLOAD_DIR | Directory to save downloaded documents (EOB, invoices). | |
| HEADLESS | Run browser in headless mode (true/false). | |
| TIMEOUT | Browser operation timeout in milliseconds. |
Automated checks
Ran Nov 12, 2026Full report →Passed our automated checks. That is not a security audit: read the code and give the server the narrowest access it needs. How checks work
- Source repository linked and reachablePass
- Open source license (OSI)Pass
- Commit or release in the last yearPass
- Package name not close to a popular packagePass
- Remote endpoint uses HTTPSNot checked
- Destructive tools are labelledPass
- No hidden instructions to the modelPass
- No critical advisory in the package or its dependenciesPass
README
View on GitHubFetch Pet MCP Server
MCP server for Fetch Pet insurance claims management using Playwright automation. Submit claims, track claim status, and view claim details including EOB and invoices.
Features
- Prepare Claims - Fill out claim forms with validation (without submitting)
- Submit Claims - Actually submit prepared claims with explicit user confirmation
- View All Claims - See all claims (active and historical) in a single call
- Claim Details - Get detailed information including EOB and invoice downloads
Tools
| Tool | Description |
|---|---|
prepare_claim_to_submit |
Prepare a claim form for submission (validates but does NOT submit) |
submit_claim |
Submit a prepared claim (requires user confirmation token) |
get_claims |
Get all claims (both active/pending and historical/completed) |
get_claim_details |
Get detailed claim info including EOB and invoice downloads |
Setup
Prerequisites
- Node.js 18+
- A Fetch Pet account (create one at fetchpet.com)
Environment Variables
| Variable | Required | Description | Default |
|---|---|---|---|
FETCHPET_USERNAME |
Yes | Your Fetch Pet account email | - |
FETCHPET_PASSWORD |
Yes | Your Fetch Pet account password | - |
HEADLESS |
No | Run browser in headless mode | true |
TIMEOUT |
No | Browser operation timeout (ms) | 30000 |
FETCHPET_DOWNLOAD_DIR |
No | Directory to save downloaded files | /tmp/fetchpet-downloads |
Claude Desktop
Make sure you have your Fetch Pet account credentials ready.
Then proceed to the setup instructions below. If this is your first time using MCP Servers, you'll want to make sure you have the Claude Desktop application and follow the official MCP setup instructions.
Manual Setup
You're going to need Node working on your machine so you can run npx commands in your terminal. If you don't have Node, you can install it from nodejs.org.
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Modify your claude_desktop_config.json file to add the following:
{
"mcpServers": {
"fetchpet": {
"command": "npx",
"args": ["-y", "fetchpet-mcp-server"],
"env": {
"FETCHPET_USERNAME": "your-email@example.com",
"FETCHPET_PASSWORD": "your-password"
}
}
}
}
Restart Claude Desktop and you should be ready to go!
Usage Examples
Submit a new claim
"Submit a claim for my dog Buddy - I have an invoice from Test Vet Clinic for $150 dated January 15th for an annual checkup"
The assistant will:
- Use
prepare_claim_to_submitto fill out the form - Show you exactly what will be submitted
- Ask for your explicit confirmation
- Only then call
submit_claimwith the confirmation token
View claims
"Show me my active claims"
"What claims are pending?"
"Show my claim history"
"What's the status of my recent claims?"
Get claim details
"Get details for claim ABC123"
"Download the EOB for my last claim"
"Show me the invoice for that claim"
How It Works
This MCP server uses Playwright to automate a browser session with Fetch Pet:
- On server start: Launches a browser in the background and logs into your Fetch Pet account
- Browser session persists: All subsequent tool calls reuse the same logged-in session
- Smart navigation: Tools navigate to the appropriate pages as needed
- Stealth mode: Uses playwright-extra with stealth plugin to avoid bot detection
Claim Submission Safety
The claim submission process is designed with safety in mind:
prepare_claim_to_submitfills out the form and validates everything but does NOT click submit- It returns a unique confirmation token
submit_claimrequires this token, ensuring explicit user confirmation- Without the correct token, claims cannot be submitted
Development
# Install dependencies
npm run install-all
# Run in development mode
npm run dev
# Build
npm run build
# Run tests
npm test
# Run integration tests
npm run test:integration
# Run manual tests (requires real credentials)
npm run test:manual
# Lint
npm run lint
Project Structure
fetchpet/
├── local/ # Local server implementation
│ └── src/
│ └── index.ts # Entry point with env validation
├── shared/ # Shared business logic
│ └── src/
│ ├── server.ts # FetchPetClient with Playwright automation
│ ├── tools.ts # MCP tool definitions
│ ├── types.ts # TypeScript types
│ └── logging.ts # Logging utilities
├── tests/ # Test suites
├── package.json # Root workspace config
└── README.md
Security Notes
- Your Fetch Pet credentials are used only to log into your account
- The browser session runs locally on your machine
- No credentials are transmitted to any third-party services
- Consider using environment variables rather than hardcoding credentials
- Downloaded documents (EOB, invoices) are saved to the configured download directory
Limitations
- Requires a valid Fetch Pet account
- Browser automation may occasionally fail if Fetch Pet updates their website
- Some operations require navigating between pages which takes time
- The website uses a React app, so dynamic content loading may require waits
License
MIT
Fetch Pet MCP questions
How do I add Fetch Pet MCP to Claude Code?
Run claude mcp add --env 'FETCHPET_PASSWORD=<YOUR_FETCHPET_PASSWORD>' --env 'FETCHPET_USERNAME=<YOUR_FETCHPET_USERNAME>' fetchpet -- npx -y fetchpet-mcp-server in your terminal. Add --scope user to make it available in every project.
How do I add Fetch Pet MCP to Cursor?
Open ~/.cursor/mcp.json and add the server under mcpServers, using the Cursor config shown in the install section above.
What tools does Fetch Pet MCP provide?
It exposes 4 tools, including prepare_claim_to_submit, submit_claim, get_claims, get_claim_details.
How do I submit a Fetch Pet claim with this MCP server?
Prepare the claim first, review what will be submitted, then call submit_claim with the returned confirmation token.
Does the server submit claims without my confirmation?
No. Preparing a claim only fills out and validates the form; submission requires the confirmation token from prepare_claim_to_submit.
Can I download EOBs and invoices for my claims?
Yes, claim details include EOB and invoice downloads, saved to the configured download directory.
What credentials does the server need?
It requires your Fetch Pet account email and password via environment variables.
Does the server run a browser on my machine?
Yes, it launches a Playwright browser locally, logs into your account, and reuses that session for all tool calls.