Traits Matcher
MCP Traits Matcher
Description
A personality analysis server built using the FastMCP framework. It provides tools and resources for personality analysis and matching.
Features
- Creates persons and traits.
- Adds descriptions to persons, updating their personality based on traits.
- Finds people matching a company's job description.
- Exposes resources for listing persons and traits.
Setup Instructions
Prerequisites
- Python 3.x
- pip
Installation
- Clone the repository.
- Create a virtual environment:
python -m venv venv - Activate the virtual environment:
- Windows:
venv\Scripts\activate - Linux/macOS:
source venv/bin/activate
- Windows:
- Install dependencies:
pip install --user -r requirements.txt
Database Setup
The server uses SQLite databases (mcp_persons.db and mcp_traits.db). These databases will be created automatically when the server is run.
Usage Examples
Creating a person
mcp.create_person(name="John Doe")
Adding a description to a person
mcp.add_description(name="John Doe", description="friendly and dominant")
Creating a trait
mcp.create_trait(name="friendly", friendliness=8.0, dominance=2.0)
Finding matches for a job description
mcp.find_matches(company_name="Acme Corp", job_description="Looking for friendly and dominant candidates")
API Documentation
Resources
persons://all: Lists all persons.traits://all: Lists all traits.persons://{name}: Gets a person by their name.
Tools
create_person: Creates a new person.add_description: Adds a description to a person.create_trait: Creates a new trait.find_matches: Finds people matching a job description.
Dependencies
scipypydantic>=2.7.2,<3.0.0fastmcp
License
MIT-0 License