Affinda · Capability

Affinda Search and Match API — Resume Search

Affinda Resume Search — score and rank parsed resumes against a job description, retrieve detailed match breakdowns, configure search parameters, and request job-title and skill suggestions.

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

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

Tagged areas include Affinda, Search, Resume Search, and Recruitment.

Run with Naftiko AffindaSearchResume SearchRecruitment

MCP Tools

affinda-resume-search

Search indexed resumes against a job description.

read-only
affinda-resume-job-match

Match a resume to a job description and return score breakdown.

read-only idempotent
affinda-resume-search-skill-suggestions

Suggest skills for resume search filtering.

read-only idempotent

Capability Spec

search-match-resume-search.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Affinda Search and Match API — Resume Search
  description: Affinda Resume Search — score and rank parsed resumes against a job description, retrieve
    detailed match breakdowns, configure search parameters, and request job-title and skill suggestions.
  tags:
  - Affinda
  - Search
  - Resume 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: resume-search
    baseUri: https://api.affinda.com
    description: Affinda v3 Resume Search.
    resources:
    - name: v3-resume-search
      path: /v3/resume_search
      operations:
      - name: resumesearch
        method: POST
        description: Run a resume search against indexed resumes given a job description payload.
        outputRawFormat: json
        outputParameters: [{name: results, type: object, value: $.}]
        inputParameters:
        - {name: body, in: body, type: object, required: true}
    - name: v3-resume-search-details
      path: /v3/resume_search/details/{identifier}
      operations:
      - name: getresumesearchdetail
        method: GET
        description: Get detailed match breakdown for a single resume in a search result.
        outputRawFormat: json
        outputParameters: [{name: result, type: object, value: $.}]
        inputParameters:
        - {name: identifier, in: path, type: string, required: true}
    - name: v3-resume-search-match
      path: /v3/resume_search/match
      operations:
      - name: matchresumetojob
        method: GET
        description: Match a resume to a job description and return score breakdown.
        outputRawFormat: json
        outputParameters: [{name: match, type: object, value: $.}]
        inputParameters:
        - {name: resume, in: query, type: string, required: true}
        - {name: jobDescription, in: query, type: string, required: true}
    - name: v3-resume-search-suggestions
      path: /v3/resume_search/suggestion_skill
      operations:
      - name: suggestskills
        method: GET
        description: Suggest relevant skills for resume search filtering.
        outputRawFormat: json
        outputParameters: [{name: results, type: object, value: $.}]
        inputParameters:
        - {name: skills, in: query, type: string}
    authentication:
      type: apikey
      key: Authorization
      value: 'Bearer {{env.AFFINDA_API_KEY}}'
      placement: header
  exposes:
  - type: mcp
    namespace: resume-search-mcp
    port: 9090
    transport: http
    description: MCP adapter for Affinda Resume Search.
    tools:
    - name: affinda-resume-search
      description: Search indexed resumes against a job description.
      hints: {readOnly: true, destructive: false, idempotent: false}
      call: resume-search.resumesearch
      with: {body: tools.body}
      outputParameters: [{type: object, mapping: $.}]
    - name: affinda-resume-job-match
      description: Match a resume to a job description and return score breakdown.
      hints: {readOnly: true, destructive: false, idempotent: true}
      call: resume-search.matchresumetojob
      with: {resume: tools.resume, jobDescription: tools.jobDescription}
      outputParameters: [{type: object, mapping: $.}]
    - name: affinda-resume-search-skill-suggestions
      description: Suggest skills for resume search filtering.
      hints: {readOnly: true, destructive: false, idempotent: true}
      call: resume-search.suggestskills
      with: {skills: tools.skills}
      outputParameters: [{type: object, mapping: $.}]