Skip to content
Conduit

mcp server

lever-mcp

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

stefanoamorelli/lever-mcpcommunitylistedunreviewed

Set up

Runs on your computer. Pick your agent and operating system.

This project does not publish an install method we can turn into a config. Follow the README instead.

README

synced Oct 23, 2026

[!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

VariableRequiredDefaultDescription
LEVER_API_KEYYesLever API key
PORTNo3000HTTP listen port
LEVER_BASE_URLNohttps://api.lever.co/v1Override 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)

:eyes: read · :pencil2: create · :arrows_counterclockwise: update · :wastebasket: destructive

ToolAnnotationAPI Docs
list_opportunities:eyes:docs
get_opportunity:eyes:docs
create_opportunity:pencil2:docs
list_deleted_opportunities:eyes:docs
ToolAnnotationAPI 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
ToolAnnotationAPI Docs
list_opportunity_notes:eyes:docs
create_opportunity_note:pencil2:docs
delete_opportunity_note:wastebasket:docs
ToolAnnotationAPI Docs
list_opportunity_offers:eyes:docs
ToolAnnotationAPI Docs
list_opportunity_interviews:eyes:docs
update_opportunity_interview:arrows_counterclockwise:docs
delete_opportunity_interview:wastebasket:docs
ToolAnnotationAPI 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
ToolAnnotationAPI Docs
create_opportunity_panel:pencil2:docs
delete_opportunity_panel:wastebasket:docs
ToolAnnotationAPI Docs
list_opportunity_referrals:eyes:docs
list_opportunity_resumes:eyes:docs
list_opportunity_files:eyes:docs
ToolAnnotationAPI Docs
list_opportunity_applications:eyes:docs
get_opportunity_application:eyes:docs
ToolAnnotationAPI Docs
list_opportunity_forms:eyes:docs
ToolAnnotationAPI Docs
list_archive_reasons:eyes:docs
get_archive_reason:eyes:docs
ToolAnnotationAPI Docs
get_contact:eyes:docs
ToolAnnotationAPI 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
ToolAnnotationAPI Docs
list_users:eyes:docs
get_user:eyes:docs
create_user:pencil2:docs
deactivate_user:arrows_counterclockwise:docs
reactivate_user:arrows_counterclockwise:docs
ToolAnnotationAPI Docs
list_stages:eyes:docs
list_sources:eyes:docs
list_tags:eyes:docs
ToolAnnotationAPI Docs
list_requisitions:eyes:docs
get_requisition:eyes:docs
ToolAnnotationAPI Docs
list_feedback_templates:eyes:docs
create_feedback_template:pencil2:docs
delete_feedback_template:wastebasket:docs
list_form_templates:eyes:docs
ToolAnnotationAPI Docs
list_webhooks:eyes:docs
create_webhook:pencil2:docs
delete_webhook:wastebasket:docs
ToolAnnotationAPI Docs
list_eeo_responses:eyes:docs
ToolAnnotationAPI Docs
list_audit_events:eyes:docs

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                                              # run all tests
make build                                             # compile binary
go test ./internal/tools/ -run TestConformance         # annotation & schema conformance

API Reference

Lever API Documentation

License

AGPL-3.0

Copyright (c) 2026 Stefano Amorelli (stefano@amorelli.tech)

↑↓ navigate openesc close