io.github.DmytroRybka/jobctl

MCPcommunautéen ligne
v0.5.1io.github.DmytroRybkaUnknownMis à jour il y a 1 mois

Job application tracker for developers - AI agents write over MCP, you review in a dashboard.

État de l’endpointen ligne
vérifié il y a 17 h · 622 ms
100 % des dernières 4 vérifications ont atteint cet endpoint
Fonctionne dans
ClaudeCursorCopilotChatGPTGemini

Déduit des transports déclarés par cette annonce (streamable-http). Un client absent de cette liste n’est pas écarté pour autant — c’est simplement quelque chose que Forge ne peut pas confirmer.

Indexé automatiquement depuis des sources publiques. Pas encore vérifié par son développeur sur Forge.Revendiquer cette annonce →
il y a 1 moisDernière mise à jour
Paquet
Auteurio.github.DmytroRybka
LicenceUnknown
Version0.5.1
Sourcemcp-registry
Statut de confiance
B
60/100Bon
Listé dans l’index Forge+10/10
Identité de l’éditeur vérifiée+0/30
Éditeur : aucune référence de dépôt n’est enregistrée pour cette annonce, `forge publish` ne peut donc pas vérifier la propriété automatiquement. Utilisez « Revendiquer cette annonce » ci-dessus — Forge les examine à la main.
Vérification de domaine+0/10
Actuellement indisponible pour ce type d’annonce — la vérification de domaine ne s’exécute aujourd’hui que pour les paquets adossés à npm, cette ligne ne peut donc pas encore être obtenue ici, quel que soit le contenu hébergé sur le domaine.
Analyse d’injection de prompt · propre+30/30
Analyse d’obfuscation / exfiltration · propre+20/20
StatutIndexé par la communauté
ÉditeurNon vérifié
SignatureNon signé
Domaine
Provenance
DépendancesNon audité
Surface d’outils11 outils · aucun privilégié
Analyse de sécurité✓ Proprevlive · aujourd’huiQuelle est l’efficacité de cette analyse ?
PROMPTtool:log_interviewLinks to undeclared domains: linkedin.com, company.com
ÉvaluationsAucune
Indexé17 juil. 2026

La vérification confirme l’identité de l’éditeur (la propriété du dépôt), pas la sûreté du code. L’analyse de sécurité couvre les CVE connues et les scripts d’installation suspects.

Outils

11 outils · aucun privilégié
Observé en direct depuis l’endpoint du fournisseur17h ago

Lu depuis un véritable échange MCP initialize → tools/list contre l’endpoint déclaré. Aucun outil n’a été invoqué — tools/list est l’appel d’introspection en lecture seule que le protocole prévoit pour cela. Cela reflète ce que le serveur annonçait à cet instant ; un endpoint hébergé n’est figé sur aucune version et peut changer sans préavis.

  • https://app.jobctl.app/mcp11 outils · 622 ms
add_applicationTrack a new job application. Pass either a single `raw` line — `add_application({raw: "Bosch, Tech Lead, prio A, due friday, remote, via LinkedIn"})` — or structured fields (`company` and `role` required then). Returns the created application and possible-duplicate warnings; if duplicates are liste…

Track a new job application. Pass either a single `raw` line — `add_application({raw: "Bosch, Tech Lead, prio A, due friday, remote, via LinkedIn"})` — or structured fields (`company` and `role` required then). Returns the created application and possible-duplicate warnings; if duplicates are liste…

ParamètreTypeDescription
rawstringFree-form line: "Company, Role, prio A|B|C, due <date>, remote|hybrid|onsite, via <source>, https://…, in <location>, applied <date>"
companystring
rolestring
statusstring
prioritystringA = top priority
remotestring
remote_notestringe.g. "2 days office"
sourcestringLinkedIn, referral, recruiter, Easy Apply…
urlstringLink to the job posting
locationstring
salary_askedintegerWhat the candidate asked for — yearly gross EUR as a plain number, e.g. 110000
salary_range_minintegerPosting salary range lower bound — yearly gross EUR, plain number
salary_rangeintegerPosting salary range upper bound — yearly gross EUR, plain number
cv_variantstringWhich CV was sent: DE, EN, AI-focused…
match_notesstringMarkdown match assessment: why the candidate fits this role — strengths vs requirements, gaps, level/salary advice, process notes. Save your vacancy analysis h…
next_interview_atstringISO datetime, e.g. 2026-07-20T14:00:00+02:00
next_actionstringe.g. "follow-up", "thank-you email"
next_action_duestringISO date YYYY-MM-DD
applied_atstringISO date YYYY-MM-DD
list_applicationsList job applications. Filter by view (active = default working set, archive = rejected/withdrawn/no-response), status list, priority, or free-text search in company/role. Example: `list_applications({view: "active"})`, `list_applications({q: "bosch"})`.

