naftiko: 1.0.0-alpha2 info: label: Google People API description: The Google People API provides access to information about profiles and contacts. It enables reading and managing the authenticated user's contacts and accessing profile information for authenticated users across Google services. tags: - Google - People - API created: '2026-05-06' modified: '2026-05-06' capability: consumes: - type: http namespace: google-people baseUri: https://people.googleapis.com/v1 description: Google People API HTTP API. authentication: type: bearer token: '{{GOOGLE_PEOPLE_TOKEN}}' resources: - name: people-resourcename path: /people/{resourceName} operations: - name: getperson method: GET description: Google People Get Person inputParameters: - name: resourceName in: path type: string required: true description: The resource name of the person (e.g., people/me). - name: personFields in: query type: string required: true description: A field mask to restrict which fields on the person are returned. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: people-batchget path: /people:batchGet operations: - name: batchgetpeople method: GET description: Google People Batch Get People inputParameters: - name: resourceNames in: query type: array required: true - name: personFields in: query type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: people-searchcontacts path: /people:searchContacts operations: - name: searchcontacts method: GET description: Google People Search Contacts inputParameters: - name: query in: query type: string required: true - name: readMask in: query type: string required: true - name: pageSize in: query type: integer outputRawFormat: json outputParameters: - name: result type: object value: $. - name: people-createcontact path: /people:createContact operations: - name: createcontact method: POST description: Google People Create Contact outputRawFormat: json outputParameters: - name: result type: object value: $. - name: people-resourcename-deletecontact path: /people/{resourceName}:deleteContact operations: - name: deletecontact method: DELETE description: Google People Delete Contact inputParameters: - name: resourceName in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: people-resourcename-updatecontact path: /people/{resourceName}:updateContact operations: - name: updatecontact method: PATCH description: Google People Update Contact inputParameters: - name: resourceName in: path type: string required: true - name: updatePersonFields in: query type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: people-me-connections path: /people/me/connections operations: - name: listconnections method: GET description: Google People List Connections inputParameters: - name: personFields in: query type: string required: true - name: pageSize in: query type: integer - name: pageToken in: query type: string - name: sortOrder in: query type: string outputRawFormat: json outputParameters: - name: result type: object value: $. - name: contactgroups path: /contactGroups operations: - name: listcontactgroups method: GET description: Google People List Contact Groups inputParameters: - name: pageSize in: query type: integer - name: pageToken in: query type: string outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createcontactgroup method: POST description: Google People Create Contact Group outputRawFormat: json outputParameters: - name: result type: object value: $. - name: contactgroups-resourcename path: /contactGroups/{resourceName} operations: - name: getcontactgroup method: GET description: Google People Get Contact Group inputParameters: - name: resourceName in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatecontactgroup method: PUT description: Google People Update Contact Group inputParameters: - name: resourceName in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletecontactgroup method: DELETE description: Google People Delete Contact Group inputParameters: - name: resourceName in: path type: string required: true outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8080 namespace: google-people-rest description: REST adapter for Google People API. resources: - path: /people/{resourceName} name: getperson operations: - method: GET name: getperson description: Google People Get Person call: google-people.getperson with: resourceName: rest.resourceName outputParameters: - type: object mapping: $. - path: /people:batchGet name: batchgetpeople operations: - method: GET name: batchgetpeople description: Google People Batch Get People call: google-people.batchgetpeople outputParameters: - type: object mapping: $. - path: /people:searchContacts name: searchcontacts operations: - method: GET name: searchcontacts description: Google People Search Contacts call: google-people.searchcontacts outputParameters: - type: object mapping: $. - path: /people:createContact name: createcontact operations: - method: POST name: createcontact description: Google People Create Contact call: google-people.createcontact outputParameters: - type: object mapping: $. - path: /people/{resourceName}:deleteContact name: deletecontact operations: - method: DELETE name: deletecontact description: Google People Delete Contact call: google-people.deletecontact with: resourceName: rest.resourceName outputParameters: - type: object mapping: $. - path: /people/{resourceName}:updateContact name: updatecontact operations: - method: PATCH name: updatecontact description: Google People Update Contact call: google-people.updatecontact with: resourceName: rest.resourceName outputParameters: - type: object mapping: $. - path: /people/me/connections name: listconnections operations: - method: GET name: listconnections description: Google People List Connections call: google-people.listconnections outputParameters: - type: object mapping: $. - path: /contactGroups name: listcontactgroups operations: - method: GET name: listcontactgroups description: Google People List Contact Groups call: google-people.listcontactgroups outputParameters: - type: object mapping: $. - path: /contactGroups name: createcontactgroup operations: - method: POST name: createcontactgroup description: Google People Create Contact Group call: google-people.createcontactgroup outputParameters: - type: object mapping: $. - path: /contactGroups/{resourceName} name: getcontactgroup operations: - method: GET name: getcontactgroup description: Google People Get Contact Group call: google-people.getcontactgroup with: resourceName: rest.resourceName outputParameters: - type: object mapping: $. - path: /contactGroups/{resourceName} name: updatecontactgroup operations: - method: PUT name: updatecontactgroup description: Google People Update Contact Group call: google-people.updatecontactgroup with: resourceName: rest.resourceName outputParameters: - type: object mapping: $. - path: /contactGroups/{resourceName} name: deletecontactgroup operations: - method: DELETE name: deletecontactgroup description: Google People Delete Contact Group call: google-people.deletecontactgroup with: resourceName: rest.resourceName outputParameters: - type: object mapping: $. - type: mcp port: 9090 namespace: google-people-mcp transport: http description: MCP adapter for Google People API for AI agent use. tools: - name: getperson description: Google People Get Person hints: readOnly: true destructive: false idempotent: true call: google-people.getperson with: resourceName: tools.resourceName personFields: tools.personFields inputParameters: - name: resourceName type: string description: The resource name of the person (e.g., people/me). required: true - name: personFields type: string description: A field mask to restrict which fields on the person are returned. required: true outputParameters: - type: object mapping: $. - name: batchgetpeople description: Google People Batch Get People hints: readOnly: true destructive: false idempotent: true call: google-people.batchgetpeople with: resourceNames: tools.resourceNames personFields: tools.personFields inputParameters: - name: resourceNames type: array description: resourceNames required: true - name: personFields type: string description: personFields required: true outputParameters: - type: object mapping: $. - name: searchcontacts description: Google People Search Contacts hints: readOnly: true destructive: false idempotent: true call: google-people.searchcontacts with: query: tools.query readMask: tools.readMask pageSize: tools.pageSize inputParameters: - name: query type: string description: query required: true - name: readMask type: string description: readMask required: true - name: pageSize type: integer description: pageSize outputParameters: - type: object mapping: $. - name: createcontact description: Google People Create Contact hints: readOnly: false destructive: false idempotent: false call: google-people.createcontact outputParameters: - type: object mapping: $. - name: deletecontact description: Google People Delete Contact hints: readOnly: false destructive: true idempotent: true call: google-people.deletecontact with: resourceName: tools.resourceName inputParameters: - name: resourceName type: string description: resourceName required: true outputParameters: - type: object mapping: $. - name: updatecontact description: Google People Update Contact hints: readOnly: false destructive: false idempotent: false call: google-people.updatecontact with: resourceName: tools.resourceName updatePersonFields: tools.updatePersonFields inputParameters: - name: resourceName type: string description: resourceName required: true - name: updatePersonFields type: string description: updatePersonFields required: true outputParameters: - type: object mapping: $. - name: listconnections description: Google People List Connections hints: readOnly: true destructive: false idempotent: true call: google-people.listconnections with: personFields: tools.personFields pageSize: tools.pageSize pageToken: tools.pageToken sortOrder: tools.sortOrder inputParameters: - name: personFields type: string description: personFields required: true - name: pageSize type: integer description: pageSize - name: pageToken type: string description: pageToken - name: sortOrder type: string description: sortOrder outputParameters: - type: object mapping: $. - name: listcontactgroups description: Google People List Contact Groups hints: readOnly: true destructive: false idempotent: true call: google-people.listcontactgroups with: pageSize: tools.pageSize pageToken: tools.pageToken inputParameters: - name: pageSize type: integer description: pageSize - name: pageToken type: string description: pageToken outputParameters: - type: object mapping: $. - name: createcontactgroup description: Google People Create Contact Group hints: readOnly: false destructive: false idempotent: false call: google-people.createcontactgroup outputParameters: - type: object mapping: $. - name: getcontactgroup description: Google People Get Contact Group hints: readOnly: true destructive: false idempotent: true call: google-people.getcontactgroup with: resourceName: tools.resourceName inputParameters: - name: resourceName type: string description: resourceName required: true outputParameters: - type: object mapping: $. - name: updatecontactgroup description: Google People Update Contact Group hints: readOnly: false destructive: false idempotent: true call: google-people.updatecontactgroup with: resourceName: tools.resourceName inputParameters: - name: resourceName type: string description: resourceName required: true outputParameters: - type: object mapping: $. - name: deletecontactgroup description: Google People Delete Contact Group hints: readOnly: false destructive: true idempotent: true call: google-people.deletecontactgroup with: resourceName: tools.resourceName inputParameters: - name: resourceName type: string description: resourceName required: true outputParameters: - type: object mapping: $. binds: - namespace: env keys: GOOGLE_PEOPLE_TOKEN: GOOGLE_PEOPLE_TOKEN