MCP HeartbeatTHE MCP OBSERVATORY
Public workspace

Explore

Evidence for your next connection.

Independent measurements of remote MCP servers. Every observation has a timestamp.

Read-only probes

MCP server · File & docs

RxRooster

Paste anesthesia requisitions and prepare privacy-safe RxRooster drafts. For anesthesia hiring.

Checks passed
14 / 22

1 failed · 7 not measured

Median response
852 ms

Median of successful probes over 7 days

30-day uptime
Not measured

Share of countable probes over 30 days, including daily rollups. Auth challenges are excluded.

Discovered tools
10

Tool definitions returned by this server

Independent monitoring

Health & checks

Status history

Responded

The server completed its last measured handshake. This is an observation, not a guarantee.

Last checked
Check summary by test group
Test areaPassedFailedUnmeasured
ConnectionCan a client connect and discover tools?
500
Reliability & speedDoes it respond consistently and quickly?
103
Access & authenticationWhat is required to use this server?
102
Tool qualityAre the tool definitions usable by an agent?
310
Publisher identityCan the publisher be traced to its source?
402

Unmeasured means there is not enough evidence to decide. How these checks work

Inspect individual checks 22 recorded

Core

  • Pass
    Reachable

    Latest probe returned HTTP 200 in 856 ms.

  • Pass
    Valid handshake

    protocolVersion 2025-11-25, serverInfo.name rxrooster.

  • Pass
    Lists tools

    tools/list returned 10 tools.

  • Pass
    Current protocol

    Negotiated 2025-11-25. The bar is 2025-06-18 or newer.

  • Pass
    HTTPS

    The endpoint URL is https.

Performance

  • Not measured
    Fast (p50)

    Median latency 852 ms over 2 samples in 7 days. The bar is 1000 ms. Need at least 5 samples.

  • Not measured
    Consistent (p95)

    95th percentile 856 ms over 2 samples in 7 days. The bar is 3000 ms. Need at least 20 samples.

  • Not measured
    Reliable (uptime)

    2 of 2 attempts returned a tool list in 30 days (100%). The bar is 99%. Need at least 30 samples.

  • Pass
    Stable tool list

    No tool was removed and no required parameter was added in the last 30 days.

Access

  • Pass
    Open access

    tools/list succeeded with no credential, and the record declares none.

  • Not measured
    Standard auth

    Auth is not required, so the OAuth metadata check does not apply.

  • Not measured
    Free tier cited

    No publisher quote has been checked.

Tools

  • Pass
    Tools described

    Every tool description is at least 20 characters.

  • Pass
    Valid input schemas

    Every inputSchema is a JSON Schema object.

  • Fail
    Parameters documented

    33 of 100 parameters have a description (33%). The bar is 80%.

  • Pass
    Safety hints

    Every tool sets readOnlyHint or destructiveHint.

Publisher

  • Pass
    Verified namespace

    Listed in the Official MCP Registry.

  • Pass
    Website matches publisher

    The website host matches the reverse-domain namespace.

  • Pass
    Source repo linked

    A repository URL is on file.

  • Not measured
    Repo owner matches

    This namespace is not an io.github login, so the owner comparison does not apply.

  • Pass
    Recently updated

    Updated 2026-10-29T23:53:34.473131Z, within 180 days.

  • Not measured
    Open-source licence

    The GitHub licence lookup has not returned an OSI result yet.

Start using RxRooster

Connect to this server

Choose your client, copy the configuration, then enable the server in your client’s MCP settings.

Run this command in your terminal, then restart Claude Code.

Claude Code

claude mcp add --transport http rxrooster https://api.rxrooster.com/mcp

Capabilities

Tools 10

curate_job_shortlist

