Skip to main content

gsa-calc-mcp

MCP server for the GSA CALC+ Labor Ceiling Rates API. Query awarded GSA MAS schedule hourly rates for IGCE development, price reasonableness analysis, and market research.

No authentication required. Standalone MCP use is an advanced, self-supported path; packaged agents are the maintained beginner path.

Tested and hardened through six audit rounds against the GSA CALC+ API. 352 regression tests (247 offline, 105 live-gated) covering 49 P1 bugs (19 crashes, 30 silent-wrong-data), 19 P2 validation gaps, 12 retroactive deep-audit findings, and the round-6 differential-count fixes (dead worksite filter, experience-range semantics, rate-card paging). See testing.md for the full testing record.

What it does

Exposes the GSA CALC+ API as 8 MCP tools:

Core search

  • keyword_search - Wildcard search across labor categories, vendors, and contract numbers
  • exact_search - Exact field match (use suggest_contains to discover values first)
  • suggest_contains - Autocomplete/discovery for field values (2-char minimum)
  • filtered_browse - Browse with filters only (no keyword)

Workflow tools

  • igce_benchmark - Rate statistics for IGCE development (min/max/avg/median/percentiles)
  • price_reasonableness_check - Evaluate a proposed rate against market distribution
  • vendor_rate_card - All rates for a vendor (auto-discovers exact name)
  • sin_analysis - Rate distribution for a GSA SIN

No authentication required

The GSA CALC+ API is public. GSA does not publish a numeric limit for this endpoint. The MCP applies a provisional 3-second cross-process anti-burst interval by default.

Installation

uvx gsa-calc-mcp

Or from source:

git clone https://github.com/1102tools-dev/federal-contracting-mcps.git
cd federal-contracting-mcps/servers/gsa-calc-mcp
pip install -e .

Configuration

MCP is an open standard, and compatible clients can run this server. The maintained 1102tools Agent Setup Guide covers packaged agents in Codex and Claude Code, not standalone server configuration. Use the block below as the server definition and adapt its placement to your client.

{
  "mcpServers": {
    "gsa-calc": {
      "command": "uvx",
      "args": ["--refresh-package", "gsa-calc-mcp", "--from", "gsa-calc-mcp", "gsa-calc-mcp"]
    }
  }
}

The --refresh-package flag tells uv to check PyPI for a newer release each time your client launches the server, so fixes arrive automatically; without it, uv keeps serving whatever version it first cached. It adds a moment of network time at startup, so raise your platform's MCP startup timeout if it enforces a short one.

Restart the client and the tools appear.

Example prompts

  • "What are the GSA ceiling rates for Senior Software Developer with a BA and 10+ years experience?"
  • "Is $195/hr reasonable for a Cybersecurity Analyst? Check against CALC+ rates."
  • "Pull the full rate card for Booz Allen Hamilton from GSA CALC+."
  • "What does the IT Professional Services SIN (54151S) rate distribution look like?"
  • "Build IGCE benchmarks for these 5 labor categories: Program Manager, Systems Engineer, Software Developer, Help Desk Specialist, Network Administrator."
  • "Find all small business ceiling rates for project management between $100-$200/hr."

Important: ceiling rates, not prices paid

CALC+ data represents the maximum hourly rate a contractor can charge under their GSA MAS contract. Actual task order rates should be lower per FAR 8.405-2(d). These rates are:

  • Fully burdened (includes fringe, overhead, G&A, profit)
  • Worldwide (no geographic adjustment)
  • Master contract-level (not task order-specific)
  • From vendor Price Proposal Tables (self-reported by contractors)

Always note sample size and remind users these are ceiling rates when presenting analysis.

Request pacing

Every upstream request uses a provisional 3-second cross-process anti-burst interval by default. GSA does not publish a numeric CALC+ limit, so this is a 1102tools safeguard rather than a provider requirement. Override with FEDERAL_API_MIN_INTERVAL_SECONDS, use 0 to deliberately disable it, and use FEDERAL_API_PACING_DIR to relocate local pacing state.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gsa_calc_mcp-1.0.4.tar.gz (138.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gsa_calc_mcp-1.0.4-py3-none-any.whl (22.6 kB view details)

Uploaded Python 3

File details

Details for the file gsa_calc_mcp-1.0.4.tar.gz.

File metadata

  • Download URL: gsa_calc_mcp-1.0.4.tar.gz
  • Upload date:
  • Size: 138.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for gsa_calc_mcp-1.0.4.tar.gz
Algorithm Hash digest
SHA256 bbf535e6584df36a23ff50d2a06ee193e4d9052fc3cd877cfca41872c36ebf8b
MD5 40ddf55e03d6f19dc46c65a16cc1b117
BLAKE2b-256 904afc836b9888cc88d4aba113a83f466e023cb993a18ece08d0b9c1536ce508

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsa_calc_mcp-1.0.4.tar.gz:

Publisher: publish-pypi.yml on 1102tools-dev/federal-contracting-mcps

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gsa_calc_mcp-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: gsa_calc_mcp-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 22.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for gsa_calc_mcp-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 044588fdbed9c10baa7dbb99eceffa33c64976c1eadb2fc5e0961444e3c442eb
MD5 221934be87b66988bdacbbb114d9a30e
BLAKE2b-256 49077fd636396305480d3c7ae4e574fa656de1f6eabfc9a2b61d94c47022484d

See more details on using hashes here.

Provenance

The following attestation bundles were made for gsa_calc_mcp-1.0.4-py3-none-any.whl:

Publisher: publish-pypi.yml on 1102tools-dev/federal-contracting-mcps

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

1.0.9

2 files

1.0.8

2 files

1.0.7

2 files

1.0.6

2 files

1.0.5

2 files

This release

1.0.4 This release

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.2.7

2 files

0.2.6

2 files

0.2.5

2 files

0.2.4

2 files

0.2.3

2 files

0.2.2

2 files

0.2.1

2 files

0.2.0

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page