Traits Matcher
Integrates with
FastMCP
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
scipy
pydantic>=2.7.2,<3.0.0
fastmcp
License
MIT-0 License