Skip to main content
Glama
RECRUITING_QUICK_START.md5.5 kB
# CATS Recruiting Toolsets - Quick Start Guide ## Installation (3 Steps) ### 1. Verify Files ```bash cd /home/vanman2025/Projects/ai-dev-marketplace/cats-mcp-server ls -l toolsets_recruiting.py # Should exist (40KB) ``` ### 2. Import and Register Add to your `server.py`: ```python from toolsets_recruiting import register_all_recruiting_toolsets # After defining mcp and make_request register_all_recruiting_toolsets(mcp, make_request) ``` ### 3. Start Server ```bash python server.py # Server runs on http://localhost:8000 ``` ## What You Get (64 Tools) ### Companies (22) ```python # Main list_companies(), get_company(), create_company() update_company(), delete_company() search_companies(), filter_companies() # Sub-resources list_company_activities(), create_company_activity() list_company_contacts() list_company_departments(), create_company_department() list_company_tags(), attach_company_tags() ``` ### Contacts (25) ```python # Main list_contacts(), get_contact(), create_contact() update_contact(), delete_contact() search_contacts(), filter_contacts() # Sub-resources list_contact_emails(), create_contact_email() list_contact_phones(), create_contact_phone() list_contact_activities(), create_contact_activity() list_contact_tags(), attach_contact_tags() ``` ### Activities (6) ```python list_activities(), get_activity() update_activity(), delete_activity() search_activities(), filter_activities() ``` ### Portals (8) ```python list_portals(), get_portal() list_portal_jobs() publish_job_to_portal(), unpublish_job_from_portal() submit_job_application() ``` ### Work History (3) ```python get_work_history() update_work_history() delete_work_history() ``` ## Quick Examples ### Create Company ```python company = await create_company( name="TechCorp Inc.", website="https://techcorp.com", city="San Francisco", state="CA" ) ``` ### Add Contact ```python contact = await create_contact( first_name="Jane", last_name="Smith", email="jane@techcorp.com", company_id=company["id"], title="VP Engineering" ) ``` ### Log Activity ```python await create_company_activity( company_id=company["id"], activity_type="meeting", description="Kickoff call completed" ) ``` ### Publish to Portal ```python await publish_job_to_portal( portal_id=123, job_id=456 ) ``` ## File Reference | File | Size | Purpose | |------|------|---------| | `toolsets_recruiting.py` | 40KB | Main implementation (64 tools) | | `RECRUITING_TOOLSETS_SUMMARY.md` | 10KB | Complete documentation | | `RECRUITING_WORKFLOW_EXAMPLES.md` | 16KB | 9 complete workflows | | `INTEGRATION_EXAMPLE.py` | 2.8KB | Working integration example | | `DELIVERY_RECRUITING_TOOLSETS.md` | 9.2KB | Delivery summary | ## Common Operations ### Pagination ```python # Get all companies across multiple pages page = 1 all_companies = [] while True: batch = await list_companies(per_page=100, page=page) all_companies.extend(batch["companies"]) if len(batch["companies"]) < 100: break page += 1 ``` ### Search ```python # Simple search results = await search_companies(query="Tech") # Advanced filter results = await filter_companies( filters={"city": "San Francisco", "state": "CA"}, per_page=50 ) ``` ### Tags ```python # Replace all tags await replace_company_tags(company_id, [101, 102, 103]) # Add tags (additive) await attach_company_tags(company_id, [104, 105]) # Remove tags await delete_company_tags(company_id, [102]) ``` ## Testing ### Syntax Check ```bash python3 -m py_compile toolsets_recruiting.py # Should succeed without errors ``` ### Import Test ```bash python3 -c "from toolsets_recruiting import *; print('✓ OK')" ``` ### Integration Test ```bash python3 INTEGRATION_EXAMPLE.py # Should start server on port 8000 ``` ## Documentation - **Summary**: `RECRUITING_TOOLSETS_SUMMARY.md` - **Workflows**: `RECRUITING_WORKFLOW_EXAMPLES.md` - **Integration**: `INTEGRATION_EXAMPLE.py` - **Delivery**: `DELIVERY_RECRUITING_TOOLSETS.md` ## Support ### Tool Naming Pattern - List: `list_{resource}` (e.g., `list_companies`) - Get: `get_{resource}` (e.g., `get_company`) - Create: `create_{resource}` (e.g., `create_company`) - Update: `update_{resource}` (e.g., `update_company`) - Delete: `delete_{resource}` (e.g., `delete_company`) - Sub-resource: `{action}_{parent}_{child}` (e.g., `list_company_contacts`) ### Activity Types - `email` - Email communication - `meeting` - Meeting/call scheduled - `call_talked` - Successful call - `call_lvm` - Left voicemail - `call_missed` - Missed call - `text_message` - SMS/text - `other` - Other activity ### Error Handling ```python from server import CATSAPIError try: company = await create_company(name="Test") except CATSAPIError as e: print(f"Error: {e}") ``` ## Production Checklist - [ ] Import `register_all_recruiting_toolsets` in server.py - [ ] Call registration function after `mcp` and `make_request` defined - [ ] Set `CATS_API_KEY` in environment variables - [ ] Test with actual CATS API - [ ] Verify all tools accessible via MCP - [ ] Deploy server ## Quick Stats - **Total Tools**: 64 - **Total Endpoints**: 64 unique API endpoints - **Python Version**: 3.10+ - **Dependencies**: fastmcp, httpx, typing - **Status**: Production Ready ✓ --- **Need Help?** - See `RECRUITING_TOOLSETS_SUMMARY.md` for complete reference - See `RECRUITING_WORKFLOW_EXAMPLES.md` for usage examples - Check `INTEGRATION_EXAMPLE.py` for working code

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/vanman2024/cats-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server