List job applications. Filter by view (active = default working set, archive = rejected/withdrawn/no-response), status list, priority, or free-text search in company/role. Example: `list_applications({view: "active"})`, `list_applications({q: "bosch"})`.

ParamètreTypeDescription
viewstring
statusstringComma-separated: started_apply, waiting_referral, applied, waiting, interview, offer, accepted, rejected, no_response, on_hold, withdrawn, archived
prioritystring
qstringSearch in company/role
limitinteger
update_applicationUpdate fields of an application (get the id from list_applications). Status changes are logged to the timeline automatically. Example: `update_application({id: "…", status: "interview", next_action: "prepare system design", next_action_due: "2026-07-20"})`.

Update fields of an application (get the id from list_applications). Status changes are logged to the timeline automatically. Example: `update_application({id: "…", status: "interview", next_action: "prepare system design", next_action_due: "2026-07-20"})`.

ParamètreTypeDescription
id*string
companystring
rolestring
statusstring
prioritystringA = top priority
remotestring
remote_notestringe.g. "2 days office"
sourcestringLinkedIn, referral, recruiter, Easy Apply…
urlstringLink to the job posting
locationstring
salary_askedintegerWhat the candidate asked for — yearly gross EUR as a plain number, e.g. 110000
salary_range_minintegerPosting salary range lower bound — yearly gross EUR, plain number
salary_rangeintegerPosting salary range upper bound — yearly gross EUR, plain number
cv_variantstringWhich CV was sent: DE, EN, AI-focused…
match_notesstringMarkdown match assessment: why the candidate fits this role — strengths vs requirements, gaps, level/salary advice, process notes. Save your vacancy analysis h…
next_interview_atstringISO datetime, e.g. 2026-07-20T14:00:00+02:00
next_actionstringe.g. "follow-up", "thank-you email"
next_action_duestringISO date YYYY-MM-DD
applied_atstringISO date YYYY-MM-DD
add_noteAppend a free-text note to an application timeline — recruiter call summaries, interview instructions, pasted messages. Multiline markdown is fine. Example: `add_note({application_id: "…", text: "Recruiter: team of 5, on-call rotation, offer range 85-95k"})`.

Append a free-text note to an application timeline — recruiter call summaries, interview instructions, pasted messages. Multiline markdown is fine. Example: `add_note({application_id: "…", text: "Recruiter: team of 5, on-call rotation, offer range 85-95k"})`.

ParamètreTypeDescription
application_id*string
text*string
log_interviewLog an interview for an application (max 10 per application): when it takes place, its status (planned or done), who attends (each with an optional profile link), related links (prep materials the company sent, meeting URL), and a short recap of what was discussed. Also keeps the application's next…

Log an interview for an application (max 10 per application): when it takes place, its status (planned or done), who attends (each with an optional profile link), related links (prep materials the company sent, meeting URL), and a short recap of what was discussed. Also keeps the application's next…

NOTELinks to undeclared domains: linkedin.com, company.com
ParamètreTypeDescription
application_id*string
scheduled_at*stringISO datetime with offset, e.g. 2026-07-20T14:00:00+02:00
statusstringplanned (default) or done
attendeesarrayWho attends, each with an optional profile link
linksarrayRelated links: prep materials, meeting URL, docs
recapstringShort recap of what was discussed
get_dueWhat is burning today: applications with next_action_due today or overdue. Call this when the user asks "what should I do today?" about their job search.

