Skip to Content
CognitoLabs.AIDocs

Benchmark a fee schedule

Hand your assistant a client's fee schedule and get back a rate benchmarking study against similar nearby hospitals, with the workbook and PDF you would have built by hand.

A rate benchmarking study puts a client's own rates next to what comparable hospitals nearby publish for the same codes, and sizes the gap in dollars a year. In the app it is the Rate Benchmarking service. Through the MCP server your assistant can run the whole study from a conversation, and the study lands in your account like one made in the app.

Say something like:

Benchmark the fee schedule in ~/clients/sunrise/rates.xlsx for Sunrise Medical Group against hospitals similar to Tampa General.

The server knows the steps. Your assistant calls study_next_step() and each result it gets back carries a next_step, so it never has to guess what comes next. You do not need a slash command, though clients that show server prompts will list rate_benchmarking as one.

What happens

  1. Upload. create_upload hands the assistant a 15-minute link to put one file into your account's storage. Claude Code runs the curl command itself. A browser-based assistant (claude.ai, ChatGPT) cannot reach our storage, so it gives you an upload page link instead; you drop the file there and tell it you are done. A small table can also be typed in as rows.
  2. Inspect. inspect_upload reads the sheets, the header row and a few sample rows, and proposes which column is the code, which are rates (one per payer) and which is annual volume. The assistant confirms the mapping with you when the file is not obvious.
  3. Save. save_rate_table publishes the rows as a rate-table version for the owner you name. That owner is a provider in your account (created if new), and the table appears under Data Sources → Rate Tables in the app, so a later study or the app itself can reuse it. Uploading an edited file again makes a new version.
  4. Peers. find_peer_hospitals picks up to 20 similar hospitals near an anchor hospital: same kind of facility, a bed count within half to double the anchor's, the same metro first, widening from 25 to 150 miles. Each pick says why it was chosen. The anchor is your client's hospital when it publishes a price file, or the nearest one like it from find_hospitals.
  5. Study. create_benchmark_study makes the study for the owner; configure_benchmark_study sets the hospital panel, where annual volumes come from (CMS state averages, the rate table's own volume column, or volumes you give), and which codes to compare (the top 20 by estimated revenue by default, the codes covering 80% of revenue, or a list).
  6. Run. run_benchmark computes the comparison on the server: your client's mean rate per code against the panel's average, median, low and high, the difference in percent, Medicare for the same code, and the annual impact (benchmark minus yours, times volume). It returns the headline summary and the top rows, and saves everything on the study.
  7. Read and export. get_benchmark_results pages through every row, sorted by impact, difference or code. export_benchmark gives a short download link to the Excel workbook (comparison, sources and volumes sheets), a CSV, the source-links CSV, or the PDF report in your firm's branding. The link opens in a browser and the result names the file (filename).
  8. Components. rb_sections lists every other part of the study, one tool each. See below.

Every result links to the study's page in the app (app_url), where the same figures and exports are.

Every component, one tool each

Each table, card and PDF section the app shows for a study is its own tool, so your assistant can answer "which hospitals are in the panel?" or "show me the market position page" without reading the whole study. rb_sections lists them all in reading order, each with where it is drawn and what it holds. The walk's last step points there, and every component's result names the next one.

ComponentTool
Setup step 1: the saved hospital panel and its source linksrb_panel
A hospital's AI column-mapping modalrb_hospital_mapping
Setup step 2: Utilization & codesrb_code_preview
Results header and summaryrb_summary
Status pills: when it was computed and where each input came fromrb_provenance
Comparison table and its filter barrb_comparison
The per-hospital columnsrb_hospital_rates
PDF: Executive Summaryrb_report_executive_summary
PDF: Scope & Methodologyrb_report_methodology
PDF: Market Position vs Benchmarkrb_report_market_position
PDF: Revenue Opportunity by Service Linerb_report_service_lines
PDF: Code-Level Analysisrb_report_code_level
PDF: Codes Priced Above Marketrb_report_above_market
PDF: Potential Revenue Opportunity Summaryrb_report_opportunity_summary
PDF: Appendix A, Code-Level Detailrb_report_appendix_codes
PDF: Appendix B, the panel and source filesrb_report_appendix_panel

rb_comparison takes the same filters as the app's bar: text search, a difference band, and the priced, has-impact and below-Medicare toggles. The PDF tools return each section as the PDF prints it, so what the assistant says matches the file you hand the client.

The Utilization and Price Transparency explorers that used to be tabs of Rate Benchmarking now live under Public Data; public_sections covers them (see Public data).

On a free account the figure components return 5 rows with the dollar and delta figures hidden. With the Rate Benchmarking service they return everything. rb_provenance and rb_hospital_mapping are free in full. rb_sections and rb_code_preview are setup calls and do not count toward the daily limit.

Your files

The assistant never overwrites your file. When you started from a local workbook, it saves the result beside it as <name>.benchmarked.xlsx unless you ask for something else. If you edit your fee schedule and ask again, the upload becomes a new rate-table version and the study is re-run against it.

What a free account gets

Uploading, inspecting, saving the table, finding peers and setting the study up are free. Running the study and reading its results on a free account return the summary and the first 5 rows, and the exports are held back (see the component tools above for what they show); the result carries a subscribe link to the Rate Benchmarking service. Every call counts toward the daily limit, and a full study is about ten calls.

Tools

The step-by-step reference of each tool and its parameters is on the Studies tool page.

On this page