MCP ExplorerExplorer

Job Hunting Assistant

@shayne007on 21 days ago
1 Apache-2.0
FreeCommunity
AI Systems
mcp server to do job search and give advices

Overview

What is Job Hunting Assistant

Job-hunting-assistant is an AI-powered tool developed using Python and LLM technologies, designed to assist users in their job search by providing job recommendations and optimizing resumes.

Use cases

Use cases include job seekers receiving personalized job recommendations, resume optimization for specific job roles, and market analysis for job trends.

How to use

Users can interact with the job-hunting-assistant through the MCP protocol to request job recommendations. The server processes these requests by retrieving job listings and matching them with the user’s resume.

Key features

Key features include web scraping to gather job descriptions, resume optimization based on market demands, and intelligent matching using LLM and DeepSeek API.

Where to use

Job-hunting-assistant can be utilized in various fields such as recruitment, career counseling, and job placement services.

Content

Job hunting assistant

This is a AI assitant project implemented by python using LLM and relative technics, which aims to help me to find a job.

Features

  • Web crawcle to collect the job descriptions published on the internet.
  • According to the market investigation and requirements, optimizing the resume to match the most needed position

Key Tech Highlight

  • LLM’s superpower to optimizing text structure
  • RAG statege to supply rich context for LLM
  • RAG summary content to limit tokens sent to LLM
  • MCP Server to provide the tools LLM need when to take actions

System Architecture

graph TB
    subgraph "Entry Point"
        A[__init__.py] --> B[server.py]
    end
    
    subgraph "Core Server"
        B --> C[JobSearchMCPServer]
        C --> D[FastMCP Instance]
        C --> E[Logger Configuration]
    end
    
    subgraph "Tools Layer"
        F[JobTools Class] --> G[get_joblist_by_expect_job]
        F --> H[get_job_by_resume]
        C --> F
    end
    
    subgraph "LLM Integration"
        I[LLMClient] --> J[OpenAI Client]
        J --> K[DeepSeek API]
        F -.-> I
    end
    
    subgraph "Web Scraping"
        L[listjob.py] --> M[Selenium WebDriver]
        M --> N[BOSS直聘网站]
        G --> L
    end
    
    subgraph "Prompt Management"
        O[prompt.py] --> P[Job_Search_Prompt Template]
        H --> O
    end
    
    subgraph "External Dependencies"
        N[BOSS直聘网站]
        K[DeepSeek API]
        Q[Local job.txt file]
        G --> Q
    end
    
    style A fill:#e1f5fe
    style C fill:#f3e5f5
    style F fill:#e8f5e8
    style I fill:#fff3e0
    style L fill:#fce4ec

Data Flow

  • Client requests job recommendations via MCP protocol
  • Server retrieves job listings (currently from local file, can use web scraping)
  • Combines job data with user resume using AI prompt template
  • Sends to DeepSeek API for intelligent matching
  • Returns personalized job recommendations and advice

How run the project

  • First, we need to install necessary packages
  • Then, prepare the data we need
  • Setup environment variables via the .env file
  • we use a local chromedriver to do web search, you should download it first

chromedriver_path=“/Users/fengshiyi/Downloads/chromedriver-mac-x64/chromedriver”

  • Now, we can use args to specify the working directory and run the server:
uv --directory /Users/fengshiyi/Downloads/shayne/learning/LLM/py-projects/job-hunting-assistant/src/job_hunting_server run job-hunting-assistant
  • Claude Desktop or Cline
{
  "mcpServers": {
    "job_hunting_server": {
      "command": "uv",
      "args": [
        "--directory",
        "/Users/fengshiyi/Downloads/shayne/learning/LLM/py-projects/job-hunting-assistant/src/job_hunting_server",
        "run",
        "job-hunting-assistant"
      ]
    }
  }
}

Tools

No tools

Comments