Skip to main content
Glama
jobinja-employer-mcp

jobinja-employer-mcp

by saeedsepehr

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
JOBINJA_HOMENoBrowser profile and login session directory (JOBINJA_HOME)~/.jobinja-mcp
JOBINJA_BROWSERNoBrowser to use: chrome, msedge, or chromium (internal Playwright browser)chrome
JOBINJA_COMPANYNoCompany identifier; determined automatically from the panel by default
JOBINJA_READ_ONLYNoWhen set (e.g. to 1), the assistant cannot change anything in the panel; mutating tools are disabled. Empty by default (mutating tools enabled).
JOBINJA_HTTP_TOKENNoSecret token for the HTTP server; generated automatically on the first run of `jobinja-employer-mcp http`
JOBINJA_DOWNLOAD_DIRNoDirectory where downloaded resumes are saved~/Downloads/jobinja-resumes

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
jobinja_statusA

Check whether the saved Jobinja session is still logged in and which company panel it uses.

list_postsA

List the company's job ads with applicant counts.

status: all | active | rejected | draft | closed | archived. Each item has post (short id such as "tMEO", used by the other tools), numeric post_numeric_id, title, publish state and per-stage counts.

list_applicantsA

List applicants of a job ad, 25 per page (newest first by default).

post: short id from list_posts (e.g. "tMEO"). status: pending (unreviewed) | read (awaiting decision) | interview | hired | dismissed | expired | canceled. starred / has_notes: only starred applicants / only those with team notes. sort: id (newest) | id_asc (oldest) | relevance. Each row has applicant_id (for the other tools), status, starred flag, note count and folders.

get_applicantB

Get one applicant: contact info, profile fields, Jobinja profile text, star, team notes, current decision and rejection reason.

applicant_id comes from list_applicants; page_hint (the list page it was on) makes lookup faster. Like opening it in the panel, viewing an unreviewed (pending) applicant marks it as seen.

download_resumeC

Download an applicant's attached resume file (usually PDF) and return its local path, ready to be read.

Default folder: JOBINJA_DOWNLOAD_DIR//.

download_resumesA

Bulk-download resumes for a job ad, newest first, optionally filtered by status / starred (see list_applicants).

Downloads at most limit files into JOBINJA_DOWNLOAD_DIR// (or dest_dir). Viewing pending applicants marks them as seen, as in the panel.

get_resume_textA

Extracted plain text of an applicant's PDF resume, truncated to max_chars.

Much cheaper in tokens than reading the PDF itself. Scanned (image-only) PDFs give little or no text; use download_resume for those.

screen_applicantsA

Compact screening digest of one page (up to 25) of applicants, for fast, low-token shortlisting.

For each applicant: headline, status, star, notes, folders, key profile fields (work history, education, skills) and the first resume_chars characters of the PDF resume text. Gender, birth year, marital status and contact details are left out on purpose. Read the digests, then use get_resume_text / get_applicant only for the promising ones. Takes about a minute per page; opening pending applicants marks them as seen.

list_rejection_reasonsA

Rejection reasons accepted by reject_applicant (code -> panel label).

set_starA

Star (starred=true) or unstar (starred=false) an applicant. Stars are internal to the company.

add_noteB

Add a confidential team note to an applicant (visible to company members only, not to the candidate).

delete_noteB

Delete one team note whose text contains text_contains (e.g. to fix a mistaken note). Only notes you can delete in the panel.

list_foldersA

List the company's resume folders (پوشه‌های رزومه) with their ids and per-stage counts.

list_folder_applicantsA

List applicants saved in a resume folder, 25 per page. Each row includes the post it applied to.

create_folderA

Create a new resume folder and return its id. If a folder with this exact title exists, returns it instead.

set_applicant_foldersA

Add an applicant to and/or remove it from resume folders. add / remove take folder ids or exact titles (see list_folders; use create_folder first for a new one). Returns the applicant's folders afterwards.

reject_applicantA

Mark an applicant as rejected (نامناسب) with a reason code from list_rejection_reasons.

Jobinja notifies the candidate of the rejection; message is optional extra text sent to the candidate with it (not an internal note: use add_note for that). dry_run=true fills the rejection form without submitting it.

restore_applicantA

Undo a decision: move an applicant back to "awaiting decision" (در انتظار تعیین وضعیت). Jobinja notifies the candidate.

open_login_windowA

Open a browser window on the user's screen to sign in to the Jobinja employer panel (first use, or when jobinja_status reports the session expired). The user types their own credentials; waits up to 10 minutes.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

B3.4/5.0

Scored across 19 tools

Disambiguation4/5

Most tools have clearly distinct targets (list vs. screen vs. download resume, reject vs. restore, notes vs. stars vs. folders). A few boundaries could blur—list_applicants vs. screen_applicants vs. list_folder_applicants and download_resume vs. download_resumes vs. get_resume_text overlap in purpose—but descriptions explicitly disambiguate with token-cost and scope guidance.

Naming Consistency4/5

Strong verb_noun snake_case pattern throughout (list_posts, get_applicant, download_resume, add_note, reject_applicant). Minor deviations exist: list_folder_applicants breaks the noun ordering used elsewhere, and jobinja_status is noun-based rather than verb-based.

Tool Count4/5

19 tools for a full employer-side applicant workflow (session, posts, applicants, resumes, screening, decisions, notes, folders) is reasonable and each tool maps to a real operation. It's on the heavier side but not bloated with redundant tools.

Completeness3/5

Coverage is broad—listing, viewing, downloading, screening, rejection, restore, notes, stars, folders, session handling—but there's a notable gap: no tool to advance an applicant to interview/hired stage, despite those statuses being filterable and counted. The decision lifecycle is therefore one-sided (reject/restore only).

Maintenance

ActivityMaintained
ResponsivenessNo issues