EVE Online · Capability

EVE Online ESI — Contacts

ESI — Contacts. 9 operations. Lead operation: EVE Online Get Alliance Contacts. Self-contained Naftiko capability covering one EVE Online business surface.

Run with Naftiko EVE OnlineESIContacts

What You Can Do

GET
Get_alliances_alliance_id_contacts — EVE Online Get Alliance Contacts
/v1/alliances/{alliance-id}/contacts
GET
Get_alliances_alliance_id_contacts_labels — EVE Online Get Alliance Contact Labels
/v1/alliances/{alliance-id}/contacts/labels
DELETE
Delete_characters_character_id_contacts — EVE Online Delete Contacts
/v1/characters/{character-id}/contacts
GET
Get_characters_character_id_contacts — EVE Online Get Contacts
/v1/characters/{character-id}/contacts
POST
Post_characters_character_id_contacts — EVE Online Add Contacts
/v1/characters/{character-id}/contacts
PUT
Put_characters_character_id_contacts — EVE Online Edit Contacts
/v1/characters/{character-id}/contacts
GET
Get_characters_character_id_contacts_labels — EVE Online Get Contact Labels
/v1/characters/{character-id}/contacts/labels
GET
Get_corporations_corporation_id_contacts — EVE Online Get Corporation Contacts
/v1/corporations/{corporation-id}/contacts
GET
Get_corporations_corporation_id_contacts_labels — EVE Online Get Corporation Contact Labels
/v1/corporations/{corporation-id}/contacts/labels

MCP Tools

get-alliance-contacts

EVE Online Get Alliance Contacts

read-only idempotent
get-alliance-contact-labels

EVE Online Get Alliance Contact Labels

read-only idempotent
delete-contacts

EVE Online Delete Contacts

idempotent
get-contacts

EVE Online Get Contacts

read-only idempotent
add-contacts

EVE Online Add Contacts

edit-contacts

EVE Online Edit Contacts

idempotent
get-contact-labels

EVE Online Get Contact Labels

read-only idempotent
get-corporation-contacts

EVE Online Get Corporation Contacts

read-only idempotent
get-corporation-contact-labels

EVE Online Get Corporation Contact Labels

read-only idempotent

Capability Spec

eve-online-contacts.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: EVE Online ESI — Contacts
  description: 'ESI — Contacts. 9 operations. Lead operation: EVE Online Get Alliance Contacts. Self-contained Naftiko capability covering one EVE Online business surface.'
  tags:
    - EVE Online
    - ESI
    - Contacts
  created: '2026-05-30'
  modified: '2026-05-30'
binds:
  - namespace: env
    keys:
      EVE_ONLINE_ACCESS_TOKEN: EVE_ONLINE_ACCESS_TOKEN
