NextGen Energy Jobs
Search open jobs in grid, nuclear, renewables, storage and data centers. Read-only, no login.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"jobs": {
"url": "https://www.nextgenenergyjobs.com/api/mcp"
}
}
}Remote endpoints
https://www.nextgenenergyjobs.com/api/mcpstreamable-httpWhat it can do
Tool inventory
Tools (3)
🟢search_jobs(query, company, location, remote, sector, ...)
Use this when the user wants to find open jobs in the modern power sector: grid, nuclear, renewables, data-center power. Searches active postings on nextgenenergyjobs.com by keyword, employer, location, sector, seniority, job type, remote and posted date. Battery storage has no sector of its own: search it with query. Returns 10 jobs per page, newest first (by the date the job was first seen), with a link and a slug for get_job. Pay shows when the listing has pay data; estimates are labeled. Not for jobs outside energy, resume writing or applying.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Keywords, e.g. \"electrical engineer\" or \"battery storage\". Skip for browse-only searches.",
"type": "string",
"maxLength": 200
},
"company": {
"description": "Employer name, e.g. \"Fervo Energy\". An unknown name returns 0 jobs and similar names. Wins over sector when both are set.",
"type": "string",
"maxLength": 100
},
"location": {
"description": "One city, US state, or country, e.g. \"Texas\" or \"Denver, CO\". For a metro area use its main city (Bay Area -> San Francisco) or the state. No zip codes. Spell out non-US regions (Ontario, Canada).",
"type": "string",
"maxLength": 100
},
"remote": {
"description": "true = jobs flagged remote in the listing.",
"type": "boolean"
},
"sector": {
"description": "Sector slug. Call list_sectors for what each one covers.",
"type": "string",
"enum": [
"data-centers",
"grid",
"nuclear",
"renewables"
]
},
"experience_level": {
"type": "string",
"enum": [
"entry",
"mid",
"senior",
"executive"
]
},
"employment_type": {
"type": "string",
"enum": [
"full_time",
"part_time",
"contract",
"internship"
]
},
"posted_within": {
"description": "Only jobs posted within the last 24 hours, 7, 30 or 90 days.",
"type": "string",
"enum": [
"24h",
"7d",
"30d",
"90d"
]
},
"with_salary": {
"description": "true = only jobs with pay data. Estimated pay is included and labeled \"estimate\".",
"type": "boolean"
},
"page": {
"default": 1,
"description": "Page number, 10 jobs per page.",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}Output Schema
{
"type": "object",
"properties": {
"total": {
"type": "number"
},
"page": {
"type": "number"
},
"totalPages": {
"type": "number"
},
"jobs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"slug": {
"type": "string"
},
"title": {
"type": "string"
},
"company": {
"type": "string"
},
"location": {
"type": "string"
},
"remote": {
"type": "boolean"
},
"salary": {
"type": [
"string",
"null"
]
},
"salaryIsEstimate": {
"type": "boolean"
},
"postedAt": {
"type": [
"string",
"null"
]
},
"url": {
"type": "string"
}
},
"required": [
"slug",
"title",
"company",
"location",
"remote",
"salary",
"salaryIsEstimate",
"postedAt",
"url"
],
"additionalProperties": false
}
}
},
"required": [
"total",
"page",
"totalPages",
"jobs"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_job(job)
Use this when the user wants the details of one job found with search_jobs: pay, location, job type, and the employer description. Takes the job slug or the full job URL. Returns facts, the employer-written text, and the link to read the full listing and apply. Not for searching. A job that closed returns a message saying so.
Input Schema
{
"type": "object",
"properties": {
"job": {
"type": "string",
"minLength": 1,
"maxLength": 500,
"description": "Job slug from search_jobs, or the full nextgenenergyjobs.com job URL."
}
},
"required": [
"job"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢list_sectors
Use this when you need the valid sector, seniority, job type and posted-date values for search_jobs, or the user asks what kinds of energy jobs exist. Returns the four sectors with a short scope and live open-job counts. Cheap to call.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence