protogrid

Search / com.allowancesapi/per-diem-allowances

Allowances API

R1· needs a key

U.S. government per diem and overseas allowance rates from GSA, DTMO OCONUS and State DSSR tables.

v1.0.0 · active · website · descriptor JSON · versions

An agent can connect on its own if it already holds X_API_KEY, X_API_KEY.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Quality81new
Trust83of 100
Uptime, 30 days100%
Latency p50165 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "per-diem-allowances": {
      "type": "http",
      "url": "https://mcp.allowancesapi.com/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}",
        "Authorization": "${X_API_KEY}"
      }
    }
  }
}
claude mcp add --transport http per-diem-allowances https://mcp.allowancesapi.com/mcp --header "X-API-Key: ${X_API_KEY}" --header "Authorization: ${X_API_KEY}"
[mcp_servers.per-diem-allowances]
url = "https://mcp.allowancesapi.com/mcp"
env_http_headers = { "X-API-Key" = "X_API_KEY", "Authorization" = "X_API_KEY" }
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "per-diem-allowances": {
      "type": "remote",
      "url": "https://mcp.allowancesapi.com/mcp",
      "enabled": true,
      "headers": {
        "X-API-Key": "{env:X_API_KEY}",
        "Authorization": "{env:X_API_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "per-diem-allowances": {
      "type": "http",
      "url": "https://mcp.allowancesapi.com/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}",
        "Authorization": "${X_API_KEY}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=per-diem-allowances&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmFsbG93YW5jZXNhcGkuY29tL21jcCIsImhlYWRlcnMiOnsiWC1BUEktS2V5IjoiJHtYX0FQSV9LRVl9IiwiQXV0aG9yaXphdGlvbiI6IiR7WF9BUElfS0VZfSJ9fQ%3D%3D"
}
{
  "servers": {
    "per-diem-allowances": {
      "type": "http",
      "url": "https://mcp.allowancesapi.com/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}",
        "Authorization": "${X_API_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "per-diem-allowances": {
      "httpUrl": "https://mcp.allowancesapi.com/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}",
        "Authorization": "${X_API_KEY}"
      }
    }
  }
}
extensions:
  "per-diem-allowances":
    enabled: true
    name: "per-diem-allowances"
    type: streamable_http
    uri: "https://mcp.allowancesapi.com/mcp"
    headers:
      "X-API-Key": "${X_API_KEY}"
      "Authorization": "${X_API_KEY}"
    timeout: 300

Placeholders to fill from your own secret store: ${X_API_KEY}, ${X_API_KEY}. The registry never accepts secret values.

Quality 81 / 100new

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations43 of 43 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • warn
    tools.token_costabout 13,726 tokens to load every tool
  • warn
    tools.api_dump43 tools, 84% named like REST operations: looks like an API mapped one endpoint per tool
stabilityn/a · weight 15
  • n/a
    stability.changes, stability.rug_pulltool history recorded for 6 of the 7 days needed
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

43 tools, about 13,726 tokens to load them all · tool set 714b73c17f9c · tools last changed 2026-11-05 · checked 2026-11-07 17:28 UTC

Tool changes

  • get_gsa_fedroomsadded

    Lists current worldwide FedRooms hotels with name, address, postal city, state, postal code and country. Optional q matches every word as a case-insensitive literal substring across those fields. country filters by ISO alpha-2 code; results include country_iso_code. Paginate with offset and limit (maximum 200); total counts matches. as_of is the UTC download date. verification_url always links to GSA. No prices or availability; book through approved channels for the FedRooms rate.

  • get_userchangedannotations
  • get_latest_publicationschangedannotations
  • get_opm_paychangedannotations
  • search_opm_paychangedannotations
  • get_opm_locality_by_countychangedannotations
  • get_opm_localitieschangedannotations
  • get_fema_hotels_by_state_citychangedannotations
  • get_fema_hotels_by_zipcodechangedannotations
  • get_fema_hotel_by_idchangedannotations

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 83 / 100

no-repository
provenance55
liveness100
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-100% +updated-6d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.allowancesapi.com/mcp streamable-httpapi_key ${X_API_KEY}yes100%165 ms2025-11-252026-11-07