capability:
  consumes:
    - type: http
      namespace: eve-online-contacts
      baseUri: https://esi.evetech.net/latest
      description: EVE Online ESI — Contacts business capability. Self-contained, no shared references.
      authentication:
        type: bearer
        token: '{{env.EVE_ONLINE_ACCESS_TOKEN}}'
      resources:
        - name: alliances-alliance-id-contacts
          path: /alliances/{alliance_id}/contacts/
          operations:
            - name: get_alliances_alliance_id_contacts
              method: GET
              description: EVE Online Get Alliance Contacts
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: alliances-alliance-id-contacts-labels
          path: /alliances/{alliance_id}/contacts/labels/
          operations:
            - name: get_alliances_alliance_id_contacts_labels
              method: GET
              description: EVE Online Get Alliance Contact Labels
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: characters-character-id-contacts
          path: /characters/{character_id}/contacts/
          operations:
            - name: delete_characters_character_id_contacts
              method: DELETE
              description: EVE Online Delete Contacts
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: contact_ids
                  in: query
                  type: array
                  required: true
                  description: A list of contacts to delete
            - name: get_characters_character_id_contacts
              method: GET
              description: EVE Online Get Contacts
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
            - name: post_characters_character_id_contacts
              method: POST
              description: EVE Online Add Contacts
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: label_ids
                  in: query
                  type: array
                  required: false
                  description: Add custom labels to the new contact
                - name: standing
                  in: query
                  type: number
                  required: true
                  description: Standing for the contact
                - name: watched
                  in: query
                  type: boolean
                  required: false
                  description: Whether the contact should be watched, note this is only effective on characters
                - name: body
                  in: body
                  type: object
                  required: true
                  description: Request body payload.
            - name: put_characters_character_id_contacts
              method: PUT
              description: EVE Online Edit Contacts
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
              inputParameters:
                - name: label_ids
                  in: query
                  type: array
                  required: false
                  description: Add custom labels to the contact
                - name: standing
                  in: query
                  type: number
                  required: true
                  description: Standing for the contact
                - name: watched
                  in: query
                  type: boolean
                  required: false
                  description: Whether the contact should be watched, note this is only effective on characters
                - name: body
                  in: body
                  type: object
                  required: true
                  description: Request body payload.
        - name: characters-character-id-contacts-labels
          path: /characters/{character_id}/contacts/labels/
          operations:
            - name: get_characters_character_id_contacts_labels
              method: GET
              description: EVE Online Get Contact Labels
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: corporations-corporation-id-contacts
          path: /corporations/{corporation_id}/contacts/
          operations:
            - name: get_corporations_corporation_id_contacts
              method: GET
              description: EVE Online Get Corporation Contacts
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: corporations-corporation-id-contacts-labels
          path: /corporations/{corporation_id}/contacts/labels/
          operations:
            - name: get_corporations_corporation_id_contacts_labels
              method: GET
              description: EVE Online Get Corporation Contact Labels
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
  exposes:
    - type: rest
      namespace: eve-online-contacts-rest
      port: 8080
      description: REST adapter for EVE Online ESI — Contacts. One Spectral-compliant resource per consumed operation, prefixed with /v1.
      resources:
        - path: /v1/alliances/{alliance-id}/contacts
          name: alliances-alliance-id-contacts
          description: REST surface for /alliances/{alliance_id}/contacts/.
          operations:
            - method: GET
              name: get_alliances_alliance_id_contacts
              description: EVE Online Get Alliance Contacts
              call: eve-online-contacts.get_alliances_alliance_id_contacts
              with: {}
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/alliances/{alliance-id}/contacts/labels
          name: alliances-alliance-id-contacts-labels
          description: REST surface for /alliances/{alliance_id}/contacts/labels/.
          operations:
            - method: GET
              name: get_alliances_alliance_id_contacts_labels
              description: EVE Online Get Alliance Contact Labels
              call: eve-online-contacts.get_alliances_alliance_id_contacts_labels
              with: {}
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/characters/{character-id}/contacts
          name: characters-character-id-contacts
          description: REST surface for /characters/{character_id}/contacts/.
          operations:
            - method: DELETE
              name: delete_characters_character_id_contacts
              description: EVE Online Delete Contacts
              call: eve-online-contacts.delete_characters_character_id_contacts
              with:
                contact_ids: rest.contact_ids
              outputParameters:
                - type: object
                  mapping: $.
            - method: GET
              name: get_characters_character_id_contacts
              description: EVE Online Get Contacts
              call: eve-online-contacts.get_characters_character_id_contacts
              with: {}
              outputParameters:
                - type: object
                  mapping: $.
            - method: POST
              name: post_characters_character_id_contacts
              description: EVE Online Add Contacts
              call: eve-online-contacts.post_characters_character_id_contacts
              with:
                label_ids: rest.label_ids
                standing: rest.standing
                watched: rest.watched
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
            - method: PUT
              name: put_characters_character_id_contacts
              description: EVE Online Edit Contacts
              call: eve-online-contacts.put_characters_character_id_contacts
              with:
                label_ids: rest.label_ids
                standing: rest.standing
                watched: rest.watched
                body: rest.body
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/characters/{character-id}/contacts/labels
          name: characters-character-id-contacts-labels
          description: REST surface for /characters/{character_id}/contacts/labels/.
          operations:
            - method: GET
              name: get_characters_character_id_contacts_labels
              description: EVE Online Get Contact Labels
              call: eve-online-contacts.get_characters_character_id_contacts_labels
              with: {}
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/corporations/{corporation-id}/contacts
          name: corporations-corporation-id-contacts
          description: REST surface for /corporations/{corporation_id}/contacts/.
          operations:
            - method: GET
              name: get_corporations_corporation_id_contacts
              description: EVE Online Get Corporation Contacts
              call: eve-online-contacts.get_corporations_corporation_id_contacts
              with: {}
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/corporations/{corporation-id}/contacts/labels
          name: corporations-corporation-id-contacts-labels
          description: REST surface for /corporations/{corporation_id}/contacts/labels/.
          operations:
            - method: GET
              name: get_corporations_corporation_id_contacts_labels
              description: EVE Online Get Corporation Contact Labels
              call: eve-online-contacts.get_corporations_corporation_id_contacts_labels
              with: {}
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: eve-online-contacts-mcp
      port: 9090
      transport: http
      description: MCP adapter for EVE Online ESI — Contacts. One tool per consumed operation, routed inline through this capability's consumes block.
      tools:
        - name: get-alliance-contacts
          description: EVE Online Get Alliance Contacts
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: eve-online-contacts.get_alliances_alliance_id_contacts
          with: {}
          outputParameters:
            - type: object
              mapping: $.
        - name: get-alliance-contact-labels
          description: EVE Online Get Alliance Contact Labels
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: eve-online-contacts.get_alliances_alliance_id_contacts_labels
          with: {}
          outputParameters:
            - type: object
              mapping: $.
        - name: delete-contacts
          description: EVE Online Delete Contacts
          hints:
            readOnly: false
            destructive: true
            idempotent: true
          call: eve-online-contacts.delete_characters_character_id_contacts
          with:
            contact_ids: tools.contact_ids
          outputParameters:
            - type: object
              mapping: $.
        - name: get-contacts
          description: EVE Online Get Contacts
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: eve-online-contacts.get_characters_character_id_contacts
          with: {}
          outputParameters:
            - type: object
              mapping: $.
        - name: add-contacts
          description: EVE Online Add Contacts
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: eve-online-contacts.post_characters_character_id_contacts
          with:
            label_ids: tools.label_ids
            standing: tools.standing
            watched: tools.watched
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: edit-contacts
          description: EVE Online Edit Contacts
          hints:
            readOnly: false
            destructive: false
            idempotent: true
          call: eve-online-contacts.put_characters_character_id_contacts
          with:
            label_ids: tools.label_ids
            standing: tools.standing
            watched: tools.watched
            body: tools.body
          outputParameters:
            - type: object
              mapping: $.
        - name: get-contact-labels
          description: EVE Online Get Contact Labels
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: eve-online-contacts.get_characters_character_id_contacts_labels
          with: {}
          outputParameters:
            - type: object
              mapping: $.
        - name: get-corporation-contacts
          description: EVE Online Get Corporation Contacts
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: eve-online-contacts.get_corporations_corporation_id_contacts
          with: {}
          outputParameters:
            - type: object
              mapping: $.
        - name: get-corporation-contact-labels
          description: EVE Online Get Corporation Contact Labels
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: eve-online-contacts.get_corporations_corporation_id_contacts_labels
          with: {}
          outputParameters:
            - type: object
              mapping: $.