Web3 Jobs MCP Server
An MCP server that provides AI agents with real-time access to curated Web3 jobs from web3.career, enabling intelligent job discovery and career insights.
Features
- Job Query Tool: Filter Web3 jobs by:
- Remote status (
remote=True
for remote-only jobs) - Country (e.g.,
"United States"
, case-insensitive) - Job tag (e.g.,
"react"
,"blockchain"
, case-insensitive) - Limit (1–100 jobs, default 50)
- Remote status (
- Markdown Output: Returns job listings as a formatted Markdown list with:
- Job ID, Title, Company, Location, Remote status
- Published At (from
date_epoch
, formatted asYYYY-MM-DD
) - Apply URL (clickable link to web3.career)
- Description (plain text, truncated to 100 characters)
- Search Prompt: Generates user-friendly job search queries based on role and optional location.
Prerequisites
- Python 3.10+
- A web3.career API token (request at web3.career/web3-jobs-api)
- uv for dependency management (recommended)
Installation
Clone the Repository:
git clone https://github.com/kukapay/web3-jobs-mcp.git cd web3-jobs-mcp
Install Dependencies:Using
uv
:uv sync
Alternatively, with
pip
:pip install mcp[cli] python-dotenv
Installing to Claude Desktop:
Install the server as a Claude Desktop application:
uv run mcp install cli.py --name "Web3 Jobs"
Configuration file as a reference:
{ "mcpServers": { "Web3 Jobs": { "command": "uv", "args": [ "--directory", "/path/to/web3-jobs-mcp", "run", "main.py" ], "env": { "WEB3_CAREER_API_TOKEN", "your-api-token" }, } } }
Replace
/path/to/web3-jobs-mcp
with your actual installation path, andyour-api-token
with your web3.career API token.
Usage
Running the Server
Start the server in development mode with the MCP Inspector:
uv run mcp dev main.py
This opens a web interface for testing tools and prompts.
Alternatively, run directly:
uv run main.py
Using the query_jobs
Tool
In the MCP Inspector or a compatible client (e.g., Claude Desktop), call the query_jobs
tool:
Example 1: Get 5 remote blockchain jobs:
query_jobs(remote=True, tag="blockchain", limit=5)
Example 2: Get 10 jobs in the United States:
query_jobs(country="United States", limit=10)
Sample Output:
# Web3 Job Listings
- **Job ID**: 103945
- **Title**: Applied Crypto-Economics & Mechanism Design
- **Company**: Subzero Labs
- **Location**: Remote Remote Remote
- **Remote**: Yes
- **Published At**: 2025-06-01
- **Apply URL**: [Apply](https://web3.career/r/1QTOzATM__UVWHaa)
- **Description**: About Rialo We are a pioneering force in the decentralized finance (DeFi) space...
- **Job ID**: 103944
- **Title**: Blockchain Engineer
- **Company**: CryptoTech
- **Location**: Remote
- **Remote**: Yes
- **Published At**: 2025-05-31
- **Description**: Join our team to build cutting-edge blockchain solutions for global clients...
- **Apply URL**: [Apply](https://web3.career/r/2XYZabc123)
*Source: web3.career*
Using the search_jobs_prompt
Generate a search prompt for a specific role and location:
/search_jobs_prompt role="blockchain developer" location="remote"
This returns a prompt like:
Find Web3 jobs for a blockchain developer role in remote. Provide job titles, companies, locations, and application links from web3.career.
License
This project is licensed under the MIT License. See the LICENSE file for details.