Search open defensive cybersecurity (blue team) jobs and salary data. Read-only, no sign-in.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Details of one job: pay, location, clearance, certifications, skills and a short excerpt.
The 6-character job id, or a blueteamjobs.com job URL.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
claude mcp add --transport http jobs https://mcp.blueteamjobs.com/mcp
Details of one job: pay, location, clearance, certifications, skills and a short excerpt.
| Argument | Type | Description |
|---|---|---|
| id* | string | The 6-character job id, or a blueteamjobs.com job URL. |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 300,
"minLength": 6,
"description": "The 6-character job id, or a blueteamjobs.com job URL."
}
}
}Pay percentiles (USD a year) from salaries published in BlueTeamJobs postings over the last 12 months, by role, US state, seniority or work arrangement. Needs at least 3 postings with pay.
| Argument | Type | Description |
|---|---|---|
| role | string | Role slug or name. Omit for all blue team roles. |
| state | string | US state name, code or slug, e.g. "Texas", "TX". |
| remote | string | |
| seniority | string |
{
"type": "object",
"properties": {
"role": {
"type": "string",
"maxLength": 80,
"description": "Role slug or name. Omit for all blue team roles."
},
"state": {
"type": "string",
"maxLength": 80,
"description": "US state name, code or slug, e.g. \"Texas\", \"TX\"."
},
"remote": {
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string"
},
"seniority": {
"enum": [
"entry",
"mid",
"senior",
"lead"
],
"type": "string"
}
}
}Jobs first seen on BlueTeamJobs in the last few days, newest first, optionally for one role.
| Argument | Type | Description |
|---|---|---|
| days | integer | How far back to look. |
| role | string | Role slug or name, e.g. "soc-analyst". See list_roles. |
| limit | integer | |
| remote | string |
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"default": 7,
"maximum": 30,
"minimum": 1,
"description": "How far back to look."
},
"role": {
"type": "string",
"maxLength": 80,
"description": "Role slug or name, e.g. \"soc-analyst\". See list_roles."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1
},
"remote": {
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string"
}
}
}Places with open jobs (countries, US states and cities), most jobs first, plus the remote count.
| Argument | Type | Description |
|---|---|---|
| role | string | Role slug or name, e.g. "soc-analyst". See list_roles. |
| limit | integer |
{
"type": "object",
"properties": {
"role": {
"type": "string",
"maxLength": 80,
"description": "Role slug or name, e.g. \"soc-analyst\". See list_roles."
},
"limit": {
"type": "integer",
"default": 30,
"maximum": 100,
"minimum": 1
}
}
}The role categories BlueTeamJobs uses, with open job counts. Use the slugs in other tools.
No arguments.
{
"type": "object",
"properties": {}
}Search open defensive cybersecurity jobs (SOC, incident response, DFIR, threat hunting, CTI, detection and security engineering) on BlueTeamJobs. Newest first. Each result links to the job page, where the user applies.
| Argument | Type | Description |
|---|---|---|
| page | integer | |
| role | string | Role slug or name, e.g. "soc-analyst". See list_roles. |
| limit | integer | |
| query | string | Keywords matched against title, company, description and skills. |
| remote | string | Work arrangement. |
| location | string | City, US state, state code or country, e.g. "Virginia", "VA", "austin-tx", "Canada". |
| clearance | string | "none" for jobs without a clearance, "any" for any clearance, or a specific level. |
| seniority | string | |
| min_salary | integer | Minimum yearly pay in USD; only jobs that publish pay match. |
We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 1, 2026.
| certification | string | Certification slug or name, e.g. "security-plus", "GCIH". |
{
"type": "object",
"properties": {
"page": {
"type": "integer",
"default": 1,
"maximum": 100,
"minimum": 1
},
"role": {
"type": "string",
"maxLength": 80,
"description": "Role slug or name, e.g. \"soc-analyst\". See list_roles."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 25,
"minimum": 1
},
"query": {
"type": "string",
"maxLength": 200,
"description": "Keywords matched against title, company, description and skills."
},
"remote": {
"enum": [
"remote",
"hybrid",
"onsite"
],
"type": "string",
"description": "Work arrangement."
},
"location": {
"type": "string",
"maxLength": 80,
"description": "City, US state, state code or country, e.g. \"Virginia\", \"VA\", \"austin-tx\", \"Canada\"."
},
"clearance": {
"enum": [
"none",
"any",
"public-trust",
"secret",
"top-secret",
"ts-sci"
],
"type": "string",
"description": "\"none\" for jobs without a clearance, \"any\" for any clearance, or a specific level."
},
"seniority": {
"enum": [
"entry",
"mid",
"senior",
"lead"
],
"type": "string"
},
"min_salary": {
"type": "integer",
"maximum": 1000000,
"minimum": 0,
"description": "Minimum yearly pay in USD; only jobs that publish pay match."
},
"certification": {
"type": "string",
"maxLength": 40,
"description": "Certification slug or name, e.g. \"security-plus\", \"GCIH\"."
}
}
}