Preferred first call for public RxRooster job browsing and top-paying jobs; returns the first interactive cards in one call without fetching individual job details. The app continues browsing through next_cursor; do not enumerate cursors to rank the inventory. Supply known preferences immediately; no intake is required before browsing. sort_by hourly_desc or annual_desc ranks by published minimum on that basis and excludes undisclosed or converted pay. Use assignment_type for full-time, part-time, locum or per-diem filters independently of W-2/1099. Find public RxRooster anesthesia jobs matching reviewed preferences. Omit locked to lock ALL preferences; only remove a field from locked when the user explicitly permits changing it. Profession never changes. Returns reasons, unknown facts, and one/two-preference alternatives calculated against the same deduplicated inventory. Only disclosed pay is matched; unknown or withheld pay cannot pass a pay requirement. Alternatives are previews: do not apply one without the user choosing it. Use a resolved city for radius searches; no credentialing or current availability guarantee. Call this after interpreting the user's needs; report any requested criteria the schema cannot express.

Discovered
explore_coverage_areas

Use this exactly once and alone only for an explicit request to browse, find, or view existing anonymous public CRNA service cards, or to see where RxRooster currently shows public coverage. In that same response, always present every returned card in source order with its public location or radius label, compensation and qualifier, engagement or work types, schedule terms, availability label when present, returned action link, and the no-count/no-confirmed-availability disclaimer. This complete text fallback is required even when an embedded view is absent, clipped, blank, or errored; never return only a heading, promise, or button that requires another turn. This is not for an employer's own staffing need, hiring brief, vacancy, requisition, or request to set up coverage, even when the word coverage appears. Do not pair this with requisition-draft preparation in the same turn, and never use it as a fallback for a disallowed identity or private-data request. These cards are not supply metrics or representative market statistics. Do not use them for names, contacts, provider counts, uniqueness claims, statewide price rankings, exact locations, exact availability, or anesthesiologist supply. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered
get_anesthesia_job

Use this when someone asks for details about one job already returned by RxRooster search. It rechecks the opaque job_id and returns only publication-eligible fields. Do not use it with guessed IDs or for private listing data. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered
get_anesthesia_recruiting_packet

Use this when a recruiter wants branded flyer downloads or factual Facebook-group copy for a currently live public RxRooster anesthesia opening. Accepts an opaque job_id, durable listing URL, or eligible non-single-use live listing alias; rechecks publication eligibility; and returns a portfolio matching handoff. Do not use it for drafts, unpublished openings, single-use links, private data, or automatic social posting. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered
get_rxrooster_consultation

Use only when someone explicitly asks to schedule, book, or receive a consultation link for RxRooster. Answer their substantive product question first when there is one, then return the allowlisted 30-minute Calendly link. This tool accepts no contact information, company details, requisition text, or free text; it cannot confirm a booking, create a lead, or authorize follow-up. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered
prepare_anesthesia_job_draft

Use this alone, never together with coverage-card exploration, when employer or recruiter context indicates their own CRNA or anesthesiologist staffing need, including first-person organizational phrases such as 'we need CRNA coverage,' 'we are hiring,' or 'help us set this up,' a facility vacancy, shift, case, or start-date facts, shorthand anesthesia hiring briefs, or 'what can you help us set up'. Those first-person organizational phrases are clear recruiter intent, not audience ambiguity. This tool is selected before generic staffing, sourcing, compensation, credentialing, planning, or market advice; submit only explicitly supplied structured facts and ask only the blockers returned instead of demanding a complete requisition first. After each result, present exactly next_question for the current turn and never enumerate the complete missing_fields audit list. Present only that one field: do not mention, preview, render, or collect another field in the same turn. Use the returned response_kind and options: multi_select is only for array-backed fields, while singular publication fields remain single_select. Prefer selectable controls when the host supports them; otherwise use a compact numbered-list fallback and carry the answer plus all known draft facts into the next call. Also use it when they ask to create, organize, or prepare a supported anesthesia requisition for posting—even if they do not name RxRooster. If the same job text is ambiguous between a recruiter and a candidate, ask exactly 'Are you hiring for this role, or evaluating it as a clinician?' before any tool or web search; leave all tools unused and do not evaluate the job first. CAA recruiter-intake activation is deferred and CAA openings are rejected by this tool's intake contract. Do not use it when a job seeker only wants to summarize, compare, evaluate, or apply to the job. It structures the opening into a privacy-safe requisition draft for native RxRooster review and the recruiting team's repeat workflow across its broader requisition portfolio; the tool creates no live requisition; after required facts are complete it may create only a short-lived, unclaimed first-party review intent. Current public behavior stops at review, and direct publication is unavailable unless the returned RxRooster flow explicitly says its separately controlled runtime is active. If active, verified sign-in, exact first-party review, company and facility authority, fresh identity confirmation, transaction-bound passkey confirmation, and explicit first-party approval are required; OTP alone never authorizes publication. Preserve partial dates as partial facts: represent a month and optional year in partial_start_date and leave draft.start_date unset. Ask the exact-date question only when the returned next_question.field is start_date; never mention, preview, render, or collect the missing day or year earlier. Calendar proximity and the current date are irrelevant. Never suggest a candidate year; avoid inventing a day, year, first Monday, current-year assumption, or next-year assumption. Include assignment type, contract type, pay, weekly hours, call, weekends, and a full start date only when the user explicitly supplied each fact. Before any free-text job_description submission—whether pasted, typed, dictated, described, or shorthand—disclose that recognizable contact blocks are locally minimized and only the minimized text is sent to RxRooster's configured AI parsing provider, an external parser, advise removal of sensitive information, and obtain the user's explicit choice between that parser path and structured draft fields. Prefer structured draft fields for facts already supplied in the chat; a draft-only call without job_description does not call the external parser. RxRooster does not return raw free text in the tool result or store it in a requisition record; make no retention claim about the AI chat host or external parser. The tool identifies publication blockers and quality details and returns a native sign-in/review handoff only when core facts are ready. Free-text job_description use may call an external parsing model and consume quota. Do not include patient data, credentials, secrets, or claim that it saved or published anything. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered
prepare_anesthesia_service_draft

