Technologikal/firefish-mcp
If you are the rightful owner of firefish-mcp and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Firefish MCP Server is a Model Context Protocol server designed to integrate with the Firefish Recruitment CRM API, enabling AI assistants to manage recruitment-related data.
Firefish MCP Server
A Model Context Protocol (MCP) server for integrating with the Firefish Recruitment CRM API. This server enables AI assistants like Claude to interact with your Firefish instance to manage candidates, companies, contacts, jobs, and placements.
Features
- Candidate Management: Search, view, create, and update candidate records
- Company Management: Search, view, create, and update company records
- Contact Management: Search, view, create, and update contact records
- Job Listings: Search and view job postings
- Placement Tracking: Search and view placements and offers
- OAuth Authentication: Secure API access using OAuth 2.0
Prerequisites
- Python 3.10 or higher
- Firefish CRM account with API access
- OAuth credentials (client ID and client secret) from Firefish
Setup
1. Install Dependencies
Using uv (recommended):
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"
Using pip:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -e ".[dev]"
2. Configure Environment Variables
Copy .env.example to .env and fill in your Firefish API credentials:
cp .env.example .env
Edit .env with your actual credentials:
FIREFISH_API_URL=https://api.firefishsoftware.com
FIREFISH_CLIENT_ID=your_client_id_here
FIREFISH_CLIENT_SECRET=your_client_secret_here
FIREFISH_OAUTH_TOKEN_URL=https://your-instance.firefishsoftware.com/oauth/token
FIREFISH_INSTANCE_URL=https://your-instance.firefishsoftware.com
3. Configure Claude for Desktop
Add the server to your Claude for Desktop configuration:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"firefish": {
"command": "python",
"args": ["-m", "firefish_mcp.server"],
"env": {
"FIREFISH_API_URL": "https://api.firefishsoftware.com",
"FIREFISH_CLIENT_ID": "your_client_id",
"FIREFISH_CLIENT_SECRET": "your_client_secret",
"FIREFISH_OAUTH_TOKEN_URL": "https://your-instance.firefishsoftware.com/oauth/token"
}
}
}
}
Alternatively, you can use the absolute path to your virtual environment:
{
"mcpServers": {
"firefish": {
"command": "/absolute/path/to/firefish-project/.venv/bin/python",
"args": ["-m", "firefish_mcp.server"]
}
}
}
Available Tools
The MCP server provides the following tools for Claude:
Candidates
search_candidates- Search for candidates with optional filtersget_candidate- Get detailed candidate information by IDcreate_candidate- Create a new candidate recordupdate_candidate- Update an existing candidate
Companies
search_companies- Search for companies with optional filtersget_company- Get detailed company information by IDcreate_company- Create a new company recordupdate_company- Update an existing company
Contacts
search_contacts- Search for contacts with optional filtersget_contact- Get detailed contact information by IDcreate_contact- Create a new contact recordupdate_contact- Update an existing contact
Jobs
search_jobs- Search for job listings with optional filtersget_job- Get detailed job information by ID
Placements
search_placements- Search for placements/offers with optional filters
Actions & Statistics (PLACEHOLDER)
Note: The following tools are placeholders awaiting confirmation from Firefish support regarding actual API endpoints and data structures.
Actions
search_actions- Search for user actions/activities with optional filtersget_user_actions- Get actions for a specific userget_team_actions- Get actions for a specific team
Statistics
get_user_statistics- Get activity statistics for a userget_team_statistics- Get performance statistics for a teamget_activity_summary- Get overall activity summary/dashboard statistics
Communications
search_communications- Search for communications with optional filters
These tools are currently implemented but may return errors until the correct endpoint paths are confirmed with Firefish. See CLAUDE.md for instructions on updating these endpoints once documentation is received.
Development
Running Tests
pytest
Code Formatting
black src/
Linting
ruff check src/
API Documentation
For detailed Firefish API documentation, visit: https://fishtank.firefishsoftware.com/firefish-api-documentation
License
MIT License - see LICENSE file for details