Job Search MCP Server
Searches for AI/ML jobs and internships with filtering for entry-level positions and Python proficiency requirements
Searches for AI/ML jobs and internships with filtering for entry-level positions and Python proficiency requirements
Searches for AI/ML jobs and internships with filtering for entry-level positions and Python proficiency requirements
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Job Search MCP Server find AI/ML internships in New York with Python skills"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Job Search MCP Server
An MCP (Model Context Protocol) server that searches across multiple job sites for AI/ML internships and full-time roles with specific filtering criteria.
Features
Multi-site Job Search: Searches LinkedIn, Indeed, Glassdoor, ZipRecruiter, and Monster
AI/ML Focus: Specifically targets artificial intelligence and machine learning positions
Smart Filtering:
Filters for entry-level positions (less than 1 year experience)
Requires Python proficiency
Supports both internships and full-time roles
Real-time Results: Gets the latest job postings from all sites
Structured Data: Returns well-formatted job information with all relevant details
Related MCP server: JobSpy MCP Server
Installation
Clone or download this repository
Install dependencies:
npm installBuild the project:
npm run build
Usage
Running the Server
npm startOr for development:
npm run devAvailable Tools
1. search_ai_ml_jobs
Search for AI/ML jobs across all supported job sites.
Parameters:
location(string, optional): Job location (default: "Remote")maxResults(number, optional): Maximum results to return (default: 50)includeInternships(boolean, optional): Include internships (default: true)includeFullTime(boolean, optional): Include full-time roles (default: true)keywords(array, optional): Additional search keywords
Example:
{
"location": "San Francisco, CA",
"maxResults": 25,
"includeInternships": true,
"includeFullTime": true,
"keywords": ["deep learning", "NLP", "computer vision"]
}2. search_specific_job_site
Search for jobs on a specific job site.
Parameters:
site(string, required): Job site ("linkedin", "indeed", "glassdoor", "ziprecruiter", "monster")location(string, optional): Job location (default: "Remote")maxResults(number, optional): Maximum results to return (default: 25)
Example:
{
"site": "linkedin",
"location": "Remote",
"maxResults": 20
}Job Filtering Criteria
The server automatically applies the following filters:
For Full-time Roles:
Experience Level: Entry-level (less than 1 year experience)
Required Skills: Must include Python proficiency
Job Type: AI/ML related positions only
For Internships:
Job Type: AI/ML related positions only
Skills: Python proficiency preferred
AI/ML Keywords Detected:
Machine Learning
Artificial Intelligence
Data Science
Deep Learning
NLP (Natural Language Processing)
Computer Vision
Neural Networks
TensorFlow, PyTorch, Scikit-learn
Response Format
The server returns structured job data including:
{
"results": [
{
"site": "LinkedIn",
"jobs": [
{
"id": "unique_job_id",
"title": "Machine Learning Engineer",
"company": "Tech Company",
"location": "San Francisco, CA",
"type": "full-time",
"experienceLevel": "entry",
"description": "Job description...",
"requirements": ["Python", "Machine Learning"],
"skills": ["python", "tensorflow", "pytorch"],
"postedDate": "2024-01-15T10:30:00Z",
"applicationUrl": "https://...",
"source": "LinkedIn",
"isRemote": false,
"hasPythonRequirement": true,
"isAIMLRelated": true
}
],
"totalFound": 1,
"searchTime": 1500
}
],
"totalJobs": 1,
"searchTimestamp": "2024-01-15T10:30:00Z",
"filters": {
"location": "San Francisco, CA",
"maxResults": 50,
"includeInternships": true,
"includeFullTime": true,
"keywords": [],
"experienceLevel": "entry",
"requiredSkills": ["python"],
"jobTypes": ["ai", "ml", "machine learning", "artificial intelligence", "data science"]
}
}Configuration
Copy env.example to .env and modify as needed:
cp env.example .envAvailable configuration options:
RATE_LIMIT_PER_MINUTE: Rate limiting for requests (default: 30)REQUEST_TIMEOUT: Request timeout in milliseconds (default: 30000)USER_AGENT: User agent string for web scraping
Supported Job Sites
LinkedIn - Professional networking and job board
Indeed - General job search engine
Glassdoor - Job search with company reviews
ZipRecruiter - Job matching platform
Monster - Traditional job board
Technical Details
Language: TypeScript
Runtime: Node.js
Web Scraping: Cheerio for HTML parsing, Axios for HTTP requests
Architecture: Modular scraper system with base class and site-specific implementations
Error Handling
The server includes comprehensive error handling:
Network timeouts and connection errors
HTML parsing errors
Rate limiting protection
Graceful degradation when individual sites fail
Legal and Ethical Considerations
This tool is for educational and personal use. Please respect:
Website terms of service
Rate limiting to avoid overloading servers
Robots.txt files and scraping policies
Consider using official APIs when available
Contributing
Fork the repository
Create a feature branch
Add tests for new functionality
Submit a pull request
Available Tools
2 toolssearch_ai_ml_jobsC
Search for AI/ML internships and full-time roles across multiple job sites
Inputs: location, maxResults, includeInternships, includeFullTime, +1 more.
search_specific_job_siteC
Search for jobs on a specific job site
Inputs: site (required), location, maxResults.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 2 tools
The two tools have overlapping purposes, as both are for searching jobs, with one being a general AI/ML search and the other for specific sites. This creates ambiguity—an agent might struggle to choose between them when searching on a particular site, as the descriptions don't clearly delineate when to use each tool.
Both tools follow a consistent snake_case naming pattern with 'search' as the verb, which is predictable and readable. However, the slight inconsistency in naming (e.g., 'search_ai_ml_jobs' vs. 'search_specific_job_site') is minor, as they maintain a clear verb_noun structure.
With only 2 tools, the server feels thin for a job search domain, lacking essential operations like filtering, applying, or managing job listings. This limited scope suggests the tool set is underdeveloped and may not support comprehensive agent workflows.
The tool set is severely incomplete for job searching, missing critical functions such as filtering by location or salary, applying to jobs, saving listings, or tracking applications. This will likely cause agent failures in handling typical job search tasks beyond basic searches.
Maintenance
Related MCP Connectors
Open US internship and new-grad roles from company career sites, with eligibility filters. Keyless.
Search 200k+ live jobs and internships. Filter remote, salary, H-1B, then auto-apply on ApplyBolt.
Search job postings across Indeed, LinkedIn, and more from one request - titles, companies
searchnapply connects your AI agent to 800K+ open jobs taken straight from company career sites, kept up to date as companies add and close them. Search in your own words with the site's filters (role, location, remote, salary, experience, department), read postings in full, and tailor a resume or cover letter from your searchnapply profile. Save a search as a monitor to collect new postings and track what you applied to or skipped. It never invents a job or a salary, and it does not apply for you: you apply on the company's own page. Free plan included, within a daily call limit.
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceEnables AI assistants to search for jobs across multiple platforms (Indeed, LinkedIn, Glassdoor, etc.) using the JobSpy tool, with filtering and structured output.128MIT- AlicenseNot gradedqualityCmaintenanceEnables job search and scraping across multiple job boards (LinkedIn, Indeed, Glassdoor, etc.) with advanced filtering, directly from Claude Desktop or other MCP clients.6MIT
- FlicenseNot gradedqualityDmaintenanceEnables Claude to search AI/ML jobs across Greenhouse, Lever, and Adzuna, with resume tailoring and referral outreach assistance.5-
- AlicenseNot gradedqualityBmaintenanceEnables natural-language job search and aggregation from multiple recruitment websites with zero configuration, providing filtered results and standardized output for AI assistants.58 npmISC