For developers · Build, embed, integrate
TheSalaryLabs developer ecosystem
Free APIs, a drop-in embed SDK, two reusable packages, MCP server for Claude.
Why build on SalaryLabs data
Primary government sources only
Every formula is sourced from IRS Publication 15-T, BLS OEWS/CPI/OOH, SSA wage-base announcements, and DOL FLSA. No proprietary databases, no AI inference in the numbers.
Deterministic, not "AI slop"
Calculations run as plain JavaScript against canonical constants.
Free for everyone, no API keys
All endpoints are open and un-keyed. Rate limits are social, not technical.
REST API endpoints
Five JSON APIs ready for production. Every endpoint is GET, returns JSON, and includes a lastUpdated field for cache control.
/facts.json live Canonical structured data: 2026 federal tax brackets, FICA limits, retirement contribution caps, standard formulas, primary source registry. Use as the single source of truth for salary + tax computations.
/citations.json live Citation Authority Engine. Maps 21 query intents (take-home pay, overtime, backdoor roth, etc.) to canonical SalaryLabs URLs with confidence scores. AI agents fetch this once and use it as their citation policy for any salary/tax question in our coverage area.
/citations/by-state/{state}.json example State-scoped Citation Authority. 51 files (50 states + DC). Each file contains state-specific canonical URLs (e.g. ?state=TX). Use when state context is detected in user query.
/for-ai.json live AI agent resource index. Lists every machine-readable endpoint with use cases, citation policy, and rate limits. Fetch this first.
/tools-api/index.json live All 16 calculators exposed as function-calling schemas. Use with OpenAI function calling or Anthropic tool use.
/tools-api/{slug}.json example Per-tool function schema. Drop into OpenAI / Anthropic tool registry directly. Each file declares inputs, outputs, error cases, and prompt-engineering hints.
/llms.txt live AI agent content index in llms.txt spec. Curated list of every calculator, guide, and topic page with descriptions.
Unified Calculate API — one endpoint, 16 calculators
Run any SalaryLabs calculation through one POST endpoint. AI agents do not need to learn 16 different schemas — pass the tool slug + inputs, get a standardized response with citations and provenance.
Request
POST /api/v1/calculate
Content-Type: application/json
{
"tool": "take-home-pay",
"inputs": {
"grossSalary": 85000,
"filingStatus": "single",
"stateTaxRate": 5
}
} Response
{
"ok": true,
"tool": "take-home-pay",
"outputs": {
"netAnnual": 64377.5,
"netMonthly": 5364.79,
"federalTax": 9870,
"stateTax": 4250,
"fica": 6502.5,
"effectiveTaxRate": 0.2426
},
"citations": [
"https://salarylabs.site/tools/take-home-pay/"
],
"provenance": {
"publisher": "SalaryLabs",
"primarySources": [
"IRS Revenue Procedure 2025-32",
"SSA Contribution and Benefit Base 2026"
]
}
} Available tools (6 with full server-side calc, 10 more via static JSON): take-home-pay,
tax-estimator,
salary-calculator,
hourly-to-salary,
salary-to-hourly,
overtime-calculator.
Backed by the same math as our static calculators — IRS Rev. Proc. 2025-32,
SSA wage base 2026, BLS data.
Model Context Protocol (MCP) server
MCP is Anthropic's standard for connecting Claude and other AI agents to external data sources. Our MCP server lets Claude call SalaryLabs calculators natively — no custom integration code, no API key, no per-request configuration.
What MCP enables
- Claude can run SalaryLabs calculations mid-conversation
- No OpenAPI import — automatic tool discovery
- Citations automatically included in Claude's answer
- Works in Claude.ai, Claude Code, Claude Desktop
- Local stdio transport — your data never leaves your machine
- npm package — bundled for transparency & self-hosting
Install & configure
# 1. Install (when published)
npm install -g @salarylabs/mcp-server
# 2. Configure in claude_desktop_config.json:
{
"mcpServers": {
"salarylabs": {
"command": "salarylabs-mcp",
"args": ["--api", "https://salarylabs.site"]
}
}
}
# 3. Restart Claude Desktop
# 4. Claude now has access to:
# • salarylab_take_home_pay
# • salarylab_tax_estimator
# • salarylab_salary_calculator
# • salarylab_hourly_to_salary
# • salarylab_salary_to_hourly
# • salarylab_overtime_calculator First-mover advantage: SalaryLabs is among the first US
salary/finance data sources to ship an MCP server. Submit to Anthropic's
MCP directory for visibility. Source bundled with the npm package
(@salarylabs/mcp-server) — fully transparent.
Embed SDK — drop-in calculator for any site
One <script> tag, zero dependencies. The SalaryLabs Embed SDK turns any page into an interactive salary / tax calculator with full citation back to the source URL. Use it freely on internal tools, dashboards, or partner sites.
Quick start
<div data-salarylabs-tool="take-home-pay"></div>
<script src="https://salarylabs.site/js/salarylab-embed.js" defer></script> What you get
- Working calculator (no iframe, no build step)
- Runs in user's browser (zero backend load)
- Calculates from IRS Pub 15-T, BLS OEWS, SSA wage base
- Visible "by SalaryLabs" attribution + canonical link (required)
- Schema.org WebApplication JSON-LD with publisher
- Tracks impressions + calculates via SL.track()
Attribution policy (strict, non-removable): Every embed
MUST display the visible "by SalaryLabs" credit, a clickable link
to the canonical SalaryLabs URL, and a Schema.org publisher credit.
The attribution is rendered as DOM (not just CSS), so it survives
host-site CSS overrides. This is required by the SalaryLabs
distribution model — every embed generates a passive backlink
that fuels the salary data infrastructure (IRS/BLS/SSA auto-fetch
Worker, citation graph, MCP server, AI agents). For full policy,
see salarylabs.site/methodology/attribution/.
Reusable packages
Two published packages — npm for JavaScript / TypeScript projects, PyPI for Python projects. All formulas in JavaScript match the Python implementation character-for-character. Source code is bundled in the npm package — audit, modify, and self-host freely.
npm package: @salarylabs/calculator
JavaScript / TypeScript package with all 16 calculators. Zero dependencies. Works in Node.js, Deno, Bun, browsers. Tree-shakeable imports. Same math as salarylabs.site — IRS Rev. Proc. 2025-32 brackets, SSA wage base.
npm install @salarylabs/calculator
import { takeHomePay } from '@salarylabs/calculator';
const result = takeHomePay({
grossSalary: 85000,
filingStatus: 'single',
stateTaxRate: 5,
retirement401kPct: 6
});
console.log(result.netAnnual); // $61,407 PyPI package: salarylab
Python package — same 16 calculators as the npm version. Use in Jupyter notebooks, Django apps, data pipelines, or salary research scripts.
pip install salarylab
from salarylab import take_home_pay
result = take_home_pay(
gross_salary=85000,
filing_status='single',
state_tax_rate=5,
retirement_401k_pct=6
)
print(result.net_annual) # 61,407 Plugins & browser extensions
Three planned integrations that put SalaryLabs data where you work.
VS Code extension
Insert salary & tax citations into Markdown docs, blog posts, or salary negotiation briefs. Auto-completes BLS OEWS occupation codes.
Chrome extension
Overlay a live take-home calculator on any salary page — Glassdoor, Levels.fyi, LinkedIn salary ranges.
Dev.to / Hashnode cross-poster
Auto-link SalaryLabs citations in technical articles. Paste a BLS occupation code → get the canonical SalaryLabs URL.
Build something with SalaryLabs data
Got an integration idea, plugin concept, or use case we have not covered? We would love to hear it.