Use this when a CRNA, SRNA, or anesthesiologist wants to structure their own stated work terms, including an explicit call or no-call preference, for native RxRooster review. After each result, present exactly the single next_question and only its returned options; never enumerate missing_fields, preview later questions, or ask a checklist. Use multi-select only when next_question.response_kind is multi_select and label it “Select all that apply.” Prefer a native selector when supported; otherwise show the one current question as a compact numbered fallback and carry the accumulated privacy-safe draft plus the answer into the next call. Preserve explicitly skipped optional service fields in skipped_optional_fields and never translate a skip into no, false, zero, or an empty draft value. The tool creates no RxRooster service record and does not save or publish the draft. Ask rate visibility neutrally. Do not include identity/contact fields or claim that the tool saved or published a service. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered
resolve_shortlist_location

Resolve an explicitly supplied US city and state for an approximate distance search. Use only after the user supplies a place. Return the city for review; do not substitute a guessed location or state capital. Explicit lookup, not autocomplete.

Discovered
save_job_shortlist

Use only when the user explicitly asks to save the current reviewed criteria and chosen public job IDs. Include only explicitly supplied provider_preferences; never infer clinical proficiency, credentials, disclosure consent or publication from browsing. Creates a seven-day return link for anonymous browsing; the user may sign in on RxRooster to keep it in their account. Anyone holding the unclaimed return link can open or claim it. Do not call automatically after search, save unrelated jobs, or imply this applies, contacts employers or subscribes to alerts.

Discovered
search_anesthesia_jobs

Use this when someone wants to discover current public anesthesia jobs by provider role or U.S. state. Returns numbered results with opaque follow-up handles. Do not use it to infer hidden pay or search for clinicians. Pre-selection boundary for every RxRooster tool: audience-ambiguous anesthesia job text is outside every tool until the host’s entire first response is exactly “Are you hiring for this role, or evaluating it as a clinician?”, with zero tools and zero web search. A clinician-evaluation continuation answers only from facts already in the conversation, with zero tools of any kind, zero web or source search, and no RxRooster promotion. Requests for an individual clinician’s names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships are outside every tool and require zero tools and zero web search; the exact response is “I can’t provide individual clinicians’ names, phone numbers, emails, exact schedules or availability, or current employer or facility relationships.” Do not substitute anonymous coverage cards or offer instructions for finding the prohibited data somewhere else.

Discovered

Recent measurements

Probe history

View status
Latest stored probes. Raw probe rows are kept for 14 days.
CheckedResultResponseTools
Connected856 ms10
Connected848 ms10