SkillAgentSearch skills...

lever-mcp

A Lever ATS MCP (Model Context Protocol) Server. Built in golang.

Install / Use

claude mcp add stefanoamorelli -- npx -y github:stefanoamorelli/lever-mcp

If the server publishes to npm under a different name, use that package instead — check the repo README.

About this skill
🔌

MCP Server

Model Context Protocol server

Quality Score

75/100

Supported Platforms

Claude Code
Claude Desktop

Our assessment of lever-mcp

lever-mcp scores 75/100 on our quality scale, 856th of 963 AI & Machine Learning skills we index.

Its MCP Server is 12 KB long, well organised into 14 sections with 4 code examples: a thorough specification that gives an agent plenty to work with.

It has 3 GitHub stars, so there is little community track record yet; judge it on its content.

Substance
30/30
Structure
20/20
Description
12/15
Adoption
3/20
Freshness
11/15

Maintenance, license and trust

  • The repository was last updated about 7 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
  • It is released under AGPL-3.0, a copyleft license: you can use it, but modified versions you distribute must carry the same license.
  • Its trust signals score 81/100, with 3 cautions from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

lever-mcp compared with similar skills

All 4 of these similar skills score higher than lever-mcp; compare them before choosing.

SkillScoreStarsUpdatedFormat
lever-mcp (this skill)by stefanoamorelli7537mo agoMCP Server
claude-memby thedotmack100100.1ktodayCLAUDE.md
Agent-Reachby Panniantong10096.5k4d agoCLAUDE.md
Understand-Anythingby Egonex-AI10086.1ktodayCLAUDE.md
headroomby headroomlabs-ai10075.1ktodayCLAUDE.md

Frequently asked questions

How do I install lever-mcp?
Run claude mcp add stefanoamorelli -- npx -y github:stefanoamorelli/lever-mcp. The install tabs above show the steps for each supported agent.
Which AI agents does lever-mcp work with?
It is written for Claude Code and Claude Desktop, as a MCP Server file. Other agents that read the same format can often use it too.
Is lever-mcp safe to use?
It is AGPL-3.0-licensed and scores 81/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is lever-mcp still maintained?
The repository was last updated about 7 months ago. That is recent enough to be usable, but agent tooling moves fast, so check the instructions against your agent's current version.
<h1 align="center">lever-mcp</h1> <p align="center"> Community-developed MCP server for the <a href="https://hire.lever.co/developer/documentation">Lever ATS API</a>, exposing 59 tools over Streamable HTTP. </p> <p align="center"> <img src="https://github.com/stefanoamorelli/lever-mcp/actions/workflows/ci.yml/badge.svg" alt="CI"> <img src="https://img.shields.io/badge/Go-1.24-00ADD8?logo=go" alt="Go"> <img src="https://img.shields.io/badge/License-AGPL--3.0-blue" alt="License"> <img src="https://img.shields.io/badge/MCP-Streamable_HTTP-purple" alt="MCP"> </p>

[!IMPORTANT] This project is experimental and provided as-is. It is not endorsed by, affiliated with, or supported by Lever or Employ, Inc. "Lever" is a trademark of Employ, Inc. All product names, logos, and brands are property of their respective owners. Use at your own risk.

Quick Start

| Variable | Required | Default | Description | |---|---|---|---| | LEVER_API_KEY | Yes | | Lever API key | | PORT | No | 3000 | HTTP listen port | | LEVER_BASE_URL | No | https://api.lever.co/v1 | Override for sandbox or EU regions |

Build & Run

# build
make build          # or: go build -o lever-mcp ./cmd/lever-mcp

# run
export LEVER_API_KEY=your-key
./lever-mcp         # listening on :3000

The server exposes two endpoints:

  • POST /mcp (MCP Streamable HTTP)
  • GET /health (health check)

Tool Filtering

Restrict which tools are registered using comma-separated env vars:

# allowlist: only these tools are registered
LEVER_ENABLED_TOOLS=list_opportunities,get_opportunity

# blocklist: everything except these
LEVER_DISABLED_TOOLS=delete_opportunity_note,delete_webhook

If both are set, LEVER_ENABLED_TOOLS takes precedence.

Available Tools (59)

<sub>:eyes: read · :pencil2: create · :arrows_counterclockwise: update · :wastebasket: destructive</sub>