Tools (43)

calculate_mileage_reimbursementread-onlyCalculate mileage reimbursement with the official GSA rate in effect on the travel date (today if omitted). Provide a distance in miles and the vehicle type: automobile, airplane, motorcycle or moving. For automobile travel, say whether a government-furnished automobile was available, which selects the reduced rate. Returns the rate category, rate and effective date, and the amount rounded to the cent. Use get_mileage for the rates alone.
calculate_trip_per_diemread-onlyEstimates GSA CONUS per diem for a multi-stop trip: a day-by-day breakdown and totals of payable lodging and M&IE. Each stop has inclusive arrival and departure dates and a GSA destination ID or ZIP code, optionally the actual nightly lodging cost and meals to deduct. Applies the rate in effect each day, 75% M&IE on first and last days, the official meal deductions and the lodging cap (excess reported as overage). Not for Department of Defense or foreign travel.
cola_calculator_by_postcoderead-onlyCalculates the DSSR cost-of-living allowance (COLA) for a post: the COLA rate in percent and the annual and biweekly USD amounts for the given base salary and family size, today or on `date`. The post is identified by its five-digit DSSR post code (see get_dssr_locations_by_country). Use get_allowances for the COLA rate alone.
get_allowancesread-onlyReturns State Department (DSSR) allowance rates for every post in a country: cost-of-living (COLA), hardship differential, living quarters (LQA), danger pay and education allowances, plus each post's per diem, in force today or on `date`. `type` limits the result to some allowances. For one post use get_allowances_by_location or get_allowances_by_postcode; for Department of Defense rates use the DTMO tools.
get_allowances_by_locationread-onlyReturns DSSR allowances (COLA, hardship, LQA, danger pay, education, per diem) for one post in a country matched by name, case-insensitive and partial ('toky' finds Tokyo), today or on `date`. Find exact post names with get_dssr_locations_by_country or search_perdiem. Use get_allowances_by_postcode when the DSSR post code is known, get_allowances for every post in the country.
get_allowances_by_postcoderead-onlyReturns DSSR allowances (COLA, hardship, LQA, danger pay, education, per diem) for the post identified by its five-digit DSSR post code, today or on `date`. Post codes are the State Department's own identifiers and come back in every DSSR result, so this is the most precise lookup. Use get_allowances_by_location for a name, get_allowances for the whole country.
get_city_pair_locationsread-onlyReturns the airport or metropolitan codes GSA uses in City Pair airfare awards for the fiscal year of `date` (today by default), with city, state and country. GSA decides whether a city uses airport codes (DCA, IAD) or a metro code (WAS), so resolve codes here before get_city_pairs. `q` (3+ characters) matches a code exactly or a city or country name by substring. Fiscal years other than the current one depend on the plan.
get_city_pairsread-onlyReturns GSA City Pair Program contract airfares between two codes (see get_city_pair_locations) on `date`, today by default: every matching award with airline, service and one-way USD fares by category (YCA, CA, business and others; null means not offered), valid in either direction. Government contract prices, not live availability; domestic fares exclude passenger and security fees. Other fiscal years depend on the plan; there is no fallback to another date.
get_countriesread-onlyResolves a country name to its ISO alpha-2 code and lists the names of its DSSR posts; `q` matches the country name case-insensitively ('papua' finds PG). Use it before any tool that needs a country code. ZZ stands for Other Foreign Localities, not a country. Returns no rates.
get_countryread-onlyReturns one country by ISO alpha-2 code: its name, the names of its DSSR posts and State Department notes. Use get_countries to find the code from a name, and get_dssr_locations_by_country when the post codes are needed too. Returns no rates.
get_destination_by_idread-onlyReturns the metadata of one GSA destination rate area by numeric ID: GSA's display name, the defined geographic scope, county and state. ID 0 is the Standard CONUS area. No rates: use get_gsa_perdiem_by_destination for the rate on a date and get_destinations to browse IDs.
get_destinationsread-onlyReturns the paginated list of every GSA destination rate area with its numeric ID, display name, defined scope, county and state, ordered by ID (`offset`, `limit`; past the end is an empty list). Use the ID with get_gsa_perdiem_by_destination or calculate_trip_per_diem. No rates; a ZIP or state lookup is usually faster than browsing.
get_dssr_locationsread-onlyReturns a paginated list of every DSSR post with its country, ISO code and post name; `q` filters by case-insensitive substring. `total` counts every match regardless of `offset` and `limit`. Use it to find the exact post name for the by-location tools when the country is unknown; get_dssr_locations_by_country is shorter when it is known. Returns no rates.
get_dssr_locations_by_countryread-onlyReturns the DSSR posts of a country by ISO alpha-2 code, each with its name and five-digit post code (`external_id`), as needed by the by-location and by-postcode tools. Use get_countries to resolve a name to the code. Returns no rates.
get_dtmo_conus_locationsread-onlyReturns the DTMO per diem locations of a US state (US-XX code) with location name and county, as named in the Department of Defense CONUS table. Use it to find the name for the `q` filter of get_dtmo_perdiem_conus. Returns no rates. For other countries, Alaska, Hawaii and territories use get_dtmo_oconus_locations.
get_dtmo_oconus_locationsread-onlyReturns the DTMO per diem locations of a country by ISO alpha-2 code ('AU', 'BE'), as named in the Department of Defense OCONUS table. `location` filters by case-insensitive substring, taken literally (no wildcards); no match returns an empty list. Use the names for the `q` filter of get_dtmo_perdiem_oconus. Returns no rates.
get_dtmo_perdiem_conusread-onlyDepartment of Defense per diem for the continental U.S. by state code (e.g. 'TX'); Alaska, Hawaii and the territories are served by the OCONUS endpoint. Returns lodging, local and proportional meal rates, incidentals and the maximum per diem (lodging + meals + incidentals) per season. `q` filters by location name. `date` selects the rates in force on that day, `year` a fiscal year (Oct 1 to Sep 30); omit both for the current fiscal year.
get_dtmo_perdiem_oconusread-onlyDepartment of Defense per diem outside the continental U.S.: foreign countries by ISO alpha-2 code (e.g. 'PG'), and Alaska, Hawaii and U.S. territories by 'US-XX' code. Returns lodging, local and proportional meal rates, incidentals and the maximum per diem (lodging + meals + incidentals) per season. `q` filters by location name. `date` selects the rates in force on that day, `year` a fiscal year (Oct 1 to Sep 30); omit both for the current fiscal year.
get_fema_hotel_by_idread-onlyReturns one property on FEMA's Hotel and Motel National Master List by FEMA ID, or a 404 error when the ID is not listed: name, address, phone, property type, stories and sprinklers, with `as_of` the date of the list snapshot. Use it to confirm a hotel is fire-safe for reimbursed federal lodging. No rates.
get_fema_hotels_by_state_cityread-onlyReturns the properties on FEMA's Hotel and Motel National Master List in a US state, optionally narrowed by a partial, case-insensitive `city` ('york' matches New York and Yorktown), ordered by city then name and paginated with `offset`, `limit` (up to 200) and `total`. Covers the 50 states, DC and the territories FEMA lists. Returns FEMA ID, address and property details, no rates.
get_fema_hotels_by_zipcoderead-onlyReturns every property on FEMA's Hotel and Motel National Master List in a US ZIP code (five digits or ZIP+4), ordered by name, with FEMA ID, address and property details. A known ZIP with no listed property returns an empty list, an unknown ZIP a 404 error. Fire-safe lodging is required for reimbursed federal travel; no rates, pair with get_gsa_perdiem_by_zipcode.
get_fleet_rates_by_sinread-onlyReturns the GSA Fleet vehicle leasing rates (monthly lease rate and rate per mile) for the vehicle type identified by its Standard Item Number (SIN), from the standard (US) or europe rate schedule, for the current fiscal year unless `year` is given; rates are available from fiscal year 2022. SINs are the vehicle-type codes of the GSA Fleet rate schedule; the response names the vehicle type.
get_gsa_fedroomsread-onlyLists current worldwide FedRooms hotels with name, address, postal city, state, postal code and country. Optional q matches every word as a case-insensitive literal substring across those fields. country filters by ISO alpha-2 code; results include country_iso_code. Paginate with offset and limit (maximum 200); total counts matches. as_of is the UTC download date. verification_url always links to GSA. No prices or availability; book through approved channels for the FedRooms rate.
get_gsa_perdiem_by_destinationread-onlyReturns the GSA per diem of one GSA destination rate area (a city, county, metro area or the Standard CONUS area, ID 0) in effect today or on `date`: the seasonal lodging rate and daily M&IE in USD. Destination IDs come from get_destinations or any GSA per diem result. When the ID is unknown use get_gsa_perdiem_by_zipcode or get_gsa_perdiem_by_state.
get_gsa_perdiem_by_stateread-onlyReturns every GSA destination rate in a US state (US-XX) in effect today or on `date`: seasonal lodging and daily M&IE in USD per destination, with its county. `location` filters by destination or defined-area name, case-insensitive and partial. A state with no non-standard destination returns the Standard CONUS rate. CONUS only: for Alaska, Hawaii, territories and abroad use the DTMO or DSSR tools.
get_gsa_perdiem_by_state_yearread-onlyReturn every GSA destination rate in a US state (US-XX) for a US fiscal year (October 1 to September 30): the lodging rate for every month and the daily M&IE rate per destination. The optional `location` filters destinations by GSA destination or defined-area name, case-insensitive and partial. Set `verification_url=true` to include the official GSA state lookup URL. Use get_gsa_perdiem_by_state for the rate on one date.
get_gsa_perdiem_by_zipcoderead-onlyReturns the GSA per diem for a US ZIP code (five digits or ZIP+4) in effect today or on `date`: seasonal lodging and daily M&IE in USD. A ZIP can map to several destinations; then every rate is returned with its county and none is chosen for you. A ZIP with no non-standard destination returns the Standard CONUS rate. Use get_gsa_perdiem_by_zipcode_year for a whole fiscal year.
get_gsa_perdiem_by_zipcode_yearread-onlyReturns the GSA lodging rate for every month of a US fiscal year (October 1 to September 30) and the daily M&IE, in USD, for a US ZIP code (five digits or ZIP+4). A ZIP can map to several destinations; then every rate is returned with its county and none is chosen for you. A ZIP with no non-standard destination returns the Standard CONUS rate. Use get_gsa_perdiem_by_zipcode for the rate on one date.
get_latest_publicationsread-onlyReturns the most recent data loaded for each source, with its publication date and fiscal year: DSSR allowances and per diem, DTMO CONUS and OCONUS per diem, GSA per diem, mileage, vehicle rates and M&IE breakdowns, FEMA hotels and OPM pay tables. Use it to say how current an answer is. Returns no rates.
get_mie_breakdownsread-onlyReturn how daily M&IE totals break down into breakfast, lunch, dinner and incidental expenses, as in effect on the given date. The CONUS table breaks down the five standard CONUS M&IE tiers and is returned by default. Set region=oconus for the generic DTMO/DSSR M&IE total table. If date is not specified, today's breakdowns will be returned.
get_mileageread-onlyReturns the GSA privately owned vehicle (POV) mileage reimbursement rates in USD per mile for airplane, automobile, government-furnished automobile, motorcycle and moving, in effect today or on `date`; `type` selects one. Use calculate_mileage_reimbursement to turn a distance into an amount.
get_opm_localitiesread-onlyReturns OPM General Schedule locality pay areas for the latest pay year with the code for get_opm_pay. `location` keeps areas whose name contains every word and areas of counties or cities with exactly that name (`state` narrows it); `matched_places` shows why. A place in no area returns Rest of U.S. (RUS); several areas come back when a name exists in several states or a city spans areas. Empty results mean an unknown name, not RUS. Territories are not covered.
get_opm_locality_by_countyread-onlyReturns the General Schedule locality pay area of a county by five-digit FIPS code for the latest pay year, with the code for get_opm_pay. Counties outside every area return Rest of U.S. (RUS); every county in Alaska or Hawaii returns that state's area. Unknown codes, Connecticut planning regions and territory counties are 404 errors. Use get_opm_localities to search by name.
get_opm_payread-onlyReturn the latest pay table of a locality pay area, ordered by grade and step, or 404 for an unknown code. `grade` and `step` narrow the rates. Use `GS` for the base table without locality pay, and `RUS` for Rest of U.S.
get_perdiem_allowanceread-onlyReturns State Department (DSSR) per diem for every post in a country: lodging, M&IE and maximum per diem in USD per day, today or on `date`. For one post use get_perdiem_allowance_by_location or get_perdiem_allowance_by_postcode; for a place name without a country code use search_perdiem. For Department of Defense travel use get_dtmo_perdiem_oconus.
get_perdiem_allowance_by_locationread-onlyReturns DSSR per diem (lodging, M&IE and maximum per diem in USD per day) for one post in a country matched by name, case-insensitive and partial, today or on `date`. Find exact post names with get_dssr_locations_by_country or search_perdiem. Use get_perdiem_allowance for the whole country, get_perdiem_allowance_by_postcode for a known post code.
get_perdiem_allowance_by_postcoderead-onlyReturns DSSR per diem (lodging, M&IE and maximum per diem in USD per day) for the post identified by its five-digit DSSR post code, today or on `date`. Every DSSR result carries the post code, so use it for follow-up lookups. Use get_perdiem_allowance_by_location for a name, get_perdiem_allowance for the whole country.
get_userread-onlyReturns the account behind the API key: plan, monthly request limit, requests used in the current billing period, and the period start, end and renewal date. Use it to explain a quota or plan error or to check remaining requests. This call does not count against the quota.
get_zipcoderead-onlyReturns the state or states a US ZIP code (five digits or ZIP+4) belongs to; a ZIP that crosses a state line returns every state. Metadata only, no rates: use get_gsa_perdiem_by_zipcode for per diem. Send ZIPs as strings so leading zeros survive.
search_dtmo_perdiemread-onlyFinds Department of Defense per diem by location name ('Kabul') or country or state name ('Afghanistan'), across CONUS and OCONUS, with no code needed. Returns lodging, local and proportional meal rates, incidentals and maximum per diem per matching location and season. `date` selects the rates in force on that day, `year` a fiscal year (Oct 1 to Sep 30); omit both for the current fiscal year.
search_fema_hotelsread-onlySearches FEMA's Hotel and Motel National Master List (fire-safe lodging, required for reimbursed federal travel) by property name and city: every word of `q` must appear as a plain substring of the name or city, with no fuzzy matching. `state` narrows to one state; paginated with `offset`, `limit` (up to 200) and `total`. Returns FEMA ID, address, phone and property details, no rates: pair with GSA per diem for the lodging cap.
search_opm_payread-onlyReturn the latest General Schedule pay tables whose locality area matches every word of `q`: each word must be contained in the area name, case-insensitively, or equal its code. `grade` and `step` narrow the rates; no match returns an empty `results` list. Matching only looks at OPM's area names, not the counties and towns they cover, so a town missing from the names returns nothing, which does not mean Rest of U.S. Use get_opm_localities to resolve a place to its area.
search_perdiemread-onlyFinds DSSR per diem by a partial, case-insensitive country or post name of at least three characters, with no country code needed. Returns lodging, M&IE and maximum per diem per matching post, today or on `date`, with the post code for precise follow-up lookups. A name that matches nothing is a 404 error, not an empty list. Once the ISO code is known, the country tools are more precise.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "com.allowancesapi/per-diem-allowances",
  "title": "Allowances API",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.allowancesapi.com/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "X-API-Key",
          "isSecret": true,
          "isRequired": true,
          "description": "Allowances API key. Free Sandbox keys: https://www.allowancesapi.com/register"
        }
      ]
    }
  ],
  "version": "1.0.0",
  "websiteUrl": "https://www.allowancesapi.com/mcp-server",
  "description": "U.S. government per diem and overseas allowance rates from GSA, DTMO OCONUS and State DSSR tables."
}