# Good Turn Studio (all tools) (remote · goodturn-mcp.pages.dev)

All 25 Good Turn Studio helpers in one server: money, health, jobs, travel, halal and scripture.

- Trust score: 69/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-28

## Components

- remote · `goodturn-mcp.pages.dev`: 69/100 (this document), [markdown](https://verifymcp.io/servers/goodturnstudio-all/all-mcp.md), [page](https://verifymcp.io/servers/goodturnstudio-all/all-mcp)

## Channel facts

- Endpoint: `https://goodturn-mcp.pages.dev/all/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-28.

- **Endpoint Security**: 74/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 69/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 19608 tokens (~166/item across 118 items; 118 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 75/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - 0 of 2 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "cancelmysub_identify_charge" implies "charge" and declares readOnlyHint instead, contradicting what its own name says it does.
  - An AI judge read all 119 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

## Install

### How do I install the Good Turn Studio (all tools) MCP server?

Good Turn Studio (all tools) is a hosted endpoint at https://goodturn-mcp.pages.dev/all/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http goodturnstudio-all 'https://goodturn-mcp.pages.dev/all/mcp'
```

### Cursor

```json
{
  "mcpServers": {
    "goodturnstudio-all": {
      "url": "https://goodturn-mcp.pages.dev/all/mcp"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "goodturnstudio-all": {
      "type": "http",
      "url": "https://goodturn-mcp.pages.dev/all/mcp"
    }
  }
}
```

### Codex

```toml
[mcp_servers.goodturnstudio-all]
url = "https://goodturn-mcp.pages.dev/all/mcp"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "goodturnstudio-all": {
      "type": "remote",
      "url": "https://goodturn-mcp.pages.dev/all/mcp",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add goodturnstudio-all --url 'https://goodturn-mcp.pages.dev/all/mcp' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  goodturnstudio-all:
    url: "https://goodturn-mcp.pages.dev/all/mcp"
```

### Netclaw

```json
{
  "McpServers": {
    "goodturnstudio-all": {
      "Transport": "http",
      "Url": "https://goodturn-mcp.pages.dev/all/mcp"
    }
  }
}
```

### Vellum

```bash
assistant mcp add goodturnstudio-all -t streamable-http -u 'https://goodturn-mcp.pages.dev/all/mcp'
```

### Other

```json
{
  "mcpServers": {
    "goodturnstudio-all": {
      "type": "http",
      "url": "https://goodturn-mcp.pages.dev/all/mcp"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-28 (score 69)

First indexed and scored.

## MCP tools (118)

### `mizan_screen_company` (~160 tokens)

Mizan: Screen one company against all four standards

Mizan. Screen one company against all four standards. Returns a 'say' sentence, the live price, the consolidated share count, the filing figures used, the business screen per standard ('business': main_business, by_standard pass/fail/review, excluded_under), and each standard's ratio, threshold and verdict. In each screens entry, 'compliant' is the overall verdict (false when that standard excludes the company's business, null when the business needs a closer look) and 'debt_compliant' is the debt test alone. Verdicts within one percent of a threshold are flagged borderline. A company name (for example nvidia) also works

Input parameters:

- `ticker` (string, required): US listing symbol (a common company name also works).

### `mizan_list_standards` (~79 tokens)

Mizan: The four standards, their denominators and thresholds

Mizan. The four standards, their denominators and thresholds. Screens a US-listed company against four published Shariah equity standards (AAOIFI, Dow Jones Islamic Market, S&P Shariah, MSCI Islamic), first on its business (prohibited industries each standard excludes) and then on its debt, using live...

### `mizan_purify_dividend` (~135 tokens)

Mizan: How much of a dividend to give to charity

Mizan. How much of a dividend to give to charity. Returns the company's purification ratio (interest income over total revenue, from its latest 10-K that reports interest income; 'latest_annual_filing' and 'note' say when that is older than the latest 10-K) and, if a dividend amount is given, the amount to give to charity. For a company whose main business every standard excludes, 'business_screen' explains that purification does not make it permissible

Input parameters:

- `dividend` (number): The dividend received, in any currency.
- `ticker` (string, required): US listing symbol.

### `mizan_find_halal_alternatives` (~103 tokens)

Mizan: Halal alternatives to a holding

Mizan. Halal alternatives to a holding. Companies Mizan covers in the same industry (or the nearest related one) whose business is permitted and whose debt passes all four standards at the last quarter-end, largest first, plus Shariah index funds for US and UK investors. Screen a pick live with /screen/{ticker} before buying

Input parameters:

- `ticker` (string, required): The holding to replace: a US listing symbol or company name.

### `mizan_screen_portfolio` (~80 tokens)

Mizan: Screen a whole portfolio

Mizan. Screen a whole portfolio. Screens up to 15 holdings under all four standards and returns the share of the portfolio that is compliant under each, the holdings that fail, and a combined dividend purification ratio

Input parameters:

- `holdings` (string, required): Comma-separated tickers, each optionally followed by a colon and the value held, for weighting.

### `mizan_calculate_zakat` (~241 tokens)

Mizan: Zakat owed on cash, gold, silver, shares and business stock

Mizan. Zakat owed on cash, gold, silver, shares and business stock, using live gold and silver prices

Input parameters:

- `business_stock` (number): Value of business stock for sale
- `cash` (number): Cash and bank balances
- `currency` (string): Defaults to USD.
- `debts_due_now` (number): Debts due now, deducted
- `gold_grams` (number): Gold held, in grams
- `gold_value` (number): Or the value of gold held
- `nisab` (string): Which nisab to use. Defaults to silver.
- `owed_to_you` (number): Money owed to you that you expect to be repaid
- `share_zakatable_pct` (number): Share of long-term holdings treated as zakatable, default 25
- `shares_longterm` (number): Market value of shares held long term
- `shares_trading` (number): Market value of shares held for trading (counted in full)
- `silver_grams` (number): Silver held, in grams
- `silver_value` (number): Or the value of silver held

### `halalornot_check_ingredients` (~102 tokens)

Halal or Not: Check an ingredients list

Halal or Not. Check an ingredients list. Pass the ingredients exactly as printed on the pack. Returns an overall verdict, a verdict for each school, and every flagged ingredient with the reason

Input parameters:

- `context` (string): 'cosmetic' for products used on the skin, 'medicine' for medicines and supplements; these change how alcohol, carmine and necessity are treated.
- `ingredients` (string, required): Ingredients list as printed, comma separated.

### `halalornot_check_product_by_barcode` (~64 tokens)

Halal or Not: Check a product by barcode

Halal or Not. Check a product by barcode. Looks the barcode up in Open Food Facts, then Open Beauty Facts, and checks its ingredients

Input parameters:

- `barcode` (string, required): EAN-13, EAN-8 or UPC barcode digits.

### `halalornot_search_products` (~184 tokens)

Halal or Not: Find products by name and check them

Halal or Not. Find products by name and check them. Searches Open Food Facts by name or brand (for example 'Haribo Starmix') and returns up to five matches, each with a verdict, plus a 'say' line for the best match. Where a brand states the source of an ingredient its label leaves unnamed (Haribo: pork gelatine in its standard UK range), that statement decides it and is quoted in brand_statement

Input parameters:

- `country` (string): Open Food Facts country slug, for example united-kingdom, united-states, france. Use 'world' for no filter. Also picks the Amazon store for halal versions (amazon.co.uk for the UK and Ireland).
- `q` (string, required): A product, brand or barcode to look up, for example Haribo Starmix or 5000159484695.

### `halalornot_explain_ingredient` (~108 tokens)

Halal or Not: Explain one ingredient or E-number

Halal or Not. Explain one ingredient or E-number. For example 'E471', 'carmine', 'prawns', 'whey' or 'alcohol denat'. Returns the verdict for each school and the reasoning

Input parameters:

- `context` (string): Whether the ingredient is in food or a cosmetic. Defaults to food.
- `name` (string, required): The ingredient or E-number, for example E471, carmine, gelatin or alcohol denat.

### `halalornot_screen_stock` (~104 tokens)

Halal or Not: Is this stock halal?

Halal or Not. Is this stock halal?. Screens a US-listed stock via Mizan: first the business (each standard's excluded industries), then the AAOIFI, Dow Jones Islamic, S&P Shariah and MSCI Islamic debt screens. A company name also works (nvidia, philip morris). Links to halal alternatives in the same industry

Input parameters:

- `ticker` (string, required): A US stock ticker, for example AAPL or TSLA.

### `halalornot_ask_is_it_halal` (~122 tokens)

Halal or Not: Ask any 'is it halal' question

Halal or Not. Ask any 'is it halal' question. Covers money (savings, credit cards, mortgages, BNPL, insurance, pensions, trading), crypto, medicine, food and drink, and everyday life (music, dogs, tattoos, nail polish, smoking, games, photos, jobs). Returns the verdict, the main scholarly views and halal alternatives. Also recognises single ingredients and E-numbers

Input parameters:

- `q` (string, required): The question in plain words, for example 'Is a credit card halal?'

### `halalornot_check_fund` (~161 tokens)

Halal or Not: Is this fund, ETF or pension fund halal?

Halal or Not. Is this fund, ETF or pension fund halal?. Recognises Shariah funds by name or ticker. For other US-registered funds and ETFs, reads the latest SEC holdings report and screens every holding by industry and debt. UK-listed ETFs (VUSA, CSPX, VWRL, SWDA, EQQQ, ISF and others) and fund names (Vanguard S&P 500, FTSE 100 tracker, LifeStrategy) are answered through a US fund tracking the same index, or from what the index holds, with UK Shariah options

Input parameters:

- `ticker` (string, required): Fund or ETF ticker (VOO, QQQ, SPUS) or a Shariah fund name.

### `halalornot_check_crypto` (~78 tokens)

Halal or Not: Is this cryptocurrency halal?

Halal or Not. Is this cryptocurrency halal?. Classifies a coin by what it does (lending, gambling, meme, stablecoin, staking, general-purpose) and gives the scholarly views on crypto and on how it's used

Input parameters:

- `coin` (string, required): Coin name or symbol, for example bitcoin, ETH, AAVE.

### `halalornot_check_medicine` (~94 tokens)

Halal or Not: Is this medicine halal?

Halal or Not. Is this medicine halal?. Reads a medicine's active and inactive ingredients from its US label (openFDA) and flags gelatine, alcohol, pig-derived enzymes and heparin. The headline and say line lead with the ruling on necessity, so nobody stops a prescribed medicine; the ingredient reading follows (ingredient_headline, verdict)

Input parameters:

- `name` (string, required): Brand or generic name.

### `halalornot_get_prayer_times` (~203 tokens)

Halal or Not: Today's prayer times for a place, with Ramadan suhoor and iftar

Halal or Not. Today's prayer times for a place, with both Asr times and Ramadan suhoor and iftar. Answers 'is it halal?' for food, cosmetics, medicines, stocks, funds, crypto, money products and everyday life, showing where the four Sunni schools and the main scholarly bodies agree and where they differ, with the reasoning and halal alt...

Input parameters:

- `city` (string): City name, for example London or Chicago, IL.
- `date` (string): The day, YYYY-MM-DD. Defaults to today.
- `lat` (number): Latitude of the place, in decimal degrees. Use with lon instead of city.
- `lon` (number): Longitude of the place, in decimal degrees. Use with lat instead of city.
- `method` (string): Calculation method: isna (North America), mwl (Muslim World League), umm_al_qura, egypt, karachi or moonsighting.

### `halalornot_list_topics` (~94 tokens)

Halal or Not: Every question the rulebook covers

Halal or Not. Every question the rulebook covers. Answers 'is it halal?' for food, cosmetics, medicines, stocks, funds, crypto, money products and everyday life, showing where the four Sunni schools and the main scholarly bodies agree and where they differ, with the reasoning and halal alt...

Input parameters:

- `category` (string): Only topics in this area: money, crypto, medicine, food or life.

### `halalornot_explain_schools` (~76 tokens)

Halal or Not: How the four schools differ on food

Halal or Not. How the four schools differ on food. Answers 'is it halal?' for food, cosmetics, medicines, stocks, funds, crypto, money products and everyday life, showing where the four Sunni schools and the main scholarly bodies agree and where they differ, with the reasoning and halal alt...

### `halalornot_list_rules` (~70 tokens)

Halal or Not: The full rulebook

Halal or Not. The full rulebook. Answers 'is it halal?' for food, cosmetics, medicines, stocks, funds, crypto, money products and everyday life, showing where the four Sunni schools and the main scholarly bodies agree and where they differ, with the reasoning and halal alt...

### `faredeals_find_deals` (~224 tokens)

Fare Deals: Cheapest recent fares from a city, to a place or anywhere

Fare Deals. Cheapest recent fares from a city, to a place or anywhere. The say field is a ready-made answer.

Input parameters:

- `country` (string): Two-letter country for the currency, for example US, GB, CA, AU, DE. Leave out to use the traveller's location.
- `from` (string, required): City or airport, for example New York or JFK. Add a state or country when a name is shared: Birmingham, UK; Birmingham, AL; Portland, Maine.
- `limit` (integer): How many deals to return, 1 to 20.
- `max_price` (number): Budget in US dollars
- `month` (string): Departure month 2026-11 or date 2026-11-14
- `nonstop` (boolean): True for direct flights only.
- `one_way` (boolean): True for one-way fares only.
- `return` (string): Return month or date
- `to` (string): City or airport, or anywhere (default). Same state or country hints as from.

### `faredeals_cheapest_dates` (~162 tokens)

Fare Deals: Cheapest departure days for a route in a month

Fare Deals. Cheapest departure days for a route in a month. Cheap flights from any city, to one place or anywhere, with the cheapest days to fly. Fares are the cheapest Aviasales travellers found in the last 48 hours. The live price is on the booking page.

Input parameters:

- `country` (string): Two-letter country for the currency, for example US, GB, CA, AU, DE. Leave out to use the traveller's location.
- `from` (string, required): Add a state or country when a name is shared, for example Portland, Maine.
- `month` (string, required): 2026-11
- `to` (string, required): Add a state or country when a name is shared, for example Portland, Maine.

### `faredeals_look_up_place` (~89 tokens)

Fare Deals: Look up a city or airport code

Fare Deals. Look up a city or airport code. Cheap flights from any city, to one place or anywhere, with the cheapest days to fly. Fares are the cheapest Aviasales travellers found in the last 48 hours. The live price is on the booking page.

Input parameters:

- `q` (string, required): A city or airport name or code, for example Lisbon or LIS.

### `cheapestprice_check_price` (~120 tokens)

Cheapest Price: Lowest current price for a product, with compare links

Cheapest Price. Lowest current price for a product, with compare links. The lowest current price for a product on eBay (and Best Buy in the US), checked live in the shopper's own country and currency, plus Amazon and local shop links to compare.

Input parameters:

- `country` (string): Two-letter country for prices and shops. Leave out to use the shopper's location.
- `q` (string, required): The product, as specific as possible, for example AirPods Pro 2
- `used` (boolean): Include used items on eBay

### `spinmyday_spin_my_day` (~306 tokens)

Spin My Day: Build a day out

Spin My Day. Build a day out. Leave out city and location to spin for a random city. Spin up a full day out (morning, lunch, afternoon, dinner, evening) around the weather and what is open, in a city, near a location, or in a random city.

Input parameters:

- `budget` (string): any, or free for free things only.
- `city` (string): The city to plan the day in, for example Manchester or Austin, TX. Leave out with lat and lon for a random city.
- `date` (string): The day to plan, YYYY-MM-DD. Leave it out for today, or tomorrow when it is already past 5pm there (the answer then says tomorrow: true).
- `diet` (string): Food needs, comma separated: halal, kosher, vegetarian, vegan, pescatarian, gluten_free, dairy_free, jain. Lunch and dinner then name real places that OpenStreetMap lists for all of them (each meal s…
- `lat` (number): Latitude, in decimal degrees, instead of city.
- `lon` (number): Longitude, in decimal degrees, instead of city.
- `seed` (integer): Repeat a spin exactly; each answer includes a spin_again link with a new seed
- `vibe` (string): The feel of the day: chill, adventure, date, family, culture or foodie.

### `spinmyday_list_vibes` (~63 tokens)

Spin My Day: The vibes you can ask for

Spin My Day. The vibes you can ask for. Spin up a full day out (morning, lunch, afternoon, dinner, evening) around the weather and what is open, in a city, near a location, or in a random city.

### `cancelmysub_get_cancel_steps` (~229 tokens)

Cancel My Sub: How to cancel one subscription

Cancel My Sub. How to cancel one subscription. Use for "how do I cancel Netflix?", "cancel my Planet Fitness membership", "how do I leave Sky?", "cancel my PureGym", "what's the cheapest way to keep Spotify?", "stop my Audible". Returns the official page, steps, catches and a cheaper option. UK answers add region ("UK") and uk_rules; a US-only service asked about from the UK has region "US only".

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) gives UK pages, UK notice rules and uk_rules; defaults to the caller's country, else US.
- `renews_on` (string): Next renewal or billing date (or next delivery for meal kits), YYYY-MM-DD. Adds cancel_by: the last safe day to cancel using the service's own notice rule, or a day early where it has none, and add_t…
- `service` (string, required): The subscription's name in everyday words, up to 80 characters.

### `cancelmysub_identify_charge` (~134 tokens)

Cancel My Sub: Which subscription is this charge?

Cancel My Sub. Which subscription is this charge?. Use for "what is this APPLE.COM/BILL charge?", "I see AMZN Digital on my statement", "what is DD *DOORDASH DASHPASS?". Returns the likely service, or for Apple, Amazon, Google and Microsoft the few it could be and where to check, or match: purchase when it looks like a one-off order (marketplace, a ride, a restaurant through a delivery app). Then call getCancelSteps

Input parameters:

- `text` (string, required): The charge as it appears on the statement, up to 120 characters.

### `cancelmysub_get_cancel_reminder` (~167 tokens)

Cancel My Sub: Calendar reminder for the last safe day to cancel

Cancel My Sub. Calendar reminder for the last safe day to cancel. Returns a calendar file (.ics) with an all-day event on the cancel-by day, the steps and the official link, with alerts at 9am the day before and 9am on the day. Nothing is stored. /v1/cancel gives this link as add_to_calendar whenever renews_on is given and the day hasn't passed

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) gives UK pages, UK notice rules and uk_rules; defaults to the caller's country, else US.
- `renews_on` (string, required): Next renewal or billing date, YYYY-MM-DD.
- `service` (string, required): The subscription, as for getCancelSteps.

### `cancelmysub_list_services` (~133 tokens)

Cancel My Sub: Every subscription Cancel My Sub covers

Cancel My Sub. Every subscription Cancel My Sub covers. Use for "which subscriptions can you help me cancel?" or "what gyms do you know?". Also returns the current status of the FTC click-to-cancel rule and the UK rules (uk_rules)

Input parameters:

- `category` (string): streaming, music, membership, gym, news, meal kit, software, app store, dating, wellness, home security, phone and internet, tv and broadband.
- `country` (string): Two-letter country code. GB (or UK) leaves out US-only services; defaults to the caller's country, else US.

### `lowermybill_get_bill_script` (~431 tokens)

Lower My Bill: A call script to lower a bill

Lower My Bill. A call script to lower a bill. Use for "help me lower my Comcast bill", "get my BT broadband cheaper", "lower my Council Tax", "script to get a better phone plan", "how do I negotiate my car insurance?", "lower my credit card interest", "I pay for too many streaming services". Give the bill type, the provider, or both. If the provider doesn't sell that bill, provider_note says so and the general script is returned

Input parameters:

- `bill` (string): internet (or broadband), mobile, tv, streaming, car insurance, home insurance, electricity (or energy, gas), water, credit card, gym or council tax (UK). Up to 60 characters.
- `country` (string): Two-letter country code. GB (or UK) gives UK scripts, schemes and complaint routes; otherwise it picks the Amazon store in own_modem (US by default; IE uses amazon.co.uk). Defaults to the caller's co…
- `deal_ends` (string): The date the current promotional price, contract or insurance policy ends, YYYY-MM-DD. Adds call_by (about 30 days earlier, on a weekday, or today if that has passed) and add_to_calendar, a link to a…
- `provider` (string): Company name, for example Comcast, Xfinity, Spectrum, AT&T, Verizon, Frontier, T-Mobile, Cox, Optimum, Mediacom, Astound, DIRECTV, DISH, GEICO, Progressive, State Farm, Allstate, USAA; UK: BT, Sky, V…
- `state` (string): US state name or two-letter code. For electricity, adds the state's energy discount programme where there is one. England, Scotland, Wales, Northern Ireland or UK gives the UK answer.

### `lowermybill_get_call_reminder` (~194 tokens)

Lower My Bill: Calendar reminder to call before a deal ends

Lower My Bill. Calendar reminder to call before a deal ends. Returns a calendar file (.ics) with an all-day event about 30 days before the deal ends, holding the full script, offers to ask for and a confirm-in-writing message, with alerts at 9am the day before and on the day. Nothing is stored. /v1/script gives this link as add_to_calendar when deal_ends is given

Input parameters:

- `bill` (string): Bill type, as for getBillScript. Give bill, provider or both.
- `country` (string): Two-letter country code. GB (or UK) gives the UK script when no provider is named. Defaults to the caller's country, else US.
- `deal_ends` (string, required): The date the current price or policy ends, YYYY-MM-DD.
- `provider` (string): Company name, as for getBillScript.

### `lowermybill_get_bill_help` (~234 tokens)

Lower My Bill: Official help programmes for a bill

Lower My Bill. Official help programmes for a bill. Use for "is there help paying my internet bill?", "is there a broadband social tariff?", "help with my energy bill in the UK", "help with my electric bill", "cheap internet for low income", "does Xfinity have a low-income plan?". Returns programmes with who qualifies and how to apply

Input parameters:

- `bill` (string, required): internet, mobile, electricity (or heating, gas), water, tv, streaming, car insurance, home insurance, credit card, council tax (UK), or a provider name. Up to 60 characters.
- `country` (string): Two-letter country code. GB (or UK) gives UK schemes (Ofcom social tariffs, Warm Home Discount, WaterSure, Council Tax Reduction). Defaults to the caller's country, else US.
- `state` (string): US state name or two-letter code. For electricity, adds the state's energy discount programme (California, New York, Ohio, New Jersey, Pennsylvania, Georgia). England, Scotland, Wales, Northern Irela…

### `pricedropback_get_store_policy` (~182 tokens)

Price Drop Back: A store's price adjustment and price match policy

Price Drop Back. A store's price adjustment and price match policy. Use for "does Target do price matching?", "does John Lewis refund if the price drops?", "Currys price promise", "what's Best Buy's price adjustment policy?", "will Costco refund the difference?". With an item name it adds links to check today's price

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) gives the UK policy where the store has one (Apple, Amazon, IKEA) and UK rules; it also picks the price links (US, GB and IE get local Amazon and eBay links). Defa…
- `item` (string): Optional item name, up to 100 characters, to link today's prices for it.
- `store` (string, required): Store name in everyday words, up to 60 characters.

### `pricedropback_check_price_drop_claim` (~371 tokens)

Price Drop Back: Can I get the difference back?

Price Drop Back. Can I get the difference back?. Use for "I bought a TV at Best Buy 9 days ago for $499 and it's $449 now, can I get the difference?". Says whether a claim is likely (likely, likely_if_member, unlikely, check or no_drop), the amount, and the steps. With an item name it adds a Cheapest Price link and Amazon and eBay links to check today's price. Likely claims also get claim_message, ready to paste into the store's chat or email. policy.refund_paid_as flags stores that pay store credit (Newegg)

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) gives the UK policy where the store has one (Apple, Amazon, IKEA) and UK rules; it also picks the price links (US, GB and IE get local Amazon and eBay links). Defa…
- `days_since_purchase` (integer): Days since you bought it (or since delivery), 0 to 400. Give this or purchase_date.
- `item` (string): Optional item name, up to 100 characters, to link today's price on Cheapest Price, Amazon and eBay.
- `now` (number): Today's price, 0 to 100000 (US dollars, or pounds for UK stores).
- `paid` (number): What you paid, 0 to 100000 (US dollars, or pounds for UK stores).
- `purchase_date` (string): The date you bought it, YYYY-MM-DD, instead of days_since_purchase. Adds deadlines: the last day to claim with the store (and in a members' longer window) and Capital One card protection.
- `store` (string, required): Store name, up to 60 characters.

### `pricedropback_get_claim_reminder` (~200 tokens)

Price Drop Back: Calendar reminder for the last day to claim a price drop

Price Drop Back. Calendar reminder for the last day to claim a price drop. Returns a calendar file (.ics) with an all-day event on the store's last claim day, how to claim and the policy link, with alerts 3 days before and on the day. Nothing is stored. /v1/check gives this link as add_to_calendar when purchase_date is given and a claim is likely

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) uses the UK policy where the store has one. Default from the request.
- `item` (string): Optional item name for the event title, up to 100 characters.
- `member` (boolean): true to use the longer members' window where the store has one (for example My Best Buy Plus or Total).
- `purchase_date` (string, required): The date you bought it, YYYY-MM-DD.
- `store` (string, required): Store name.

### `pricedropback_list_stores` (~88 tokens)

Price Drop Back: Every store covered, plus card price protection

Price Drop Back. Every store covered, plus card price protection. Use for "which stores give you money back if the price drops?" or "does my credit card have price protection?". With country=GB, lists the UK policies

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) lists only stores with a UK policy. Default from the request.

### `findmymoney_get_state_search` (~221 tokens)

Find My Money: A state's official unclaimed property search

Find My Money. A state's official unclaimed property search. Use for "do I have unclaimed money in Ohio?", "how do I find money I'm owed in the UK?", "how do I find unclaimed property in Texas?", "I've lived in Ohio, Texas and California, where do I look?". Returns the official state search link (and a direct search_url), MissingMoney.com, tips, a claim checklist and a scam warning. With several states, the first is at the top level and the rest are in more_states.

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) gives the UK tracing services. Defaults to the caller's country, else US.
- `state` (string, required): State name or two-letter code, DC or Puerto Rico, or UK (England, Scotland, Wales, Northern Ireland, London). Several can be listed with commas or "and" (up to 8). Big city names like NYC also work.…

### `findmymoney_get_sources` (~201 tokens)

Find My Money: Federal and other official places to look, by type

Find My Money. Federal and other official places to look, by type. Use for "how do I find an old 401k?", "unclaimed tax refund", "lost savings bonds", "money from a failed bank", "FTC refund", "my mum died, did she leave money or life insurance?", "find my old pension" (UK with country=GB), "find my Child Trust Fund". Without a type, returns every source

Input parameters:

- `country` (string): Two-letter country code. GB (or UK) gives the UK tracing services. Defaults to the caller's country, else US.
- `type` (string): tax, retirement, bonds, banks, investments, refunds, insurance, deceased, wages, courts, tribal or all. Everyday words like 401k, pension, stocks or "my dad died" also work; UK words like HMRC, Premi…

### `supplementcheck_get_supplement` (~390 tokens)

Supplement Check: A supplement's label, dose check and halal status

Supplement Check. A supplement's label: amounts per serving, upper limit check, halal status and a buy link. Use for "what's in Nature Made vitamin D3?", "is Centrum halal?", "how much melatonin is in OLLY Sleep?" or "is this supplement halal?" with a barcode. Give q (brand and product name) or barcode. Returns per-serving amounts, dose_check (each vitamin and mineral compared with the adult upper limit at the most the label suggests per day, with per_day_base amounts), other_checks (melatonin, caffeine, creatine, ashwagandha and similar, including when a blend hides the amount), halal (likely_halal, doubtful, not_halal or depends_on_school, with the ingredients that need a confirmed source), alternatives (other sizes or versions), an Amazon link, and halal_options (links to halal-certified or gelatine-free versions) when the halal answer is not likely_halal. For a general name like "creatine monohydrate" it reads one common label and says so. With country=GB, dose_check uses the NHS guidance where it sets one (upper_limit says NHS guidance). Salt forms such as magnesium glycinate are counted as the mineral they hold (estimated: true), and omega-3 is read from EPA and DHA, total omega-3, or estimated from the fish oil weight.

Input parameters:

- `barcode` (string): UPC or EAN barcode digits (8 to 14).
- `country` (string): US, GB, IE, CA, AU. GB uses NHS guidance for the dose checks; also picks the buy link site. Default from the request.
- `id` (integer): A label id from the NIH database, for example from alternatives.
- `q` (string): Brand and product name, for example Nature Made vitamin D3 2000 IU.

### `supplementcheck_get_nutrient` (~340 tokens)

Supplement Check: What a vitamin, mineral or supplement does and how much adults need

Supplement Check. What a vitamin, mineral or popular supplement does, how much adults need or studies used, limits, cautions and food sources. Use for "what does magnesium glycinate do?", "what is vitamin K for?", "how much vitamin D do I need?", "is ashwagandha safe?" or "what is creatine?". Covers vitamins A, B1, B2, B5, B6, B12, C, D, E and K, niacin, folate, biotin, choline, calcium, iron, zinc, magnesium, potassium, selenium, iodine, copper, chromium, manganese, molybdenum, phosphorus, boron and omega-3, and explains common forms. Also covers creatine, melatonin, caffeine, ashwagandha, turmeric, CoQ10, collagen, protein powder, probiotics, psyllium, glucosamine, St John's wort, green tea extract, berberine, L-theanine and elderberry: for these it returns supplement, what_studies_looked_at, studied_amounts, ceiling, cautions and source instead of rda and upper_limit. Links the NIH fact sheet. With country=GB the answer gives the UK amounts and NHS supplement guidance, also in the uk field.

Input parameters:

- `country` (string): US, GB, IE, CA, AU. GB gives UK (NHS) amounts; also picks the shop link site. Default from the request.
- `name` (string, required): A vitamin, mineral, form or supplement, for example magnesium glycinate or ashwagandha.

### `supplementcheck_check_dose` (~451 tokens)

Supplement Check: Compare an amount of a vitamin or mineral with the adult RDA and upper limit

Supplement Check. Compare an amount of a vitamin or mineral with the adult RDA and upper limit. Use for "is 5000 IU of vitamin D too much?", "is 500 mg of magnesium glycinate safe?", "is 10 mg of melatonin a lot?" or "is 300 mg of caffeine too much?". Handles IU, mcg, mg and g, including IU for vitamins A, D and E and DFE for folate. For vitamins and minerals, status is above, at, within or no_upper_limit; when the name is a compound (magnesium glycinate, ferrous sulfate, zinc gluconate) the `compound` field also gives how much of the mineral the compound holds, as US and UK labels list the mineral itself; when only one reading is over the limit, the say line gives both and compared_with.depends_on_label is true. Fish oil, cod liver oil and krill oil amounts are the oil weight, so EPA plus DHA is estimated (amount.epa_dha_estimate_mg). With country=GB the limit is the NHS guidance (compared_with.reference is UK (NHS), with us_upper_limit alongside). For other supplements the answer compares with an official ceiling where one exists (caffeine) or the amounts studies have used, with status above, at, within, above_studied_range, within_studied_range, below_studied_range or no_set_amount, plus cautions. Adult values only, with a note

Input parameters:

- `amount` (number): The amount taken per day, in the unit given.
- `country` (string): Two-letter country code. GB compares with NHS guidance and gives UK amounts. Default from the request.
- `nutrient` (string): The vitamin, mineral or supplement, for example vitamin D, magnesium or melatonin.
- `q` (string): The whole question instead, for example 5000 IU vitamin D.
- `unit` (string): IU, mcg, mg, g, mcg DFE, or billion (CFU) for probiotics. Defaults to IU for vitamin D amounts of 200 or more, otherwise the usual unit.

### `supplementcheck_check_stack` (~245 tokens)

Supplement Check: Add up everything someone takes and check the daily totals

Supplement Check. Add up everything someone takes and check the daily totals against adult upper limits. Use for "I take Centrum, vitamin D 5000 IU and zinc 50 mg, is that too much?" or "is it OK to take OLLY Sleep with extra melatonin?". Pass up to 6 items separated by semicolons: product names, barcodes, or amounts like vitamin D 5000 IU. Products are counted at the most each label suggests per day. Returns totals (each vitamin and mineral added up, with the items it comes from, compared with the adult upper limit, or NHS guidance with country=GB), other_totals (caffeine, melatonin and similar added up, or marked when a label hides the amount), items (what each was matched to) and not_found. Fish oil amounts count the EPA and DHA they typically hold.

Input parameters:

- `country` (string): Two-letter country code. GB compares totals with NHS guidance. Default from the request.
- `items` (string, required): What the user takes, separated by semicolons, for example Centrum Silver Men; vitamin D 5000 IU; zinc 50 mg.

### `platepal_get_food_nutrition` (~450 tokens)

Plate Pal: Calories and macros for a food, dish or product, for the amount the user says

Plate Pal. Calories and macros for a food, dish or product, for the amount the user says. Use for "how many calories in a Big Mac?", "protein in 200g chicken breast", "calories in chicken biryani", "a slice of pepperoni pizza", "a large latte" or a whole meal like "2 eggs, 2 slices of toast and a coffee". Put the whole amount and food in q, or pass grams or servings separately. Generic foods and dishes (thousands, including fast food and restaurant dishes) use USDA values with real portion weights (slice, cup, small, medium, large, one item); brands come from Open Food Facts. Chain items ("McDonald's large fries", "a Greggs sausage roll", "KFC Zinger burger", "grande latte from Starbucks", "6 inch Italian BMT from Subway", "20 piece McNuggets") use the chain's own published figures for that size, UK or US by country, and return a chain object (name, region, item, size, weight_published); when the chain doesn't publish a weight, amount.grams is null and per_100 values are null. For a chain item not in the table, a typical USDA version is used and the say line says so. A whole meal returns items (each food with its amount and nutrition) and total. Returns nutrition for the amount, per_100 values, portions, UK traffic lights (per 100 g, or per 100 ml for drinks) and caffeine_mg for drinks that have it.

Input parameters:

- `country` (string): Two-letter country code. Picks UK or US chain figures (GB and IE get UK ones) and prefers local versions of branded products. Default from the request.
- `grams` (number): Amount in grams (1 to 5000). Overrides any amount in q.
- `q` (string, required): The food or meal, optionally with amounts, for example 200g chicken breast, a large banana, or 2 eggs and a slice of toast.
- `servings` (number): Number of servings or items (0.25 to 20).

### `platepal_get_barcode_nutrition` (~146 tokens)

Plate Pal: Nutrition for a packaged product by barcode, with UK traffic lights

Plate Pal. Nutrition for a packaged product by barcode, with UK traffic lights. Use for "is this barcode high in sugar?", "how many calories in this?" after a scan, or "what's the salt in 5000157024886?". Returns per 100 g (or 100 ml) and per serving values, traffic lights for fat, saturates, sugars and salt, Nutri-Score, allergens and a Halal or Not? link for checking the ingredients

Input parameters:

- `code` (string, required): Barcode digits (8 to 14).
- `servings` (number): Number of servings to total up (0.25 to 20).

### `platepal_get_meal_ideas` (~264 tokens)

Plate Pal: Simple meal ideas by goal, diet and meal, with rough macros

Plate Pal. Simple meal ideas by goal, diet and meal, with rough macros. Use for "give me a high protein halal dinner idea", "a quick vegan lunch", "cheap vegetarian breakfast ideas". Goals: high protein, low carb, budget, quick, high fibre. Diets: vegetarian, vegan, pescatarian, halal. Meals: breakfast, lunch, dinner, snack. You can pass the user's words in q instead. Ideas rotate daily. It does not set calorie or weight targets; a weight-loss request gets lighter, filling ideas (goal lighter, 450 calories or less) and a pointer to a doctor or dietitian, with no shop links.

Input parameters:

- `country` (string): Two-letter country code for the shop links (US, GB and IE get local Amazon links). Default from the request.
- `diet` (string): vegetarian, vegan, pescatarian or halal.
- `goal` (string): high protein, low carb, budget, quick or high fibre.
- `meal` (string): breakfast, lunch, dinner or snack.
- `n` (integer): How many ideas, 1 to 8. Default 3.
- `q` (string): Free text, for example high protein halal dinner.

### `planmyworkout_get_workout_plan` (~499 tokens)

Plan My Workout: A weekly workout plan with sets, reps and rest

Plan My Workout. A weekly workout plan with sets, reps and rest. Use for "make me a 3 day beginner gym plan", "home workout with just dumbbells, 30 minutes", "a 5 day muscle building split", "I have a pull-up bar and dumbbells", "a 20 minute workout" (days=1 gives a single session), "a workout plan to lose weight", "couch to 5K" or "a 10K running plan" (a 10K or longer goal gets the build-up plan unless the user says they are a beginner), or "give me another one" (send the same inputs with seed plus one). Either pass the fields, or pass the user's words in q and the service reads days, minutes, level, goal and equipment from them. Fields win over q. Running plans also return weeks: every week's sessions (a 9-week walk-run build to 30 minutes of running for beginners; easy, interval, tempo and long runs for intermediates), with week 1 laid out in days.

Input parameters:

- `country` (string): Two-letter country code for kit links (US, GB, IE, CA, AU). Defaults to the visitor's country.
- `days` (integer): Days per week, 1 to 6 (1 gives a single session). More than 6 (or "every day") is planned as 6 with a rest day, and the answer says so in say and in plan.days_asked and plan.days_note. Default 3.
- `equipment` (string): Comma separated: none (default), dumbbells, barbell, gym, bands, kettlebell, pullupbar (a pull-up bar), jumprope.
- `goal` (string): strength, muscle, general (default), conditioning (use this for fat loss or weight loss requests), running or mobility.
- `level` (string): beginner (default) or intermediate. Advanced is treated as intermediate.
- `minutes` (integer): Minutes per session including warm-up, 15 to 120. Default 45.
- `q` (string): The user's request in their own words, for example "3 day beginner gym plan, 45 minutes".
- `seed` (integer): 0 to 9999. Change it for a different mix of exercises with the same setup. Default 0.

### `planmyworkout_get_exercise` (~120 tokens)

Plan My Workout: How to do one exercise, the muscles it works and a picture

Plan My Workout. How to do one exercise, the muscles it works and a picture. Use for "how do I do a Romanian deadlift?", "what is a goblet squat?", "what muscles do face pulls work?". Understands everyday names like RDL, press-up and lat pulldown. muscles.main lists the muscles the move mainly works (hand-checked for the main lifts) and muscles.also the ones that help

Input parameters:

- `name` (string, required): The exercise, for example Romanian deadlift or push-up.

### `planmyworkout_list_exercises` (~178 tokens)

Plan My Workout: Exercises for a muscle and the equipment the user has

Plan My Workout. Exercises for a muscle and the equipment the user has. Use for "what can I do for chest with no equipment?", "glute exercises with bands", "back exercises with dumbbells", "some mobility moves". Give a muscle, equipment or both

Input parameters:

- `equipment` (string): none, dumbbells, barbell, gym, bands, kettlebell, pullupbar or jumprope.
- `level` (string): beginner leaves out harder moves.
- `limit` (integer): 1 to 10. Default 8.
- `muscle` (string): chest, back, shoulders, arms, biceps, triceps, legs, quads, hamstrings, glutes, calves, core (or abs), cardio or mobility. Also forearms (grip) and traps.

### `medbillcheck_check_price` (~442 tokens)

Med Bill Check: Compare a charge with Medicare's rate for one service

Med Bill Check. Compare a charge with Medicare's rate for one service. Use when someone asks whether a charge is high or what Medicare pays, for example "I was charged $450 for a 99213 office visit in Texas, is that too high?" or "what does Medicare pay for an MRI of the knee?". Pass the billing code if they have it, otherwise the service in plain words as q. Returns Medicare's 2026 rate for the state (or the city's own pricing area when city is given) in medicare_2026, the amount providers typically billed in 2024, and how many times the Medicare rate the charge is. For care in a hospital, hospital_facility_2026 gives Medicare's national rate for the hospital's own facility fee and comparison.compared_with says what the charge was set against. Dental work has no Medicare rate and returns 404 with a pointer to a free dental cost source

Input parameters:

- `billed_by` (string): Whose bill the charge is on when the service was in a hospital: hospital (the hospital's own facility charge) or doctor (the doctor's or physician group's bill). Leave out if not known: the charge is…
- `charged` (number): The amount on the bill in US dollars, like 450.
- `city` (string): City, for states where Medicare pays big cities differently, like Houston, Chicago, Miami or Los Angeles. Other places use the rest-of-state rate.
- `code` (string): Five-character CPT or HCPCS code from the bill, like 99213, 73721 or G0121.
- `q` (string): The service in plain words, used when there is no code, like "knee MRI" or "ER visit".
- `setting` (string): office (clinic, office, imaging center) or facility (hospital or surgery center). Leave out to use the usual setting.
- `state` (string): US state name or two-letter code, like Texas or TX. Med Bill Check is for US bills; a UK place gets a short answer pointing to UK sources.

### `medbillcheck_search_services` (~130 tokens)

Med Bill Check: Find billing codes and Medicare rates by plain words

Med Bill Check. Find billing codes and Medicare rates by plain words. Use when someone describes a service but has no code, or asks what a code means, for example "what's the code for a colonoscopy?", "how much does Medicare pay for a chest x-ray in Ohio?" or "what is code 99214?". Returns up to eight matching codes with Medicare's typical allowed and billed amounts

Input parameters:

- `q` (string, required): Plain words or a code, like "hernia repair" or 99214.
- `state` (string): US state name or two-letter code.

### `medbillcheck_check_whole_bill` (~336 tokens)

Med Bill Check: Check several lines of an itemized bill at once

Med Bill Check. Check several lines of an itemized bill at once. Use when someone reads out or pastes several lines from an itemized bill, for example "my ER bill has 99284 for $2,500, 85025 twice for $120 and 36415 three times, does anything look off?". Pass the lines as code, optional x and units, then the amount. Returns each line against Medicare's rate, totals, and questions_to_ask: repeated codes, units above Medicare's automated daily limit, the highest visit levels, hospital clinic facility fees and charges far above what providers typically bill. Lines of a hospital bill (any bill with an ER visit on it, or setting=facility) are compared with Medicare's hospital outpatient rate plus the doctor's part; each such line says compared_with.

Input parameters:

- `billed_by` (string): Whose bill the charge is on when the service was in a hospital: hospital (the hospital's own facility charge) or doctor (the doctor's or physician group's bill). Leave out if not known: the charge is…
- `city` (string): City, for big cities with their own Medicare rates.
- `lines` (string, required): Up to 15 bill lines separated by commas: code, then x and units if more than one, then the amount. Example: 99284:2500, 85025x2:120, 36415:45.
- `setting` (string): office or facility. Leave out if not known.
- `state` (string): US state name or two-letter code.

### `medbillcheck_look_up_hospital` (~155 tokens)

Med Bill Check: Whether a hospital is nonprofit, for financial assistance

Med Bill Check. Whether a hospital is nonprofit, for financial assistance. Use for "is St. Luke's in Boise a nonprofit?" or "does this hospital have to offer charity care?". Returns how Medicare lists the hospital's ownership (nonprofit, government, for-profit), its city and main phone number, and what that means for financial assistance. Nonprofit hospitals must have a financial assistance policy.

Input parameters:

- `city` (string): City, to pick between hospitals with the same name.
- `name` (string, required): Hospital name as on the bill, like St. Luke's Regional Medical Center.
- `state` (string): US state name or two-letter code. Recommended, since many hospitals share names.

### `medbillcheck_draft_bill_letter` (~416 tokens)

Med Bill Check: Draft a letter to a billing office for the user to send

Med Bill Check. Draft a letter to a billing office for the user to send. Use for "help me dispute this bill", "write a letter asking for an itemized bill", "can I ask for a discount?" or "how do I apply for charity care?". Returns a letter as plain text with [brackets] for anything not given, tips, and the user's No Surprises Act and Good Faith Estimate rights with official CMS links. It never sends anything.

Input parameters:

- `account` (string): Account or invoice number on the bill.
- `amount` (number): Amount charged or balance due, in US dollars.
- `billed_by` (string): Whose bill the charge is on when the service was in a hospital: hospital (the hospital's own facility charge) or doctor (the doctor's or physician group's bill). Leave out if not known: the charge is…
- `code` (string): Billing code of the charge. With amount, a dispute letter adds Medicare's benchmark (for a hospital charge, the hospital outpatient rate as well as the doctor's part).
- `date` (string): Date of service.
- `insured` (string): no if paying without insurance (self-pay), for a discount letter.
- `name` (string): Patient or account holder name.
- `provider` (string): Hospital, clinic or provider name.
- `reason` (string): A sentence on what the user wants checked, for a dispute letter.
- `service` (string): The service in plain words.
- `setting` (string): office or facility (hospital or surgery center), for the benchmark in a dispute letter. ER visits and hospital clinic visits count as facility anyway.
- `state` (string): US state, used for the benchmark in a dispute letter.
- `type` (string, required): itemized (ask for an itemized bill), dispute (ask for a charge to be reviewed), discount (prompt-pay or self-pay discount), or assistance (financial assistance or charity care).

### `appealmyclaim_get_appeal_rights` (~202 tokens)

Appeal My Claim: Appeal rights, steps and free help for a plan type and state

Appeal My Claim. Appeal rights, steps and free help for a plan type and state. Use for "what are my appeal rights in California?", "my insurer denied my claim, what can I do?" or "how do Medicare appeals work?". Returns who decides, the steps (internal appeal, external review, Medicare levels or Medicaid fair hearing), deadlines, and where to get free help, including the state insurance department. If the plan type is not known, leave it out to get the rules for most private plans

Input parameters:

- `plan_type` (string): marketplace, employer, employer_insured, employer_self_funded, medicare, medicare_advantage, part_d or medicaid. Everyday words work too, like "job", "Obamacare" or "Medi-Cal". Default: most private…
- `state` (string): US state name or two-letter code, like California or CA. Puerto Rico works too.

### `appealmyclaim_get_appeal_deadlines` (~167 tokens)

Appeal My Claim: How long someone has to appeal, and how fast the plan must decide

Appeal My Claim. How long someone has to appeal, and how fast the plan must decide. Use for "how long do I have to appeal?", "when is my appeal due?" or "how fast does my insurer have to answer?". With the date on the denial notice, gives an approximate file-by date. Remind the user to check the date on their own notice

Input parameters:

- `denial_date` (string): Date on the denial notice, like 2026-09-01, 09/01/2026 or September 1, 2026.
- `plan_type` (string): Same values as /v1/rights. Default: most private plans.
- `urgent` (string): yes if waiting could seriously harm the person's health.

### `appealmyclaim_explain_denial_code` (~169 tokens)

Appeal My Claim: Explain the denial codes on an Explanation of Benefits

Appeal My Claim. Explain the denial codes on an Explanation of Benefits. Use for "my EOB says CO-50, what does that mean?", "what is denial code PR 204?" or "what does N130 mean?". Returns each code in plain words, who usually fixes it (the provider's billing office, an appeal, or the user), whether the provider can bill the user for it (from the group code CO, PR, OA or PI), and a letter link when an appeal fits.

Input parameters:

- `code` (string, required): One to four codes from the notice, like CO-50, PR 204, 197 or N130.
- `plan_type` (string): Same values as /v1/rights. Carried into the letter link.

### `appealmyclaim_draft_appeal_letter` (~366 tokens)

Appeal My Claim: Draft an appeal letter for the user to review and send

Appeal My Claim. Draft an appeal letter for the user to review and send. Use for "my insurer denied my MRI as not medically necessary, help me appeal" or "write an appeal letter for an out-of-network denial". Returns a letter as plain text with [brackets] for anything not given, a checklist of what to attach (denial notice, doctor's letter of medical necessity, records), and tips. It never sends or files anything.

Input parameters:

- `claim` (string): Claim or reference number.
- `date` (string): Date of service.
- `denial_code` (string): The reason code on the notice, like CO-50 or PR-197. Picks the reason when reason is left out, and is quoted in the letter.
- `denial_date` (string): Date on the denial notice.
- `details` (string): A sentence or two in the user's words on why the care should be covered.
- `doctor` (string): Treating doctor's name.
- `member_id` (string): Member ID or Medicare number.
- `name` (string): Member's name.
- `plan` (string): Insurer or plan name.
- `plan_type` (string): Same values as /v1/rights. Changes the wording for Medicare.
- `provider` (string): Hospital, clinic or provider name.
- `reason` (string): Why the claim was denied: medical_necessity, emergency (said it wasn't an emergency), experimental, out_of_network, prior_auth, coding or generic. Plain words work too. Required unless denial_code is…
- `service` (string): The care that was denied, like "MRI of the right knee".
- `urgent` (string): yes to ask for an expedited review.

### `jobspotter_search_jobs` (~332 tokens)

Job Spotter: Search current job listings

Job Spotter. Search current job listings. Use for "find remote Python jobs", "marketing jobs in New York", "junior data analyst jobs posted this week", "senior software engineer jobs in London", "nurse jobs in Manchester". Put the job words in what and the place in where. Everyday phrasing in what also works: level words (junior, senior), "remote", "in <city>" and "this week" are picked out. Listings from Remotive, Himalayas, Jobicy and Remote OK must be credited to them, which `say` already does.

Input parameters:

- `country` (string): US or UK, when the place exists in both (Birmingham, Manchester, Cambridge) and the user's country is known. Optional.
- `level` (string): entry (junior, graduate, intern), mid or senior.
- `limit` (integer): How many results, 1 to 10. Default 10.
- `posted_within_days` (integer): Only jobs posted in the last N days, 1 to 90. Default 30. Use 7 for "this week".
- `what` (string): Job title, skill or field, for example "python developer" or "marketing". Required unless where is given.
- `where` (string): A city (New York, Austin, TX, London, Birmingham, UK), a US state (Texas), a UK county or region (Kent, Yorkshire), a UK postcode, a country (USA, UK, Germany), "remote", or remote in a country ("rem…

### `jobspotter_get_job` (~156 tokens)

Job Spotter: Details for one job from a search result

Job Spotter. Details for one job from a search result. Use when the user asks about one of the results, for example "tell me more about the second one" or "what's the apply link for the Uber job?". Pass the id from a /v1/jobs result exactly as given; ids carry what is needed, so they keep working later. NHS Jobs and Teaching Vacancies results include the closing date

Input parameters:

- `id` (string, required): The id from a /v1/jobs result, copied exactly, for example muse-22049500, remotive-2091141 or nhsjobs-C9413-26-0725. Some ids are longer, with a ~ and a code after it.

### `syncmycycle_get_todays_phase` (~415 tokens)

Sync My Cycle: Today's cycle phase, with workout and food ideas

Sync My Cycle. Today's cycle phase, with workout and food ideas. Use when the user asks what phase they are in, what workout or food suits them today, or why their energy is up or down, for example "what phase am I in, my last period started September 12th" or "what should I train today?". Needs the first day of their last period. Not for getting pregnant, fertile days, ovulation timing, contraception or pregnancy: this is general wellbeing only, not for pregnancy planning or contraception, so suggest a doctor or pharmacist. When `period_may_be_late` is true the say line says the period may be late and suggests checking with a doctor

Input parameters:

- `country` (string): Two-letter country code (UK is read as GB). Sets the kit links (US, GB and IE get local Amazon links) and the time zone for today. Pass it for users outside the US. Default from the request.
- `cycle_length` (integer): Usual days from one period start to the next, 20 to 45. Default 28.
- `date` (string): Day to ask about, YYYY-MM-DD, a real calendar day. Default today where the user is: from tz, else country, else the request, else UTC.
- `diet` (string): Comma separated: vegetarian, vegan, pescatarian, halal. Food ideas are filtered to suit.
- `last_period` (string, required): First day of the user's most recent period, YYYY-MM-DD. Must be within the last 120 days.
- `last_period_start` (string): Older name for last_period, kept for existing callers. Use last_period.
- `period_length` (integer): Usual days of bleeding, 2 to 10. Default 5.
- `tz` (string): The user's IANA time zone, for example Europe/London or America/Chicago, so today is the user's today. Optional: country is enough in most places.

### `syncmycycle_get_week_ahead` (~392 tokens)

Sync My Cycle: The days ahead by phase

Sync My Cycle. The days ahead by phase. Use when the user wants to plan training or meals for the week, for example "plan my training this week around my cycle". Returns each day's likely phase, workout focus, intensity and food focus. Not for getting pregnant, fertile days, ovulation timing, contraception or pregnancy: this is general wellbeing only, not for pregnancy planning or contraception, and it is not a fertility calendar. When `period_may_be_late` is true, `days` is empty and the say line suggests checking with a doctor

Input parameters:

- `country` (string): Two-letter country code (UK is read as GB), used for the time zone of today. Pass it for users outside the US.
- `cycle_length` (integer): Usual cycle length, 20 to 45. Default 28.
- `date` (string): First day of the plan, YYYY-MM-DD, a real calendar day. Default today where the user is: from tz, else country, else the request, else UTC.
- `days` (integer): How many days, a whole number from 1 to 35. Default 7.
- `diet` (string): Accepted for symmetry with /v1/today; the week view has no food list, so it has no effect here.
- `last_period` (string, required): First day of the user's most recent period, YYYY-MM-DD. Must be within the last 120 days.
- `last_period_start` (string): Older name for last_period, kept for existing callers. Use last_period.
- `period_length` (integer): Usual days of bleeding, 2 to 10. Default 5.
- `tz` (string): The user's IANA time zone, for example Europe/London or America/Chicago, so today is the user's today. Optional: country is enough in most places.

### `syncmycycle_list_phases` (~76 tokens)

Sync My Cycle: What each phase usually feels like, with workout and food ideas

Sync My Cycle. What each phase usually feels like, with workout and food ideas. Use for general questions about cycle syncing that need no dates, for example "what should I eat in my luteal phase?". Not for conception, fertile days, contraception or pregnancy: general wellbeing only, not for pregnancy planning or contraception

### `wardrobeconnect_find_clothes` (~457 tokens)

Wardrobe Connect: Find clothes that match a description

Wardrobe Connect. Find clothes that match a description. Use when the user describes a piece of clothing they want ("black pleated wide-leg trousers", "cream cable-knit jumper like the one I saved"). Natural requests are fine ("a navy midi wrap dress for a summer wedding under £60 in a size 12"): the occasion is kept out of the search and returned in `occasion`, and a price or size in the words is used when max_price or size is not passed. Returns eBay listings in the Clothing, Shoes and Accessories category, closest matches first and then cheapest first (from a best-match and a price-sorted search), plus search links for other shops and a Facebook Marketplace search phrase. Listings must match the colour and fabric named, the same kind of garment (by title and by eBay category, so socks never answer a search for trainers), and men's or women's if given; kids' items only when asked for. Adult, fetish and costume listings are never shown, repeat listings of the same item count once, and listings far below the typical price for the search (usually bait or junk) are left out

Input parameters:

- `condition` (string): new, used (pre-owned) or any. Default any. pre-owned and second-hand are read as used.
- `country` (string): Two-letter country code. Defaults to where the request comes from. Supported: US, GB, IE, CA, AU, DE, FR, IT, ES.
- `max_price` (number): Most the user wants to pay, in their local currency, shipping included.
- `q` (string, required): A clear description of the item: colour, type, fabric or style, brand if known.
- `size` (string): The user's size, for example M, XL, 12, UK 9, US 8.5, EU 39 or W32. Numbers without UK, US or EU are read in the country's usual sizes. Dress and shoe sizes are converted between UK, US and EU, and d…

### `wardrobeconnect_find_clothes_by_image` (~281 tokens)

Wardrobe Connect: Find clothes that look like a picture

Wardrobe Connect. Find clothes that look like a picture. Use when the user shares or points at a picture of an outfit or item (a Pinterest pin, a saved post, a photo). Give the image's direct https link. Returns visually similar eBay listings from the Clothing, Shoes and Accessories category only, in eBay's look-alike order. If the picture does not look like one piece of clothing (the results are scattered across unrelated kinds), `matches` is empty and the say line asks what the item is. Adding a short description in q is strongly recommended: results must then match it, which removes look-alikes of the wrong kind

Input parameters:

- `condition` (string): any, new or used.
- `country` (string): Two-letter country code for the eBay site and currency, for example US or GB.
- `image_url` (string, required): Direct https link to a JPEG, PNG or WebP picture, 6 MB at most.
- `max_price` (number): Highest price, in the local currency.
- `q` (string): Which item in the picture, for example "the camel coat". Results must match it, and it is used as a fallback text search.
- `size` (string): Clothing or shoe size to match, for example M, 10 or UK 8.

### `formguide_get_team` (~200 tokens)

Form Guide: A club's league position, recent form and next games

Form Guide. A club's league position, recent form and next games. Use for "how are Arsenal doing?", "what's Spurs' form?", "when do Birmingham play next?"

Input parameters:

- `country` (string): Two-letter country code for the shirt link (US, GB and IE get local Amazon links). Default from the request. When passed as US or CA, the say line also gives the next kick-off in US Eastern time.
- `league` (string): One of: premier league, championship, la liga, bundesliga, serie a, ligue 1 (common variants like EPL or German Bundesliga work too). Any other league returns 404. Only needed if two clubs share a na…
- `q` (string): Older name for team, kept for existing callers. Use team.
- `team` (string, required): Club name as the user said it, up to 80 characters. Nicknames and small typos are fine.

### `formguide_get_fixtures` (~199 tokens)

Form Guide: Upcoming fixtures for a club or a league

Form Guide. Upcoming fixtures for a club or a league. Use for "who do Liverpool play next?" or "what's on in La Liga this weekend?". Without team or league, gives the Premier League

Input parameters:

- `country` (string): Pass US or CA to add US Eastern kick-off times to the say line (and to each fixture's us_eastern, which is always there when a time is known).
- `days` (integer): How far ahead, a whole number from 1 to 60. Default 21. If nothing falls in the window (an international break), the next fixtures are returned anyway.
- `league` (string): One of: premier league, championship, la liga, bundesliga, serie a, ligue 1 (common variants like EPL or German Bundesliga work too). Any other league returns 404.
- `team` (string): A club name, for example Liverpool or Real Madrid.

### `formguide_get_results` (~145 tokens)

Form Guide: Latest results for a club, or the last round of a league

Form Guide. Latest results for a club, or the last round of a league. Use for "how did Chelsea get on?" or "what were the Serie A results?". Without team or league, gives the Premier League

Input parameters:

- `league` (string): One of: premier league, championship, la liga, bundesliga, serie a, ligue 1 (common variants like EPL or German Bundesliga work too). Any other league returns 404.
- `n` (integer): How many of the club's results, a whole number from 1 to 20. Default 5.
- `team` (string): A club name, for example Liverpool or Real Madrid.

### `formguide_get_table` (~99 tokens)

Form Guide: League table

Form Guide. League table. Use for "show me the Championship table" or "who is top of La Liga?". Points include official deductions; a deducted club's row has points_deducted

Input parameters:

- `league` (string): One of: premier league, championship, la liga, bundesliga, serie a, ligue 1 (common variants like EPL or German Bundesliga work too). Any other league returns 404. Default premier league.

### `formguide_compare_teams` (~168 tokens)

Form Guide: Two clubs side by side before they meet

Form Guide. Two clubs side by side before they meet. Use for "Arsenal v Leeds, how do they compare?". Gives positions, form, goals, this season's meeting and the next date they play. Stats only, not betting advice

Input parameters:

- `away` (string, required): A different club from home.
- `country` (string): Pass US or CA to add US Eastern kick-off times to the say line (and to each fixture's us_eastern, which is always there when a time is known).
- `home` (string, required): The home club, for example Arsenal.
- `team1` (string): Older name for home, kept for existing callers. Use home.
- `team2` (string): Older name for away, kept for existing callers. Use away.

### `bookslikethis_get_book` (~166 tokens)

Books Like This: A book's details and any film or series made from it

Books Like This. A book's details and any film or series made from it. Use for "tell me about Project Hail Mary", "is The Name of the Wind being made into a film?", "how long is Dune?". Misspellings are fine. If screen_checked is false, the film and TV check could not run just now, so the film and TV status is unknown

Input parameters:

- `author` (string): The author's name, to pin down the right book or list their books.
- `country` (string): For buy links: US, GB, IE, CA, AU. Default from the request.
- `title` (string, required): The book's title, 2 to 120 characters. Add author for very short or common titles.

### `bookslikethis_find_similar_books` (~293 tokens)

Books Like This: Books like one the user enjoyed, or for a genre

Books Like This. Books like one the user enjoyed, or for a genre. Use for "books like The Martian" or "a good cosy mystery". Suggestions are English-language books for the same readers (picture book, children, young adult or adult), one per author and one per series. Well-read books of the same kind come first (picked_from: shelf, and because names the kind, for example "celebrated dystopian novels"), then books sharing specific subjects on Open Library (picked_from: subjects, and because lists the shared subjects). Novels never get self-help, textbooks, anthologies, study guides, category romance lines or explicit books as suggestions, and popular books are preferred over obscure ones. Other books by the same author are left out unless same_author=true. Give title or subject; common other titles work (1984, The Sorcerer's Stone)

Input parameters:

- `author` (string): The author's name, to pin down the right book or list their books.
- `country` (string): Two-letter country code for the shop links, for example US or GB.
- `same_author` (boolean): True to include more books by the same author.
- `subject` (string): A genre or theme, for example space opera, cozy mystery, heist.
- `title` (string): A book the user liked, 2 to 120 characters.

### `bookslikethis_get_author_books` (~89 tokens)

Books Like This: An author's books, newest first

Books Like This. An author's books, newest first. Use for "what has Andy Weir written?" or "Sally Rooney's books"

Input parameters:

- `author` (string, required): The author's name, to pin down the right book or list their books.
- `country` (string): For buy links: US, GB, IE, CA, AU. Default from the request.

### `talmud_get_today` (~77 tokens)

Talmud Scroller: Today's reading, line by line (same as the app shows today)

Talmud Scroller. Today's reading, line by line (same as the app shows today). Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).

### `talmud_list_readings` (~52 tokens)

Talmud Scroller: All curated daily readings and plans

Talmud Scroller. All curated daily readings and plans. Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

### `talmud_get_reading` (~91 tokens)

Talmud Scroller: One reading or plan, line by line

Talmud Scroller. One reading or plan, line by line. Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

Input parameters:

- `id` (string, required): A reading or plan id from /readings, or a plan name such as "japji" or "The Gita in 18 Days".

### `talmud_search_readings` (~72 tokens)

Talmud Scroller: Search the curated readings, best match first

Talmud Scroller. Search the curated readings, best match first. Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

Input parameters:

- `q` (string, required): Words to search for, for example kindness or Shabbat.

### `talmud_get_talmud_text` (~108 tokens)

Talmud Scroller: Original text of any Talmud page or passage, or a Mishnah such as Pirkei...

Talmud Scroller. Original text of any Talmud page or passage, or a Mishnah such as Pirkei Avot 1:14, from Sefaria

Input parameters:

- `ref` (string, required): A tractate and page, for example "Berakhot 2a", "Bava Metzia 59b" or "Shabbat 31a:6". Spoken forms such as "Bava Metzia page 59 b" also work.

### `talmud_get_card` (~114 tokens)

Talmud Scroller: Today's reading one line at a time, for voice

Talmud Scroller. Today's reading one line at a time, for voice.. Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).
- `n` (integer): Which card, starting at 1. Defaults to 1.
- `reading` (string): A reading or plan id from /readings. Defaults to today's reading.

### `talmud_list_books` (~60 tokens)

Talmud Scroller: The whole books in the Library that can be read a passage at a time

Talmud Scroller. The whole books in the Library that can be read a passage at a time. Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

### `talmud_read_book` (~235 tokens)

Talmud Scroller: Follow next for the next passage; it carries on into the next chapter

Talmud Scroller. Follow next for the next passage; it carries on into the next chapter. Talmud: daily readings, plans, search and original text lookup; whole books from the Library, read a passage at a time

Input parameters:

- `book` (string, required): Book id or title from /books, for example pirkei-avot, bekhorot.
- `n` (integer): Passage within the section, starting at 1.
- `ref` (string): Optional: jump straight to a passage by its reference, for example "Havamal 139", "Meditations 4.3", "Gita 2.47", "Iliad 1.5" or "10b". Overrides section and n.
- `section` (string): Chapter, book, poem, letter or daf to start at, as listed in the book (for example 5, "chapter 2", "havamal", or 10b for the second side of a daf). Defaults to the beginning; Bekhorot defaults to tod…

### `gurbani_get_today` (~79 tokens)

Scroll the Gurbani: Today's reading, line by line (same as the app shows today)

Scroll the Gurbani. Today's reading, line by line (same as the app shows today). Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).

### `gurbani_list_readings` (~54 tokens)

Scroll the Gurbani: All curated daily readings and plans

Scroll the Gurbani. All curated daily readings and plans. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

### `gurbani_get_reading` (~93 tokens)

Scroll the Gurbani: One reading or plan, line by line

Scroll the Gurbani. One reading or plan, line by line. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `id` (string, required): A reading or plan id from /readings, or a plan name such as "japji" or "The Gita in 18 Days".

### `gurbani_search_readings` (~79 tokens)

Scroll the Gurbani: Search the curated readings, best match first

Scroll the Gurbani. Search the curated readings, best match first. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `q` (string, required): Words or a bani's name to search for, for example Japji or humility.

### `gurbani_get_ang` (~87 tokens)

Scroll the Gurbani: Every line on an Ang in Gurmukhi with transliteration and English

Scroll the Gurbani. Every line on an Ang in Gurmukhi with transliteration and English. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `ang` (integer, required): The Ang (page) of Sri Guru Granth Sahib, 1 to 1430.

### `gurbani_get_shabad` (~77 tokens)

Scroll the Gurbani: A whole shabad by BaniDB id, with transliteration and English

Scroll the Gurbani. A whole shabad by BaniDB id, with transliteration and English. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `id` (integer, required): A BaniDB shabad ID.

### `gurbani_get_card` (~116 tokens)

Scroll the Gurbani: Today's reading one line at a time, for voice

Scroll the Gurbani. Today's reading one line at a time, for voice.. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).
- `n` (integer): Which card, starting at 1. Defaults to 1.
- `reading` (string): A reading or plan id from /readings. Defaults to today's reading.

### `gurbani_list_books` (~62 tokens)

Scroll the Gurbani: The whole books in the Library that can be read a passage at a time

Scroll the Gurbani. The whole books in the Library that can be read a passage at a time. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

### `gurbani_read_book` (~235 tokens)

Scroll the Gurbani: Follow next for the next passage; it carries on into the next chapter

Scroll the Gurbani. Follow next for the next passage; it carries on into the next chapter. Gurbani: daily shabad, plans, search, Ang and shabad lookup; whole books from the Library, read a passage at a time

Input parameters:

- `book` (string, required): Book id or title from /books, for example japji, sukhmani.
- `n` (integer): Passage within the section, starting at 1.
- `ref` (string): Optional: jump straight to a passage by its reference, for example "Havamal 139", "Meditations 4.3", "Gita 2.47", "Iliad 1.5" or "10b". Overrides section and n.
- `section` (string): Chapter, book, poem, letter or daf to start at, as listed in the book (for example 5, "chapter 2", "havamal", or 10b for the second side of a daf). Defaults to the beginning; Bekhorot defaults to tod…

### `gita_get_today` (~76 tokens)

Gita Scroller: Today's reading, line by line (same as the app shows today)

Gita Scroller. Today's reading, line by line (same as the app shows today). Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).

### `gita_list_readings` (~51 tokens)

Gita Scroller: All curated daily readings and plans

Gita Scroller. All curated daily readings and plans. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

### `gita_get_reading` (~90 tokens)

Gita Scroller: One reading or plan, line by line

Gita Scroller. One reading or plan, line by line. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `id` (string, required): A reading or plan id from /readings, or a plan name such as "japji" or "The Gita in 18 Days".

### `gita_search_readings` (~70 tokens)

Gita Scroller: Search the curated readings, best match first

Gita Scroller. Search the curated readings, best match first. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `q` (string, required): Words to search for, for example duty or fear.

### `gita_get_verse` (~94 tokens)

Gita Scroller: A verse or range (e.g

Gita Scroller. A verse or range (e.g. 47-51) in Sanskrit with transliteration and English. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `chapter` (integer, required): Chapter number, 1 to 18.
- `verse` (string, required): For example: 47-51

### `gita_get_chapter` (~70 tokens)

Gita Scroller: A whole chapter in Sanskrit with transliteration and English

Gita Scroller. A whole chapter in Sanskrit with transliteration and English. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `chapter` (integer, required): Chapter number, 1 to 18.

### `gita_get_card` (~113 tokens)

Gita Scroller: Today's reading one line at a time, for voice

Gita Scroller. Today's reading one line at a time, for voice.. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).
- `n` (integer): Which card, starting at 1. Defaults to 1.
- `reading` (string): A reading or plan id from /readings. Defaults to today's reading.

### `gita_list_books` (~59 tokens)

Gita Scroller: The whole books in the Library that can be read a passage at a time

Gita Scroller. The whole books in the Library that can be read a passage at a time. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

### `gita_read_book` (~228 tokens)

Gita Scroller: Follow next for the next passage; it carries on into the next chapter

Gita Scroller. Follow next for the next passage; it carries on into the next chapter. Bhagavad Gita: daily verses, plans, search and verse lookup; whole books from the Library, read a passage at a time

Input parameters:

- `book` (string, required): Book id or title from /books, for example gita.
- `n` (integer): Passage within the section, starting at 1.
- `ref` (string): Optional: jump straight to a passage by its reference, for example "Havamal 139", "Meditations 4.3", "Gita 2.47", "Iliad 1.5" or "10b". Overrides section and n.
- `section` (string): Chapter, book, poem, letter or daf to start at, as listed in the book (for example 5, "chapter 2", "havamal", or 10b for the second side of a daf). Defaults to the beginning; Bekhorot defaults to tod…

### `lore_get_today` (~86 tokens)

Scroll the Lore: Today's reading, line by line (same as the app shows today)

Scroll the Lore. Today's reading, line by line (same as the app shows today). Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).

### `lore_list_readings` (~61 tokens)

Scroll the Lore: All curated daily readings and plans

Scroll the Lore. All curated daily readings and plans. Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

### `lore_get_reading` (~100 tokens)

Scroll the Lore: One reading or plan, line by line

Scroll the Lore. One reading or plan, line by line. Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

Input parameters:

- `id` (string, required): A reading or plan id from /readings, or a plan name such as "japji" or "The Gita in 18 Days".

### `lore_search_readings` (~84 tokens)

Scroll the Lore: Search the curated readings, best match first

Scroll the Lore. Search the curated readings, best match first. Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

Input parameters:

- `q` (string, required): Words or a name to search for, for example Loki or Persephone.

### `lore_get_card` (~123 tokens)

Scroll the Lore: Today's reading one line at a time, for voice

Scroll the Lore. Today's reading one line at a time, for voice.. Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).
- `n` (integer): Which card, starting at 1. Defaults to 1.
- `reading` (string): A reading or plan id from /readings. Defaults to today's reading.

### `lore_list_books` (~69 tokens)

Scroll the Lore: The whole books in the Library that can be read a passage at a time

Scroll the Lore. The whole books in the Library that can be read a passage at a time. Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

### `lore_read_book` (~241 tokens)

Scroll the Lore: Follow next for the next passage; it carries on into the next chapter

Scroll the Lore. Follow next for the next passage; it carries on into the next chapter. Greek and Norse myth: daily readings explained line by line, plans, search, and the whole Theogony, Iliad, Odyssey and Poetic Edda read a passage at a time

Input parameters:

- `book` (string, required): Book id or title from /books, for example iliad, odyssey.
- `n` (integer): Passage within the section, starting at 1.
- `ref` (string): Optional: jump straight to a passage by its reference, for example "Havamal 139", "Meditations 4.3", "Gita 2.47", "Iliad 1.5" or "10b". Overrides section and n.
- `section` (string): Chapter, book, poem, letter or daf to start at, as listed in the book (for example 5, "chapter 2", "havamal", or 10b for the second side of a daf). Defaults to the beginning; Bekhorot defaults to tod…

### `stoics_get_today` (~96 tokens)

Stoic Scroller: Today's reading, line by line (same as the app shows today)

Stoic Scroller. Today's reading, line by line (same as the app shows today). The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).

### `stoics_list_readings` (~71 tokens)

Stoic Scroller: All curated daily readings and plans

Stoic Scroller. All curated daily readings and plans. The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

### `stoics_get_reading` (~110 tokens)

Stoic Scroller: One reading or plan, line by line

Stoic Scroller. One reading or plan, line by line. The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

Input parameters:

- `id` (string, required): A reading or plan id from /readings, or a plan name such as "japji" or "The Gita in 18 Days".

### `stoics_search_readings` (~90 tokens)

Stoic Scroller: Search the curated readings, best match first

Stoic Scroller. Search the curated readings, best match first. The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

Input parameters:

- `q` (string, required): Words to search for, for example anger or death.

### `stoics_get_card` (~133 tokens)

Stoic Scroller: Today's reading one line at a time, for voice

Stoic Scroller. Today's reading one line at a time, for voice.. The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).
- `n` (integer): Which card, starting at 1. Defaults to 1.
- `reading` (string): A reading or plan id from /readings. Defaults to today's reading.

### `stoics_list_books` (~79 tokens)

Stoic Scroller: The whole books in the Library that can be read a passage at a time

Stoic Scroller. The whole books in the Library that can be read a passage at a time. The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

### `stoics_read_book` (~253 tokens)

Stoic Scroller: Follow next for the next passage; it carries on into the next chapter

Stoic Scroller. Follow next for the next passage; it carries on into the next chapter. The Stoics: daily readings from Marcus Aurelius, Epictetus and Seneca explained line by line, plans, search, and the whole Meditations, Enchiridion and Seneca's letters read a passage at a time

Input parameters:

- `book` (string, required): Book id or title from /books, for example meditations, enchiridion.
- `n` (integer): Passage within the section, starting at 1.
- `ref` (string): Optional: jump straight to a passage by its reference, for example "Havamal 139", "Meditations 4.3", "Gita 2.47", "Iliad 1.5" or "10b". Overrides section and n.
- `section` (string): Chapter, book, poem, letter or daf to start at, as listed in the book (for example 5, "chapter 2", "havamal", or 10b for the second side of a daf). Defaults to the beginning; Bekhorot defaults to tod…

### `bible_get_today` (~61 tokens)

Bible Swipe: Today's reading, line by line (same as the app shows today)

Bible Swipe. Today's reading, line by line (same as the app shows today). Bible: daily readings, plans, search and passage lookup (World English Bible)

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).

### `bible_list_readings` (~36 tokens)

Bible Swipe: All curated daily readings and plans

Bible Swipe. All curated daily readings and plans. Bible: daily readings, plans, search and passage lookup (World English Bible)

### `bible_get_reading` (~75 tokens)

Bible Swipe: One reading or plan, line by line

Bible Swipe. One reading or plan, line by line. Bible: daily readings, plans, search and passage lookup (World English Bible)

Input parameters:

- `id` (string, required): A reading or plan id from /readings, or a plan name such as "japji" or "The Gita in 18 Days".

### `bible_search_readings` (~55 tokens)

Bible Swipe: Search the curated readings, best match first

Bible Swipe. Search the curated readings, best match first. Bible: daily readings, plans, search and passage lookup (World English Bible)

Input parameters:

- `q` (string, required): Words to search for, for example forgiveness or shepherd.

### `bible_get_passage` (~56 tokens)

Bible Swipe: Any verse, range, chapter or cross-chapter range (Genesis 1:1-2:3) of the...

Bible Swipe. Any verse, range, chapter or cross-chapter range (Genesis 1:1-2:3) of the World English Bible

Input parameters:

- `ref` (string, required): For example: John 3:16

### `bible_get_card` (~98 tokens)

Bible Swipe: Today's reading one line at a time, for voice

Bible Swipe. Today's reading one line at a time, for voice.. Bible: daily readings, plans, search and passage lookup (World English Bible)

Input parameters:

- `date` (string): Optional day as YYYY-MM-DD. Defaults to today (UTC).
- `n` (integer): Which card, starting at 1. Defaults to 1.
- `reading` (string): A reading or plan id from /readings. Defaults to today's reading.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/goodturnstudio-all/all-mcp#diagnostics

## Score history

- 2026-09-28: 69

## Common questions

### What is the Good Turn Studio (all tools) MCP server?

Good Turn Studio (all tools) is an MCP server listed in the public MCP registry as io.github.GoodTurnStudio/all. All 25 Good Turn Studio helpers in one server: money, health, jobs, travel, halal and scripture. This page covers its hosted endpoint (https://goodturn-mcp.pages.dev/all/mcp).

### Is the Good Turn Studio (all tools) MCP server safe to use?

Good Turn Studio (all tools) scores 69 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Good Turn Studio (all tools) MCP server expose?

Good Turn Studio (all tools) exposes 118 tools: mizan_screen_company, mizan_list_standards, mizan_purify_dividend, mizan_find_halal_alternatives, mizan_screen_portfolio, and 113 more. Their descriptions and schemas cost roughly 19,460 tokens of context every time the server is loaded.

### Does the Good Turn Studio (all tools) MCP server require authentication?

No. We connected to Good Turn Studio (all tools) without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Good Turn Studio (all tools) MCP server still maintained?

Good Turn Studio (all tools) is still listed as active in the MCP registry. We last reached this channel on 28 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://goodturn-mcp.pages.dev/all/mcp
- Repository: https://github.com/GoodTurnStudio/goodturn-mcp
- Website: https://goodturn-mcp.pages.dev/
- Changelog RSS feed: https://verifymcp.io/servers/goodturnstudio-all/all-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/goodturnstudio-all/all-mcp.json
- HTML version of this page: https://verifymcp.io/servers/goodturnstudio-all/all-mcp