<details> <summary><strong>Opportunities</strong> (4 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunities | :eyes: | docs | | get_opportunity | :eyes: | docs | | create_opportunity | :pencil2: | docs | | list_deleted_opportunities | :eyes: | docs |

</details> <details> <summary><strong>Opportunity Actions</strong> (8 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | archive_opportunity | :arrows_counterclockwise: | docs | | change_opportunity_stage | :arrows_counterclockwise: | docs | | add_opportunity_tags | :pencil2: | docs | | add_opportunity_sources | :pencil2: | docs | | add_opportunity_links | :pencil2: | docs | | remove_opportunity_tags | :arrows_counterclockwise: | docs | | remove_opportunity_sources | :arrows_counterclockwise: | docs | | remove_opportunity_links | :arrows_counterclockwise: | docs |

</details> <details> <summary><strong>Notes</strong> (3 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_notes | :eyes: | docs | | create_opportunity_note | :pencil2: | docs | | delete_opportunity_note | :wastebasket: | docs |

</details> <details> <summary><strong>Offers</strong> (1 tool)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_offers | :eyes: | docs |

</details> <details> <summary><strong>Interviews</strong> (3 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_interviews | :eyes: | docs | | update_opportunity_interview | :arrows_counterclockwise: | docs | | delete_opportunity_interview | :wastebasket: | docs |

</details> <details> <summary><strong>Feedback</strong> (5 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_feedback | :eyes: | docs | | get_opportunity_feedback | :eyes: | docs | | create_opportunity_feedback | :pencil2: | docs | | update_opportunity_feedback | :arrows_counterclockwise: | docs | | delete_opportunity_feedback | :wastebasket: | docs |

</details> <details> <summary><strong>Panels</strong> (2 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | create_opportunity_panel | :pencil2: | docs | | delete_opportunity_panel | :wastebasket: | docs |

</details> <details> <summary><strong>Referrals, Resumes, Files</strong> (3 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_referrals | :eyes: | docs | | list_opportunity_resumes | :eyes: | docs | | list_opportunity_files | :eyes: | docs |

</details> <details> <summary><strong>Applications</strong> (2 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_applications | :eyes: | docs | | get_opportunity_application | :eyes: | docs |

</details> <details> <summary><strong>Forms</strong> (1 tool)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_opportunity_forms | :eyes: | docs |

</details> <details> <summary><strong>Archive Reasons</strong> (2 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_archive_reasons | :eyes: | docs | | get_archive_reason | :eyes: | docs |

</details> <details> <summary><strong>Contacts</strong> (1 tool)</summary>

| Tool | Annotation | API Docs | |---|---|---| | get_contact | :eyes: | docs |

</details> <details> <summary><strong>Postings</strong> (6 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_postings | :eyes: | docs | | get_posting | :eyes: | docs | | create_posting | :pencil2: | docs | | update_posting | :arrows_counterclockwise: | docs | | apply_to_posting | :pencil2: | docs | | get_posting_apply_questions | :eyes: | docs |

</details> <details> <summary><strong>Users</strong> (5 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_users | :eyes: | docs | | get_user | :eyes: | docs | | create_user | :pencil2: | docs | | deactivate_user | :arrows_counterclockwise: | docs | | reactivate_user | :arrows_counterclockwise: | docs |

</details> <details> <summary><strong>Stages, Sources, Tags</strong> (3 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_stages | :eyes: | docs | | list_sources | :eyes: | docs | | list_tags | :eyes: | docs |

</details> <details> <summary><strong>Requisitions</strong> (2 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_requisitions | :eyes: | docs | | get_requisition | :eyes: | docs |

</details> <details> <summary><strong>Templates</strong> (4 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_feedback_templates | :eyes: | docs | | create_feedback_template | :pencil2: | docs | | delete_feedback_template | :wastebasket: | docs | | list_form_templates | :eyes: | docs |

</details> <details> <summary><strong>Webhooks</strong> (3 tools)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_webhooks | :eyes: | docs | | create_webhook | :pencil2: | docs | | delete_webhook | :wastebasket: | docs |

</details> <details> <summary><strong>EEO</strong> (1 tool)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_eeo_responses | :eyes: | docs |

</details> <details> <summary><strong>Audit Events</strong> (1 tool)</summary>

| Tool | Annotation | API Docs | |---|---|---| | list_audit_events | :eyes: | docs |

</details>

Client Configuration

Claude Desktop

{
  "mcpServers": {
    "lever": {
      "type": "streamable-http",
      "url": "http://localhost:3000/mcp"
    }
  }
}

Generic MCP Client

Any client that supports Streamable HTTP transport can connect to http://<host>:3000/mcp.

Development

make test                                      

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars3
CategoryAI
Updated6mo ago
Forks1

Languages

Go

Trust signals

81/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

3 low