Levels.fyi MCP - Compensation & Cross-Company Level Mappings

Created By
yashzorda month ago
MCP server exposing Levels.fyi compensation data and curated cross-company SWE level mappings (Google L5 ↔ Meta E5 ↔ Amazon L6) to Claude. 6 tools: get_company_medians, list_supported_companies, get_company_ladder, get_level_mapping, compare_offers, analyze_offer. Uses Levels.fyi's official LLM .md endpoint with attribution. 10 companies covered: Google, Meta, Amazon, Apple, Microsoft, Stripe, Uber, Airbnb, Databricks, Netflix.
Overview

levels-fyi-mcp

CI License: MIT Python 3.12+ PyPI

A Model Context Protocol (MCP) server that exposes Levels.fyi compensation data and cross-company SWE level mappings to Claude and other MCP-compatible clients.

The killer feature: a curated cross-company level translator. Ask Claude "what is Google L5 at Meta?" and get a real answer with confidence ratings, TC bands, and explanation of how the mapping was derived.

Example interactions

Once connected, your MCP client can answer questions like:

  • "What does Google currently pay Software Engineers (median)?"
  • "What's the equivalent of Google L5 at Meta and Amazon?"
  • "Compare these two offers: Google L5 NYC ($215k base / $580k equity over 4yr / $25k bonus) vs Stripe L3 SF ($240k base / $800k equity / no bonus)."
  • "Is an offer of $260k base + $900k equity over 4yr at Stripe L3 above or below market?"

Tools exposed (6 total)

ToolWhat it does
get_company_mediansLive median total comp by job family for a company. Pulled from Levels.fyi's official LLM endpoint with attribution.
list_supported_companiesList of curated companies + canonical career levels reference.
get_company_ladderFull SWE ladder for one company: titles, canonical levels, TC bands, YOE typical, confidence.
get_level_mappingCross-company level translator (e.g., Google L5 ↔ Meta E5 ↔ Amazon L6).
compare_offersNormalize multiple offers (base + per-year equity + bonus) and rank them.
analyze_offerVerdict on whether an offer is below/at/above market for a given company+level.

What you actually get back

A concrete example - asking for the cross-company mapping Google L5 → Meta:

{
  "source_company": "google",
  "source_level": "L5",
  "canonical_level": "senior",
  "target_company": "meta",
  "target_levels": [
    {
      "name": "E5",
      "title": "Senior Software Engineer",
      "yoe_typical_min": 5,
      "yoe_typical_max": 9,
      "tc_band_low_usd": 440000,
      "tc_band_high_usd": 650000,
      "confidence": "high",
      "notes": "Terminal level (no up-or-out below this)."
    }
  ],
  "confidence": "high",
  "explanation": "Google / Alphabet L5 (Senior Software Engineer) maps to canonical level 'senior'. At Meta that is E5."
}

And a comparison of two real-shape offers:

#1 Stripe L3 SF:    $440,000/yr  (best)
#2 Google L5 NYC:   $385,000/yr  (-$55,000 vs best, 87.5%)

Companies covered (curated SWE ladders)

Google, Meta, Amazon, Apple, Microsoft, Stripe, Uber, Airbnb, Databricks, Netflix.

Each level includes: name, title, canonical career level, typical YOE, total compensation band (USD, US Tier-1 metro), and a confidence rating (high/medium/low).

Data sources & terms

This server is built on data sources Levels.fyi has explicitly made available for this purpose:

  1. Levels.fyi .md LLM endpoint - https://www.levels.fyi/companies/{company}/salaries.md. Officially built for "LLMs, AI agents, and intelligent crawlers." Attribution is automatic and required.
  2. Curated public-knowledge ladders - level mappings sourced from Levels.fyi public pages, candor.co, public job postings, and Blind community discussion. Opinionated and approximate; confidence ratings included.

This server does not scrape Levels.fyi web pages, does not identify itself as ClaudeBot/anthropic-ai (which their robots.txt disallows), and does not compete with their commercial enterprise API.

Install

The easiest way (no clone needed) - via uvx:

uvx levels-fyi-mcp

Or with pip:

pip install levels-fyi-mcp

Or from source:

git clone https://github.com/yashzord/levels-fyi-mcp
cd levels-fyi-mcp
uv sync

Run

uv run levels-fyi-mcp

The server speaks MCP over stdio - it is designed to be launched by an MCP client (Claude Desktop, Claude Code), not by you directly.

Configure in Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "levels-fyi": {
      "command": "uvx",
      "args": ["levels-fyi-mcp"]
    }
  }
}

Restart Claude Desktop. You should see "levels-fyi" appear with 6 tools.

Configure in Claude Code

claude mcp add --scope user levels-fyi -- uvx levels-fyi-mcp

Tests

uv run pytest

20 tests pass covering: level mapping correctness, TC-band ordering invariants, all tool response shapes, and the markdown parser.

Status

v0.1.x - Stable. SWE ladders for 10 companies, 6 MCP tools, live .md endpoint with caching. Used in production by users via Claude Desktop and Claude Code.

What's planned

  • Manager / PM / Data Scientist / Designer ladders (currently SWE only)
  • More companies (Snowflake, Coinbase, OpenAI, Anthropic, DeepMind, NVIDIA)
  • Per-record compensation search (currently company-level medians only)
  • Cost-of-living adjustment (currently US Tier-1 metro basis)
  • Equity vest schedules beyond the standard 4-year cliff
  • Total comp trends over time

If any of these would help you, open an issue and they get prioritized.

Contributing

Issues and PRs welcome. The level mappings especially benefit from community input - if you have data points that contradict a band or canonical mapping, please open an issue with your sources.

License

MIT - see LICENSE.

Disclaimer

This project is not affiliated with, endorsed by, or sponsored by Levels.fyi. All compensation data is sourced from publicly available datasets and Levels.fyi's officially-provided LLM endpoint, with attribution. TC bands are approximate, opinionated, and reflect US Tier-1 metro markets unless otherwise noted.

Server Config

{
  "mcpServers": {
    "levels-fyi": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/levels-fyi-mcp",
        "run",
        "levels-fyi-mcp"
      ]
    }
  }
}
Project Info
Created At
a month ago
Updated At
a month ago
Author Name
yashzord
Star
-
Language
-
License
-
Category

Recommend Servers

View All
Fundable Mcp

2 days ago
Tavily Mcp
@tavily-ai

JavaScript
a year ago