naftiko: 1.0.0-alpha2 info: label: NCBI E-utilities API — Discovery description: 'NCBI E-utilities API — Discovery. 4 operations. Lead operation: Match citations to PubMed UIDs. Self-contained Naftiko capability covering one National Library Of Medicine business surface.' tags: - National Library Of Medicine - Discovery created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: NATIONAL_LIBRARY_OF_MEDICINE_API_KEY: NATIONAL_LIBRARY_OF_MEDICINE_API_KEY capability: consumes: - type: http namespace: national-library-of-medicine-discovery baseUri: https://eutils.ncbi.nlm.nih.gov/entrez/eutils description: NCBI E-utilities API — Discovery business capability. Self-contained, no shared references. resources: - name: ecitmatch.cgi path: /ecitmatch.cgi operations: - name: ecitmatch method: GET description: Match citations to PubMed UIDs outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: db in: query type: string required: true - name: rettype in: query type: string - name: bdata in: query type: string description: Pipe-delimited citation strings. required: true - name: einfo.fcgi path: /einfo.fcgi operations: - name: einfo method: GET description: Database statistics and field metadata outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: db in: query type: string - name: retmode in: query type: string - name: elink.fcgi path: /elink.fcgi operations: - name: elink method: GET description: Find related records across Entrez databases outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: dbfrom in: query type: string required: true - name: db in: query type: string - name: id in: query type: string required: true - name: linkname in: query type: string - name: cmd in: query type: string description: Command mode (neighbor, neighbor_history, llinks, prlinks, etc.). - name: espell.fcgi path: /espell.fcgi operations: - name: espell method: GET description: Spelling suggestions for a query term outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: db in: query type: string required: true - name: term in: query type: string required: true exposes: - type: rest namespace: national-library-of-medicine-discovery-rest port: 8080 description: REST adapter for NCBI E-utilities API — Discovery. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/ecitmatch-cgi name: ecitmatch-cgi description: REST surface for ecitmatch.cgi. operations: - method: GET name: ecitmatch description: Match citations to PubMed UIDs call: national-library-of-medicine-discovery.ecitmatch with: db: rest.db rettype: rest.rettype bdata: rest.bdata outputParameters: - type: object mapping: $. - path: /v1/einfo-fcgi name: einfo-fcgi description: REST surface for einfo.fcgi. operations: - method: GET name: einfo description: Database statistics and field metadata call: national-library-of-medicine-discovery.einfo with: db: rest.db retmode: rest.retmode outputParameters: - type: object mapping: $. - path: /v1/elink-fcgi name: elink-fcgi description: REST surface for elink.fcgi. operations: - method: GET name: elink description: Find related records across Entrez databases call: national-library-of-medicine-discovery.elink with: dbfrom: rest.dbfrom db: rest.db id: rest.id linkname: rest.linkname cmd: rest.cmd outputParameters: - type: object mapping: $. - path: /v1/espell-fcgi name: espell-fcgi description: REST surface for espell.fcgi. operations: - method: GET name: espell description: Spelling suggestions for a query term call: national-library-of-medicine-discovery.espell with: db: rest.db term: rest.term outputParameters: - type: object mapping: $. - type: mcp namespace: national-library-of-medicine-discovery-mcp port: 9090 transport: http description: MCP adapter for NCBI E-utilities API — Discovery. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: match-citations-pubmed-uids description: Match citations to PubMed UIDs hints: readOnly: true destructive: false idempotent: true call: national-library-of-medicine-discovery.ecitmatch with: db: tools.db rettype: tools.rettype bdata: tools.bdata outputParameters: - type: object mapping: $. - name: database-statistics-and-field-metadata description: Database statistics and field metadata hints: readOnly: true destructive: false idempotent: true call: national-library-of-medicine-discovery.einfo with: db: tools.db retmode: tools.retmode outputParameters: - type: object mapping: $. - name: find-related-records-across-entrez description: Find related records across Entrez databases hints: readOnly: true destructive: false idempotent: true call: national-library-of-medicine-discovery.elink with: dbfrom: tools.dbfrom db: tools.db id: tools.id linkname: tools.linkname cmd: tools.cmd outputParameters: - type: object mapping: $. - name: spelling-suggestions-query-term description: Spelling suggestions for a query term hints: readOnly: true destructive: false idempotent: true call: national-library-of-medicine-discovery.espell with: db: tools.db term: tools.term outputParameters: - type: object mapping: $.