About otp-ojp
otp-ojp is an MCP server for parsing, validating, and summarizing Open Talent Protocol profiles and Open Job Protocol postings. It gives agents schema-backed document templates without making LLM or network calls.
Key features
- 01Parse resumes into OTP skeletons
- 02Parse job postings into OJP skeletons
- 03Validate documents with JSON Schema
- 04Create agent-friendly profile summaries
- 05Create agent-friendly job summaries
- 06LLM-free, network-free processing
Use cases
- 01Turn resume text into an OTP template
- 02Structure a job posting as an OJP template
- 03Validate candidate profiles and job postings
- 04Prepare normalized summaries for matching
MCP support
Exposes six tools to MCP clients for parsing, validation, and introspection of OTP profiles and OJP job postings. The tools make no LLM or network calls.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
Tools
6Saved tool list · updated 3w ago
| Parameter | Type | Required | Description |
|---|---|---|---|
| document | object | No | A pre-parsed OTP document object. |
| filePath | string | No | Absolute path to an OTP JSON document. |
Details
From the project READMEOTP/OJP MCP Server
An MCP server for the Open Talent Protocol (OTP) and Open Job Protocol (OJP) — open standards for structuring candidate profiles and job postings for AI agent reasoning.
Tools
| Tool | Description |
|---|---|
otp_parse_resume | Raw resume text → OTP skeleton with _EXTRACT_* placeholders for an LLM to fill |
otp_validate_profile | Validate an OTP document against the JSON Schema |
otp_introspect_profile | Extract an agent-friendly summary from an OTP document |
ojp_parse_job_posting | Raw job posting text → OJP skeleton with _EXTRACT_* placeholders |
ojp_validate_job_posting | Validate an OJP document against the JSON Schema |
ojp_introspect_job_posting | Extract an agent-friendly summary from an OJP document |
Key traits
- Pure functions — no LLM calls, no network calls, no API keys needed
- JSON Schema draft 2020-12 validation via AJV
- LLM-free parsers — produce structured templates for the calling agent to complete
- Zero config — just install and run
Install
npm install -g @opentalentprotocol/mcp-server
Or run directly with npx:
npx @opentalentprotocol/mcp-server
Setup
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"otp-ojp": {
"command": "npx",
"args": ["-y", "@opentalentprotocol/mcp-server"]
}
}
}
Claude Code
Add to your project or global MCP settings:
{
"mcpServers": {
"otp-ojp": {
"command": "npx",
"args": ["-y", "@opentalentprotocol/mcp-server"]
}
}
}
From source
git clone https://github.com/neogene-ai/otp-ojp-mcp-server.git
cd otp-ojp-mcp-server
npm install
npm run build
node dist/index.js
How it works
Parsing workflow
The parsers follow a skeleton + fill pattern:
- Call
otp_parse_resume(orojp_parse_job_posting) with raw text - Get back a document skeleton with
_EXTRACT_*annotations, confidence levels, and known gaps - The calling agent fills in the skeleton using its own reasoning
- Call
otp_validate_profile(orojp_validate_job_posting) to verify the result
This keeps the MCP server LLM-free while giving agents structured guidance on what to extract.
Introspection
The introspect tools flatten an OTP/OJP document into a normalized, agent-friendly object with an agentSummary string — ready for system prompts, retrieval-augmented context, or matching logic.
Schemas
The JSON Schemas are bundled in the schema/ directory:
schema/opentalent-protocol.schema.json— OTP v0.1schema/openjob-protocol.schema.json— OJP v0.1
Requirements
- Node.js >= 18
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.