What is burning today: applications with next_action_due today or overdue. Call this when the user asks "what should I do today?" about their job search.

Aucun schéma d’entrée n’a été publié pour cet outil.

get_plannedWhat is actually SCHEDULED: interviews with their time, attendees and meeting links, plus the actions falling due, for today, tomorrow, or the next seven days. Use this whenever the user asks what is planned, what the day or week looks like, or before proposing a time to anyone — get_due only knows…

What is actually SCHEDULED: interviews with their time, attendees and meeting links, plus the actions falling due, for today, tomorrow, or the next seven days. Use this whenever the user asks what is planned, what the day or week looks like, or before proposing a time to anyone — get_due only knows…

ParamètreTypeDescription
rangestringtoday (default), tomorrow, or week (today plus the next 6 days)
attach_analysisAttach a markdown company analysis (research you produced) to an application. Single document per application — a new call REPLACES the previous one. Max 100000 bytes (~100 KB) of utf-8. The user reads it in the dashboard, e.g. before an interview. Example: `attach_analysis({application_id: "…", ma…

Attach a markdown company analysis (research you produced) to an application. Single document per application — a new call REPLACES the previous one. Max 100000 bytes (~100 KB) of utf-8. The user reads it in the dashboard, e.g. before an interview. Example: `attach_analysis({application_id: "…", ma…

ParamètreTypeDescription
application_id*string
markdown*stringThe analysis as markdown
attach_fileAttach or replace a file on an application so the user sees it in the dashboard: a CV/resume (kind: 'cv') or a cover letter (kind: 'cover_letter'). Pass the file bytes as base64 in data_base64. One file per (application, kind) - a new call REPLACES the previous one. Max ~5 MB; pdf/doc/docx/txt/md (…

Attach or replace a file on an application so the user sees it in the dashboard: a CV/resume (kind: 'cv') or a cover letter (kind: 'cover_letter'). Pass the file bytes as base64 in data_base64. One file per (application, kind) - a new call REPLACES the previous one. Max ~5 MB; pdf/doc/docx/txt/md (…

ParamètreTypeDescription
application_id*string
kind*string
filename*string
data_base64*stringBase64-encoded file bytes
mimestringOptional; inferred from the filename extension when omitted
attach_interview_fileAttach prep material to a specific interview so the user sees it next to that round in the dashboard: the prep document you wrote, the job description, a deck, notes the company sent. Max 3 files per interview, 20000000 bytes (20 MB) each; pass the bytes as base64. Get interview ids from get_applic…

Attach prep material to a specific interview so the user sees it next to that round in the dashboard: the prep document you wrote, the job description, a deck, notes the company sent. Max 3 files per interview, 20000000 bytes (20 MB) each; pass the bytes as base64. Get interview ids from get_applic…

ParamètreTypeDescription
application_id*string
interview_id*string
filename*string
data_base64*stringBase64-encoded file bytes
mimestringOptional; inferred from the filename extension when omitted
get_applicationFull detail of one application: all fields, contacts, recent timeline events, and whether a company analysis is attached (fetch it via the dashboard or attach_analysis to replace).

Full detail of one application: all fields, contacts, recent timeline events, and whether a company analysis is attached (fetch it via the dashboard or attach_analysis to replace).

ParamètreTypeDescription
id*string

11 outils sur 11 ont publié une description.

Les noms et descriptions d’outils sont écrits par l’éditeur et affichés tels quels, comme du texte inerte. Ce sont les chaînes qu’un client MCP transmet à un modèle, alors Forge y recherche des motifs d’injection de prompt — tout constat apparaît avec l’analyse de sécurité ci-dessus. « Privilégié » est une correspondance de mot-clé sur le nom de l’outil, pas un audit de ce qu’il fait : un nom anodin peut tout de même tout faire.

À propos

Job application tracker for developers - AI agents write over MCP, you review in a dashboard.

Mots-clés
mcp
Alternatives
Comparaison des surfaces d’outils…

Aucune couverture des dépendances

Cette entrée ne publie aucun paquet npm : Forge n'a donc pas d'arbre de dépendances pour elle. C'est une lacune de couverture — pas une affirmation qu'elle n'a aucune dépendance.