Affinda · Capability

Affinda Search and Match API — Job Description Search

Affinda Job Description Search — search indexed job descriptions against a resume, retrieve match details, and configure JD search and embed parameters.

Affinda Search and Match API — Job Description Search is a Naftiko capability published by Affinda, one of 8 capabilities the APIs.io network indexes for this provider. It bundles 2 operations.

The capability includes 2 read-only operations. Lead operation: Search indexed job descriptions against a resume payload. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Affinda, Search, Job Description Search, and Recruitment.

Run with Naftiko AffindaSearchJob Description SearchRecruitment

MCP Tools

affinda-jd-search

Search indexed job descriptions against a resume payload.

read-only
affinda-get-jd-search-detail

Get detailed match breakdown for a single JD search result.

read-only idempotent

Capability Spec

search-match-job-description-search.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Affinda Search and Match API — Job Description Search
  description: Affinda Job Description Search — search indexed job descriptions against a resume, retrieve
    match details, and configure JD search and embed parameters.
  tags:
  - Affinda
  - Search
  - Job Description Search
  - Recruitment
  created: '2026-05-25'
  modified: '2026-05-25'
binds:
- namespace: env
  keys:
    AFFINDA_API_KEY: AFFINDA_API_KEY
capability:
  consumes:
  - type: http
    namespace: jd-search
    baseUri: https://api.affinda.com
    description: Affinda v3 Job Description Search.
    resources:
    - name: v3-job-description-search
      path: /v3/job_description_search
      operations:
      - name: jdsearch
        method: POST
        description: Run a job description search against an index of JDs given a resume payload.
        outputRawFormat: json
        outputParameters: [{name: results, type: object, value: $.}]
        inputParameters:
        - {name: body, in: body, type: object, required: true}
    - name: v3-jd-search-details
      path: /v3/job_description_search/details/{identifier}
      operations:
      - name: getjdsearchdetail
        method: GET
        description: Get detailed match breakdown for a single JD in a search result.
        outputRawFormat: json
        outputParameters: [{name: result, type: object, value: $.}]
        inputParameters:
        - {name: identifier, in: path, type: string, required: true}
    - name: v3-jd-search-embed
      path: /v3/job_description_search/embed
      operations:
      - name: getjdsearchembed
        method: GET
        description: Get an embed URL for the job description search UI.
        outputRawFormat: json
        outputParameters: [{name: embed, type: object, value: $.}]
        inputParameters: []
    authentication:
      type: apikey
      key: Authorization
      value: 'Bearer {{env.AFFINDA_API_KEY}}'
      placement: header
  exposes:
  - type: mcp
    namespace: jd-search-mcp
    port: 9090
    transport: http
    description: MCP adapter for Affinda Job Description Search.
    tools:
    - name: affinda-jd-search
      description: Search indexed job descriptions against a resume payload.
      hints: {readOnly: true, destructive: false, idempotent: false}
      call: jd-search.jdsearch
      with: {body: tools.body}
      outputParameters: [{type: object, mapping: $.}]
    - name: affinda-get-jd-search-detail
      description: Get detailed match breakdown for a single JD search result.
      hints: {readOnly: true, destructive: false, idempotent: true}
      call: jd-search.getjdsearchdetail
      with: {identifier: tools.identifier}
      outputParameters: [{type: object, mapping: $.}]