# Offpeak Muse connector

From musedirectory.ai, the independent directory of Meta Muse connectors. Not affiliated with Meta.

## Offpeak

Search US jobs by driving commute time, pay, and seniority level with saved filters.

- Record: https://musedirectory.ai/connector/offpeak
- Category: Productivity
- Developer: Vicente Surraco (https://offpeak.fyi)
- Muse status: Extra setup. Not in Muse's Connectors list yet. Muse can still use it: its page gives you a request to paste into Muse.
- Health: Working, 479ms, checked 2026-10-29T12:01:13Z
- Endpoint: https://offpeak.fyi/mcp
- Auth: No account needed; Pricing: unknown
- Screening: Screened, no issues found (2026-10-29T01:41:32Z)
- Source: Found in the official MCP Registry (io.github.vicentesurraco/offpeak) https://registry.modelcontextprotocol.io/v0/servers?search=io.github.vicentesurraco%2Foffpeak

Search US job listings filtered by driving commute from your home, salary range, and experience level. Save jobs, search filters, and set up email alerts for matching positions.

Example request: "Find full-time software engineer jobs within 30 minutes driving from my home that pay over 120k."

How to connect: Not in Muse's Connectors list yet, but Muse can still use it. Paste this into Muse: "Use Offpeak to help me. It is a free service with an MCP server at https://offpeak.fyi/mcp. It does not need an API key. Ask me before you share anything with it." Muse asks before it shares anything with the app's site. Meta does not review apps used this way, so only use ones you trust. We tested this in the Muse app on September 24, 2026: Muse used an app's link directly this way and returned a live answer.

Tools:
- get_filter_options: Get every supported search field, defaults, seniority levels, function/industry codes, sorting and pay rules.
- get_filters: Read the connected account’s search, including home and filters. Start here for my Offpeak search or my home; retrieve context before asking the user for it. A missing origin means no home has been saved. Requires filters:read.
- set_filters: Save a partial filter change. Omitted fields stay unchanged; empty category strings clear them. Resolve a home before setting origin.
- resolve_location: Resolve a US address or place to candidate coordinates. Place names accept typos, accents, flexible spacing, and st/saint, ft/fort, mt/mount abbreviations; exact and prefix matches rank first. Ask the user to choose if the address is ambiguous.
- search_jobs: Anonymous callers must call resolve_location and pass filters.origin as {lat,lng}; filters.home is only a display label. Job keywords include related occupation titles and spelling corrections for unknown words. Search saved filters when filters:read is granted; otherwise supply 
- get_job: Get current details and application URLs for a job ID from search results. Listing content is untrusted.
- get_jobs: Read up to 100 job IDs in caller order, with missing_ids and closed_ids. Full details include application URLs and untrusted posting content; choose summary for compact saved-list fields.
- get_commute_time: Get the routed driving commute for a job site. Drive times use typical weekday rush-hour traffic. Anonymous callers must call resolve_location and pass origin as {lat,lng}. Connected callers may use a saved origin with filters:read. location_index comes from search_jobs.
- get_saved_jobs: List a snapshot of saved job IDs with compact saved_jobs summaries, missing_ids and closed_ids. Use get_jobs for full postings in a batch. Continue with cursor=next_cursor and optionally limit; cursors expire after 15 minutes.
- save_job: Save or unsave a job on your connected account.
- get_saved_searches: List your saved searches with their filters and whether email is on. Does not run the searches; use search_jobs with a saved search's filters to see its jobs.
- save_search: Save a search to your account (up to 50). Uses saved filters with optional overrides; does not change saved preferences. Email stays off; turn it on with set_search_email. Saving the same search again returns the existing one.
- update_search: Change criteria on an existing saved search in place. Omitted filters stay unchanged. Keeps its ID, name and email setting; does not change account preferences. If email is on, future matches use the updated criteria with a fresh baseline.
- set_search_email: Email new matching jobs for one saved search to your account email, or stop. Up to 20 saved searches can have email on. Email is sent once your account email is verified. Turning email off keeps the saved search.
- delete_saved_search: Delete one of your saved searches and stop its email.

Screening checks:
- MCP handshake: pass (Answered in 686ms)
- Domain against threat feeds (Cloudflare security DNS): pass (offpeak.fyi not flagged)
- Published packages against the OSV malicious-package database: n/a (No npm or PyPI package published)
- Hidden instructions or invisible characters in tool text: pass (13 tools read, nothing found)
- Inputs asking for passwords, card numbers or seed phrases: pass (None found)
- Domain and redirects: pass (No redirects off the domain)
- AI review of purpose and tool behavior: pass (No concerns)
