
mcp test
基于 MCP 协议的招聘管理系统,用于管理候选人、职位和申请。
Repository Info
About This Server
基于 MCP 协议的招聘管理系统,用于管理候选人、职位和申请。
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
PageDown ATS
PageDown ATS is an Applicant Tracking System that uses Model Context Protocol (MCP) to provide a suite of tools for managing candidates, jobs, and job applications. This system helps streamline the recruitment process by providing tools to search candidates, track applications, and manage job postings.
Overview
The application provides an API through MCP (Model Context Protocol) and connects to a PostgreSQL database to store and retrieve candidate and job information. It allows users to:
- Search for candidates by name
- View detailed candidate profiles including skills, education, work experience, and achievements
- List all available jobs
- Search for jobs by title
- View job applications with candidate details
- Update application statuses (Received, Screening, Interviews, Offer, Hired, Not Proceeding)
- And more
Installation and Setup
Prerequisites
- Python 3.12+
- Docker and Docker Compose (for running PostgreSQL database)
Setup Instructions
-
Clone the repository
-
Set up the database
Navigate to the postgres directory and start the database:
cd postgres docker-compose up -dThis will start:
- PostgreSQL database on port 5432
- pgAdmin interface on port 5050 (accessible at http://localhost:5050)
- Login: admin@admin.com
- Password: admin
The database will be automatically populated with sample data from the migrations folder.
-
Install Python dependencies
pip install -r requirements.txtOr install dependencies from pyproject.toml:
pip install -e .
Running the Application
Start the MCP server:
python main.py
The server runs in SSE (Server-Sent Events) mode and provides access to all the registered tools.
Project Structure
main.py- The main entry point that initializes the MCP serverpgdb.py- Database utilities for connecting to and querying PostgreSQLmcp_tools/- Directory containing all the MCP toolstest_tools.py- Basic demo toolsget_all_candidate_names.py- Fetches all candidate namessearch_candidates_by_name.py- Searches candidates by nameget_candidate_details.py- Gets detailed candidate informationget_job_application_statuses.py- Fetches all valid application statusesget_candidate_job_applications.py- Gets all applications for a candidatelist_all_jobs.py- Lists all available jobsget_job_applications_with_candidates.py- Gets applications with candidate detailssearch_jobs_by_title.py- Searches jobs by titleget_job_details.py- Gets detailed job informationupdate_job_application_status.py- Updates application status
postgres/- PostgreSQL Docker setup and migrationsdocker-compose.yml- Docker configurationmigrations/- Database migration scripts- Schema creation and data seeding scripts
Database Schema
The PostgreSQL database includes the following tables:
candidates- Stores information about job candidateswork_experience- Stores candidates' work historyeducation- Stores candidates' educational backgroundskills- Stores available skillscandidate_skills- Junction table linking candidates to their skillsachievements- Stores candidates' achievementsjobs- Stores information about job postingsjob_applications- Stores candidate applications for jobs
Tools API Reference
The following tools are available:
hello_world(name),goodbye_world(name)- Test toolsget_all_candidate_names()- Returns a list of all candidate namessearch_candidates_by_name(name)- Searches for candidates by nameget_candidate_details(candidate_id)- Gets detailed info about a candidateget_job_application_statuses()- Returns all valid application statusesget_candidate_job_applications(candidate_id)- Gets job applications for a candidatelist_all_jobs()- Lists all job postingsget_job_applications_with_candidates(job_id)- Gets applications for a jobsearch_jobs_by_title(title)- Searches jobs by titleget_job_details(job_id)- Gets detailed job informationupdate_job_application_status(application_id, new_status)- Updates an application status
License
This project is proprietary software and is not licensed for redistribution.
Quick Start
Clone the repository
git clone https://github.com/farajfarook/mcp-testInstall dependencies
cd mcp-test
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.