A configurable job crawler, archive and application tracker you run yourself. Agent-operable through MCP.
The Openings server has 10 tools with mostly adequate naming and descriptions. All tools have names that start with action verbs (add, set, list, run, get, delete, merge), following the pattern:verb_noun convention. Descriptions are present for all tools and generally between 20 - 60 characters, meeting the minimum bar. However, several parameter descriptions are generic or missing detail about constraints, valid values, and expected formats. Output schemas are not explicitly documented in the source code provided, and error handling guidance is minimal. The server uses HTTP transport and includes basic tool registration, but lacks structured error recovery patterns and explicit output schema documentation that production-grade tools require.
Add a file attachment to a job
Add a new job posting
Add a note or Q&A to a job
Delete one or more jobs
Get detailed information about a specific job
List jobs with optional filtering
List job crawler runs
Missing output schema documentation: No explicit documentation of return types, fields, or structure for any tool. LLMs cannot plan downstream calls or extract required data without knowing what fields to expect.
Parameter descriptions lack constraint details: Parameters like 'status', 'kind', and 'labels' have minimal descriptions with no explicit enum values, format constraints, or valid option lists. LLMs will hallucinate invalid values.
Missing pagination guidance: list_runs and list_jobs accept limit/offset but provide no documented upper bounds, default values, or guidance on result cardinality. No indication of whether results are capped or if pagination is required.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | B | 71 | <=2025-11-25 | v2 |
Merge multiple job postings into one
Trigger a job crawler run
Set the status of one or more jobs
Destructive operations lack confirmation step: delete_job has no dry-run option, confirmation requirement, or explicit warning in description. Agents may accidentally delete multiple jobs without recourse.
Error handling guidance absent: No documented error responses, recovery paths, or actionable error messages. Tools provide no guidance on what to do if a job_id is invalid or an operation fails.
Parameter type ambiguity: 'job_ids' in set_status and delete_job are arrays of strings but no documentation of ID format (UUID, alphanumeric, numeric). 'status' parameter lacks enum specification, unclear what values are valid.
Optional parameters not clearly marked: Many parameters marked 'optional' in description (job_url, description, source, labels in add_job) but no schema-level indication of which are required vs optional. JSON Schema must use 'required' array.