Skip to main content
Glama
esinecan

instaffo-mcp-server

by esinecan

instaffo-mcp-server

Ein MCP-Server, der einem KI-Assistenten Zugriff auf Ihren eigenen Instaffo-Kandidatenaccount gibt, authentifiziert mit Ihrer eigenen Browser-Sitzung. Persönliches Job-Such-Tool. Läuft vollständig lokal.

Instaffo ist ein zweiseitiger Recruiting-Marktplatz (Kandidaten werden mit Unternehmen gematcht). Dieser Server stellt die Kandidatenseite bereit: Lesen Sie Ihr Profil und Stellenvorschläge, lesen Sie Unterhaltungen und führen Sie reversible Schreibaktionen von einem MCP-Client aus.

Funktionsweise

Instaffo hat keine öffentliche Kandidaten-API, daher authentifiziert sich der Server mit einer echten eingeloggten Sitzung. Seine Kandidaten-Web-App kommuniziert mit einer sauberen JSON-API unter app.instaffo.com/candidate/api/v1/*, die ausschließlich durch das Sitzungscookie authentifiziert wird (kein Bearer-Token). Der Server ist also ein schlanker, cookie-authentifizierter httpx-Client, kein Scraper. Ein Browser (über patchright) wird nur einmal verwendet, um die Sitzung beim Login zu erstellen.

MCP client ── stdio ──> instaffo-mcp-server ──cookie──> app.instaffo.com JSON API
                              │
                     storage-state.json  (cookies, written 0600, git-ignored)
                              ▲
                     instaffo-mcp --login  (one-time browser sign-in)

Related MCP server: Chrome MCP Server

Setup

uv sync
uv run patchright install chromium     # one-time, for login only
uv run instaffo-mcp --login            # opens a browser; sign in once
uv run instaffo-mcp --auth-status      # confirm the session is stored

Registrieren Sie es bei Ihrem MCP-Client (stdio):

{
  "command": "uv",
  "args": ["run", "--directory", "/path/to/instaffo-mcp-server", "instaffo-mcp"]
}

Werkzeuge

Leseoperationen (keine Nebenwirkungen):

Tool

Rückgabe

instaffo_whoami

Ihre Identität (Name, E-Mail, Berufsbezeichnung)

instaffo_get_profile

Ihr Profil: Dienstalter, Standort, Fähigkeiten, Lebenslauf-Zusammenfassung

instaffo_list_job_suggestions

Ihre aktuellen Matches, mit Zählern

instaffo_get_job_suggestion

eine Rolle vollständig: Beschreibung, Anforderungen, Gehalt, Screening-Fragen

instaffo_list_conversations

Unternehmensanfragen (eingehendes Interesse) und Ihre Bewerbungen

instaffo_auth_status

ist eine Sitzung vorhanden (--deep validiert sie live)

instaffo_search_skills

Fähigkeiten-UUIDs in Instaffos geschlossenem Vokabular nachschlagen

Schreiboperationen (jedes Schreibwerkzeug erfordert confirm; ohne dieses wird kein Netzwerkaufruf getätigt und Sie erhalten die exakte Nutzlast zurück, die gesendet worden wäre):

Tool

Wirkung

Endpunkt

instaffo_save_job / instaffo_unsave_job

einen Vorschlag als Lesezeichen speichern

POST|DELETE .../job_suggestions/{uuid}/favorite

instaffo_set_about

ersetzt den 'Über mich'-Text

POST .../profile/about

instaffo_set_skills

ersetzt den Fähigkeiten-Satz

POST .../profile/skills

instaffo_set_languages

ersetzt die Sprachliste

POST .../profile/languages

instaffo_set_industries

ersetzt die Branchenerfahrung

POST .../profile/industries

instaffo_set_links

ersetzt die sozialen Links

POST .../profile/links

instaffo_set_seniority

legt das Berufserfahrungsniveau fest

POST .../profile/professional_background

instaffo_set_salary

jährliche Gehaltserwartung

PATCH .../factors/salary

instaffo_set_job_roles

Zielrollen (steuert Matching)

PATCH .../factors/job_roles

instaffo_set_job_seeking_activity

aktiv / passiv

PATCH .../factors/job_seeking_activity

instaffo_add_cv_station

einen Arbeits- oder Bildungseintrag hinzufügen

POST .../cv

instaffo_update_cv_station

einen Eintrag bearbeiten

PATCH .../cv/{uuid}

instaffo_delete_cv_station

einen Eintrag entfernen (irreversibel)

DELETE .../cv/{uuid}

instaffo_set_skill_experience

Jahre pro Fähigkeit

POST .../experience_durations/bulk_save

Alle Endpunkte wurden beobachtet, nie erraten. Der Vertrag, aus dem sie erstellt wurden, ist docs/API.md, datiert und aus einer aufgezeichneten Aufnahme abgeleitet.

Warum jeder Schreibvorgang zurückliest

Diese API gibt ein bloßes {"success": true} für jede Schreiboperation zurück und validiert nur teilweise – ein PATCH mit fehlenden Pflichtfeldern oder mit falsch typisierten Werten gibt ebenfalls {"success": true} zurück. Die Antwort kann Ihnen daher nicht sagen, was gespeichert wurde. Jedes Schreibwerkzeug liest GET /profile erneut aus und meldet verified plus value_now; vertrauen Sie diesen, nicht der Antwort.

Zwei Fallstricke bei Feldern, die Sie kennen sollten, bevor Sie etwas aufrufen:

  • instaffo_set_skills leitet topSkills serverseitig neu ab. Es gibt kein topSkills-Feld zum Senden und kein UI-Steuerelement dafür. Ein Speichern mit unverändertem Fähigkeiten-Satz hat trotzdem die Top Drei verschoben.

  • Fähigkeiten sind auf 23 begrenzt (skills 20 + topSkills 3). Überschreitung gibt "maximum is 20 characters" zurück – die Nachricht sagt Zeichen, die Einheit sind Elemente.

Überwacht, absichtlich: Bewerben und Nachrichten

Zwei Aktionen sind absichtlich nicht als Feuer-und-Vergessen-Werkzeuge implementiert: Bewerben auf eine Stelle und Nachrichten an einen Recruiter.

Bewerben ist keine einzelne Anfrage. Es ist ein mehrstufiger Assistent, der dauerhafte Selbstdarstellungen in Ihr echtes Profil schreibt, bevor er absendet:

  1. eine Selbsteinschätzung der Fähigkeiten (Jahresschieber pro erforderlicher Fähigkeit, z.B. 0-5), die über experience_durations/bulk_save automatisch in Ihrem Profil gespeichert wird,

  2. Ihre Gehaltserwartung (aus Ihrem Profil vorausgefüllt),

  3. eine Mehrfachauswahl zu „KI-Tools, die Sie nutzen“ und „KI-Fähigkeiten“,

  4. eine endgültige Absendung, die die Bewerbung erstellt und einen Chat mit dem Recruiter öffnet.

Da es sich um echte, nach außen gerichtete Entscheidungen darüber handelt, wie Sie sich präsentieren, und der endgültige Absende-Endpunkt erst erscheint, wenn der gesamte Ablauf abgeschlossen ist, sind die Bewerbungs- und Nachrichtenwerkzeuge für eine überwachte Sitzung vorgesehen, in der der Kontoinhaber die Eingaben genehmigt. Sie sind nicht gegen einen erratenen Endpunkt gebaut. Die beobachteten Unterschritte und die Assistentenform sind hier festgehalten, damit diese Sitzung schnell verläuft.

Befehle

instaffo-mcp                 # run the MCP server (stdio)
instaffo-mcp --login         # headed manual login, persist the session
instaffo-mcp --capture       # record app API traffic to a JSONL (diagnostics)
instaffo-mcp --auth-status [--deep]

Sicherheit und Privatsphäre

  • Sitzungsmaterial (profile/, storage-state.json, captures/, .env) befindet sich unter ~/.instaffo-mcp, wird mit Berechtigung 0600 geschrieben und ist in .gitignore aufgeführt. Es wird niemals committet.

  • Schreibwerkzeuge sind bestätigungsgeschützt und berühren nur reversible Oberflächen.

  • Dies ist ein persönliches, lokales Werkzeug für Ihren eigenen Account. Es speichert keine Daten anderer und kommuniziert nur mit Instaffo mit Ihrer eigenen Sitzung.

Vorherige Arbeiten

Die Sitzungserfassungs- und Browser-Muster sind im Geiste von stickerdaniel/linkedin-mcp-server (Apache-2.0) übernommen, das eine persönliche LinkedIn-Sitzung auf dieselbe Weise authentifiziert.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to control and automate your Chrome browser directly, leveraging existing login states and configurations for tasks like content analysis, semantic search across tabs, screenshots, network monitoring, and interactive operations.
    10
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Lets AI assistants control your real Chrome browser to perform web tasks like reading pages, taking screenshots, clicking, and typing, using your existing logged-in sessions.
    131
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to access and search local browser history, bookmarks, open tabs, and downloads for personalized context.
    MIT

View all related MCP servers

Related MCP Connectors

  • Give AI agents the LinkedIn tools to find, qualify, engage, and follow up with prospects.

  • Run LinkedIn outreach from your AI chat: find leads, launch campaigns, send, and reply.

  • Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/esinecan/instaffo-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server