Job Description AI MCP
OfficialJob Description Ai MCP
Generate, analyze, and optimize job descriptions with bias checking
Generate, analyze, and optimize job descriptions with bias checking.
π Quick Start
# Install via pip
pip install job_description_ai_mcp
# Or install via Smithery
npx -y @smithery/cli@latest install job-description-ai-mcp --client claudeRelated MCP server: AI Gateway MCP
β¨ Features
MCP protocol compliant
Easy installation
Well-documented API
Production-ready
Active maintenance
π Documentation
π‘οΈ Compliance
This MCP server is built with EU AI Act compliance built-in:
β Article 9 β Risk Management System
β Article 13 β Transparency & Instructions for Use
β Article 15 β Bias Detection & Testing
β Article 26 β FRIA Support (where applicable)
β Article 50 β AI Content Watermarking (where applicable)
Need help getting compliant? Book a free 15-min diagnostic β
π’ Enterprise
Need custom development, SLA guarantees, or white-label deployment?
Pro: $99/mo β Full MCP suite + EU AI Act tracking
Enterprise: $499/mo β Custom dev + SLA + Dedicated support
View Pricing β | Contact Sales β
π€ Part of the MEOK Ecosystem
This server is part of the MEOK AI Labs ecosystem β 300+ MCP servers for sovereign AI governance.
Domain | Purpose |
EU AI Act compliance marketplace | |
AI safety & monitoring | |
Sovereign AI platform | |
Legacy modernization |
π License
MIT Β© CSOAI-ORG
Pairs with MEOK Governance Suite
Build something that touches users? You need compliance. MEOK ships 38 governance MCPs that drop in alongside this tool β EU AI Act, DORA, NIS2, CRA, GDPR, ISO 42001, FDA SaMD, MDR, Basel, MiFID II, MiCA, COPPA, and more.
# One-shot install of the governance pack
npx meok-setup --pack governanceFree tier: 10 calls/day per MCP. Pro tier (Β£79/mo): unlimited + cryptographically signed compliance attestations your auditor verifies independently.
β Full catalogue: councilof.ai/catalogue β MEOK AI Labs: meok.ai
πΈ Try MEOK in 30 seconds β instant buy ladder
Tier | Price | What you get | Stripe |
Smoke test | Β£1 | Signed sample MCP-Hardening report + Article 50 PDF | |
Quick Kit | Β£9 | EU AI Act Article 50 implementation guide (C2PA + EU-Icon) | |
Founder Call | Β£29 | 30-min 1-on-1 with the founder |
Refundable. UK Stripe β VAT-clean. Builds on the 81-MCP MEOK fleet. Verify any signed report at https://meok.ai/verify.
Configuration
Add to your claude_desktop_config.json (Claude Desktop) or your MCP client config:
{
"mcpServers": {
"job-description-ai-mcp": {
"command": "uvx",
"args": ["job-description-ai-mcp"]
}
}
}Or: pip install job-description-ai-mcp then run the job-description-ai-mcp command (stdio transport).
Examples
Once configured, ask your assistant, for example:
"Use
generate_job_descriptionto β¦""Use
analyze_requirementsto β¦""Use
suggest_salary_rangeto β¦"
Available Tools
4 toolsanalyze_requirementsA
Analyze a job description text and extract structured requirements.
Behavior: This tool is read-only and stateless β it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage.
When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards.
When NOT to use: Not suitable for real-time production decision-making without human review of results.
Args: description (str): The description to analyze or process. api_key (str): The api key to analyze or process.
Behavioral Transparency: - Side Effects: This tool is read-only and produces no side effects. It does not modify any external state, databases, or files. All output is computed in-memory and returned directly to the caller. - Authentication: No authentication required for basic usage. Pro/Enterprise tiers require a valid MEOK API key passed via the MEOK_API_KEY environment variable. - Rate Limits: Free tier: 10 calls/day. Pro tier: unlimited. Rate limit headers are included in responses (X-RateLimit-Remaining, X-RateLimit-Reset). - Error Handling: Returns structured error objects with 'error' key on failure. Never raises unhandled exceptions. Invalid inputs return descriptive validation errors. - Idempotency: Fully idempotent β calling with the same inputs always produces the same output. Safe to retry on timeout or transient failure. - Data Privacy: No input data is stored, logged, or transmitted to external services. All processing happens locally within the MCP server process.
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | ||
| description | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description includes a comprehensive 'Behavioral Transparency' section covering side effects (read-only, stateless), authentication requirements, rate limits, error handling, idempotency, and data privacy. Since no annotations are provided, the description fully carries the burden of disclosure and does so thoroughly.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured with clear sections (Behavior, When to use, When NOT to use, Args, Behavioral Transparency). It front-loads the purpose. However, there is some redundancy (e.g., read-only stated in both 'Behavior' and 'Behavioral Transparency'). Could be slightly more concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (2 parameters, output schema exists), the description covers behavior, usage guidance, and transparency thoroughly. It does not detail the output format (but output schema covers that). It is complete for an analyst tool with good annotations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. However, the 'Args' section only restates parameter names and types with generic descriptions (e.g., 'api_key (str): The api key to analyze or process'). The api_key description is misleading and does not clarify its role (authentication). The description adds minimal semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Analyze a job description text and extract structured requirements.' This is a specific verb-resource combination. It is distinct from sibling tools (check_bias, generate_job_description, suggest_salary_range), which focus on bias checking, generation, and salary estimation, respectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes explicit 'When to use' and 'When NOT to use' sections. It provides general guidance for structured analysis but does not directly reference sibling tools or provide comparative scenarios. The guidance is clear but lacks differentiation from alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_biasA
Check a job description for biased or non-inclusive language and suggest alternatives.
Behavior: This tool is read-only and stateless β it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage.
When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards.
When NOT to use: Not suitable for real-time production decision-making without human review of results.
Args: text (str): The text to analyze or process. api_key (str): The api key to analyze or process.
Behavioral Transparency: - Side Effects: This tool is read-only and produces no side effects. It does not modify any external state, databases, or files. All output is computed in-memory and returned directly to the caller. - Authentication: No authentication required for basic usage. Pro/Enterprise tiers require a valid MEOK API key passed via the MEOK_API_KEY environment variable. - Rate Limits: Free tier: 10 calls/day. Pro tier: unlimited. Rate limit headers are included in responses (X-RateLimit-Remaining, X-RateLimit-Reset). - Error Handling: Returns structured error objects with 'error' key on failure. Never raises unhandled exceptions. Invalid inputs return descriptive validation errors. - Idempotency: Fully idempotent β calling with the same inputs always produces the same output. Safe to retry on timeout or transient failure. - Data Privacy: No input data is stored, logged, or transmitted to external services. All processing happens locally within the MCP server process.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | ||
| api_key | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden. It thoroughly covers side effects (read-only, stateless), authentication (none for basic, pro requires key), rate limits (10/day free, unlimited pro), error handling (structured errors), idempotency (fully idempotent), and data privacy (local processing). This is comprehensive and exceeds typical transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Well-structured with sections, but redundant: the initial 'Behavior' paragraph repeats information from the later 'Behavioral Transparency' section. Could be more concise by removing duplication.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the existence of an output schema (not shown), description doesn't need to explain return values. It covers rate limits, error handling, idempotency, and data privacy. However, it lacks details on the output structure (e.g., list of biased terms with alternatives) and could clarify the api_key parameter's optionality.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so description must compensate. It provides basic descriptions for 'text' and 'api_key', but the api_key description ('The api key to analyze or process') is unhelpful and does not clarify its optional nature or purpose. Only partial value added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Check'), resource ('job description'), and action ('suggest alternatives'). It clearly distinguishes from siblings like 'analyze_requirements' or 'generate_job_description' by focusing on bias and inclusivity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Includes explicit 'When to use' and 'When NOT to use' sections, providing context and exclusion criteria. However, the 'when to use' is somewhat generic ('structured analysis or classification') and does not differentiate from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_job_descriptionA
Generate a complete job description for a given role and level.
Behavior: This tool generates structured output without modifying external systems. Output is deterministic for identical inputs. No side effects. Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage.
When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards.
When NOT to use: Not suitable for real-time production decision-making without human review of results.
Args: title (str): The title to analyze or process. level (str): The level to analyze or process. company (str): The company to analyze or process. remote (bool): The remote to analyze or process. skills (list[str]): The skills to analyze or process. api_key (str): The api key to analyze or process.
Behavioral Transparency: - Side Effects: This tool is read-only and produces no side effects. It does not modify any external state, databases, or files. All output is computed in-memory and returned directly to the caller. - Authentication: No authentication required for basic usage. Pro/Enterprise tiers require a valid MEOK API key passed via the MEOK_API_KEY environment variable. - Rate Limits: Free tier: 10 calls/day. Pro tier: unlimited. Rate limit headers are included in responses (X-RateLimit-Remaining, X-RateLimit-Reset). - Error Handling: Returns structured error objects with 'error' key on failure. Never raises unhandled exceptions. Invalid inputs return descriptive validation errors. - Idempotency: Fully idempotent β calling with the same inputs always produces the same output. Safe to retry on timeout or transient failure. - Data Privacy: No input data is stored, logged, or transmitted to external services. All processing happens locally within the MCP server process.
| Name | Required | Description | Default |
|---|---|---|---|
| level | No | mid | |
| title | Yes | ||
| remote | No | ||
| skills | No | ||
| api_key | No | ||
| company | No | Our company |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description shoulders the full burden and delivers comprehensively. It explicitly states read-only, no side effects, deterministic output, authentication details, rate limits (free/pro tiers), error handling, idempotency, and data privacy. Every behavioral trait is disclosed clearly and accurately.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized with clear sections, but it contains redundancyβthe 'Behavior' paragraph largely overlaps with the 'Behavioral Transparency' section. The 'Args' list is verbose without adding value. A more streamlined version would achieve the same clarity in fewer words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The behavioral information is complete, but the parameter descriptions are absent. Given the tool has 6 parameters with 0% schema coverage, the description should elaborate on each parameter's role in generating a job description. The existence of an output schema is noted but doesn't compensate for missing input semantics. Overall, the description feels incomplete for a tool with moderate complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The 'Args' block lists parameters but adds zero meaning beyond the schemaβeach parameter is described generically as 'The <name> to analyze or process.' The schema itself lacks descriptions (0% coverage), so the description should compensate, but it fails to explain what each parameter means for job description generation (e.g., how 'remote' affects the output, what 'skills' format is expected). This is a critical gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Generate a complete job description for a given role and level.' The first sentence is specific and aligned with the tool name. However, the later 'When to use' section uses generic language ('structured analysis or classification') that could apply to sibling tools like analyze_requirements, slightly diluting clarity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit 'When to use' and 'When NOT to use' sections are present. The description advises against real-time production decision-making without human review, which is helpful. However, it does not directly contrast with siblings (analyze_requirements, check_bias, suggest_salary_range) to guide selection, so it loses a point.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_salary_rangeA
Suggest a competitive salary range based on role, level, and region.
Behavior: This tool is read-only and stateless β it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage.
When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards.
When NOT to use: Not suitable for real-time production decision-making without human review of results.
Args: title (str): The title to analyze or process. level (str): The level to analyze or process. region (str): The region to analyze or process. api_key (str): The api key to analyze or process.
Behavioral Transparency: - Side Effects: This tool is read-only and produces no side effects. It does not modify any external state, databases, or files. All output is computed in-memory and returned directly to the caller. - Authentication: No authentication required for basic usage. Pro/Enterprise tiers require a valid MEOK API key passed via the MEOK_API_KEY environment variable. - Rate Limits: Free tier: 10 calls/day. Pro tier: unlimited. Rate limit headers are included in responses (X-RateLimit-Remaining, X-RateLimit-Reset). - Error Handling: Returns structured error objects with 'error' key on failure. Never raises unhandled exceptions. Invalid inputs return descriptive validation errors. - Idempotency: Fully idempotent β calling with the same inputs always produces the same output. Safe to retry on timeout or transient failure. - Data Privacy: No input data is stored, logged, or transmitted to external services. All processing happens locally within the MCP server process.
| Name | Required | Description | Default |
|---|---|---|---|
| level | No | mid | |
| title | Yes | ||
| region | No | US | |
| api_key | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden and delivers a comprehensive 'Behavioral Transparency' section covering side effects, authentication, rate limits, error handling, idempotency, and data privacy.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-structured and front-loaded, but contains some repetition (e.g., behavior section overlaps with behavioral transparency). Slightly verbose but organized.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (4 parameters, no annotations, has output schema), the description covers all necessary aspects: purpose, usage guidelines, behavioral transparency, and parameter meaning.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Although schema description coverage is 0%, the description includes an 'Args' section with brief explanations for each parameter, adding context beyond the schema. The main description also clarifies role, level, region, and api_key usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it suggests a competitive salary range based on role, level, and region. The verb 'suggest' and resource 'salary range' are specific, and among sibling tools, it uniquely handles salary analysis.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit 'When to use' and 'When NOT to use' sections provide clear context, including that it is for structured analysis and not for real-time production decisions without human review.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
v1.0.0- First observed
analyze_requirements - First observed
check_bias - First observed
generate_job_description - First observed
suggest_salary_range
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose: analyze_requirements extracts structured requirements, check_bias identifies biased language, generate_job_description creates new descriptions, and suggest_salary_range provides salary recommendations. No overlap exists.
All tool names follow a consistent 'verb_noun' pattern in snake_case: analyze_requirements, check_bias, generate_job_description, suggest_salary_range. No mixing of conventions.
With 4 tools covering analysis, bias checking, generation, and salary suggestions, the server is well-scoped for job description tasks. The count is appropriate and each tool earns its place.
The tools cover the core lifecycle of job description management: analysis, bias detection, generation, and salary suggestion. Minor gaps like an update/improve tool are present but do not significantly hinder typical workflows.
Maintenance
Related MCP Connectors
Agent Orchestrator MCP Server by MEOK AI Labs
MCP server for Wan AI video generation
MCP server for Qwen Image 3 AI image generation
MCP server for building and testing AI agents with multi-model experimentation and insights.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceData Science AI - MCP server providing AI-powered tools and automation by MEOK AI Labs6 npm56 PyPIMIT
- AlicenseAqualityBmaintenanceAI Gateway - MCP server providing AI-powered tools and automation by MEOK AI Labs44 npm84 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceDevops AI - MCP server providing AI-powered tools and automation by MEOK AI Labs7 npm80 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceAI Ops - MCP server providing AI-powered tools and automation by MEOK AI Labs4 npm86 PyPIMIT