# Organization Contacts

## get_organization_contacts

`TOOL get_organization_contacts`

Get all organization contacts with filters

Authentication: no security requirement declared for this operation.

Parameters:

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contactType` (argument, string, optional) - Filter by contact type
  Type: string
  
  Filter by contact type
  
  enum: ["CLIENT","CUSTOMER","LEAD"]

- `employeeId` (argument, string, uuid, optional) - Filter by employee ID
  Type: string, uuid
  
  Filter by employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `name` (argument, string, optional) - Filter by name (partial match)
  Type: string
  
  Filter by name (partial match)

- `primaryEmail` (argument, string, optional) - Filter by primary email (partial match)
  Type: string
  
  Filter by primary email (partial match)

- `primaryPhone` (argument, string, optional) - Filter by primary phone (partial match)
  Type: string
  
  Filter by primary phone (partial match)

- `page` (argument, number, optional) - Page number for pagination
  Type: number
  
  Page number for pagination
  
  default: 1

- `limit` (argument, number, optional) - Number of items per page
  Type: number
  
  Number of items per page
  
  default: 10

- `relations` (argument, array, optional) - Relations to include (e.g., ["contact", "projects", "members"])
  Type: array
  
  Relations to include (e.g., ["contact", "projects", "members"])
  
  Items:
    Type: string

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_contacts",
    "arguments": {
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "contactType": "CLIENT",
        "employeeId": "550e8400-e29b-41d4-a716-446655440000",
        "name": "string",
        "primaryEmail": "string",
        "primaryPhone": "string",
        "page": 1,
        "limit": 10,
        "relations": [
          "string"
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_contacts",
  "arguments": {
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "contactType": "CLIENT",
    "employeeId": "550e8400-e29b-41d4-a716-446655440000",
    "name": "string",
    "primaryEmail": "string",
    "primaryPhone": "string",
    "page": 1,
    "limit": 10,
    "relations": [
      "string"
    ]
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_contacts", arguments={
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "contactType": "CLIENT",
  "employeeId": "550e8400-e29b-41d4-a716-446655440000",
  "name": "string",
  "primaryEmail": "string",
  "primaryPhone": "string",
  "page": 1,
  "limit": 10,
  "relations": [
    "string"
  ]
})
```


## get_organization_contact_count

`TOOL get_organization_contact_count`

Get organization contact count in the same tenant

Authentication: no security requirement declared for this operation.

Parameters:

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contactType` (argument, string, optional) - Filter by contact type
  Type: string
  
  Filter by contact type
  
  enum: ["CLIENT","CUSTOMER","LEAD"]

- `employeeId` (argument, string, uuid, optional) - Filter by employee ID
  Type: string, uuid
  
  Filter by employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_contact_count",
    "arguments": {
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "contactType": "CLIENT",
        "employeeId": "550e8400-e29b-41d4-a716-446655440000"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_contact_count",
  "arguments": {
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "contactType": "CLIENT",
    "employeeId": "550e8400-e29b-41d4-a716-446655440000"
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_contact_count", arguments={
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "contactType": "CLIENT",
  "employeeId": "550e8400-e29b-41d4-a716-446655440000"
})
```


## get_organization_contacts_pagination

`TOOL get_organization_contacts_pagination`

Get organization contacts by pagination in the same tenant

Authentication: no security requirement declared for this operation.

Parameters:

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contactType` (argument, string, optional) - Filter by contact type
  Type: string
  
  Filter by contact type
  
  enum: ["CLIENT","CUSTOMER","LEAD"]

- `name` (argument, string, optional) - Filter by name (partial match)
  Type: string
  
  Filter by name (partial match)

- `primaryEmail` (argument, string, optional) - Filter by primary email (partial match)
  Type: string
  
  Filter by primary email (partial match)

- `primaryPhone` (argument, string, optional) - Filter by primary phone (partial match)
  Type: string
  
  Filter by primary phone (partial match)

- `members` (argument, array, optional) - Filter by member IDs
  Type: array
  
  Filter by member IDs
  
  Items:
    Type: string, uuid
    
    pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `page` (argument, number, optional) - Page number
  Type: number
  
  Page number
  
  default: 1

- `limit` (argument, number, optional) - Items per page
  Type: number
  
  Items per page
  
  default: 10

- `relations` (argument, array, optional) - Relations to include
  Type: array
  
  Relations to include
  
  Items:
    Type: string

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_contacts_pagination",
    "arguments": {
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "contactType": "CLIENT",
        "name": "string",
        "primaryEmail": "string",
        "primaryPhone": "string",
        "members": [
          "550e8400-e29b-41d4-a716-446655440000"
        ],
        "page": 1,
        "limit": 10,
        "relations": [
          "string"
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_contacts_pagination",
  "arguments": {
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "contactType": "CLIENT",
    "name": "string",
    "primaryEmail": "string",
    "primaryPhone": "string",
    "members": [
      "550e8400-e29b-41d4-a716-446655440000"
    ],
    "page": 1,
    "limit": 10,
    "relations": [
      "string"
    ]
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_contacts_pagination", arguments={
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "contactType": "CLIENT",
  "name": "string",
  "primaryEmail": "string",
  "primaryPhone": "string",
  "members": [
    "550e8400-e29b-41d4-a716-446655440000"
  ],
  "page": 1,
  "limit": 10,
  "relations": [
    "string"
  ]
})
```


## get_organization_contacts_by_employee

`TOOL get_organization_contacts_by_employee`

Get organization contacts assigned to a specific employee

Authentication: no security requirement declared for this operation.

Parameters:

- `employeeId` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contactType` (argument, string, optional) - Filter by contact type
  Type: string
  
  Filter by contact type
  
  enum: ["CLIENT","CUSTOMER","LEAD"]

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_contacts_by_employee",
    "arguments": {
        "employeeId": "550e8400-e29b-41d4-a716-446655440000",
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "contactType": "CLIENT"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_contacts_by_employee",
  "arguments": {
    "employeeId": "550e8400-e29b-41d4-a716-446655440000",
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "contactType": "CLIENT"
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_contacts_by_employee", arguments={
  "employeeId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "contactType": "CLIENT"
})
```


## get_organization_contact

`TOOL get_organization_contact`

Get a specific organization contact by ID

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `relations` (argument, array, optional) - Relations to include (e.g., ["contact", "projects", "members", "tags"])
  Type: array
  
  Relations to include (e.g., ["contact", "projects", "members", "tags"])
  
  Items:
    Type: string

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_contact",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "relations": [
          "string"
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_contact",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "relations": [
      "string"
    ]
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_contact", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "relations": [
    "string"
  ]
})
```


## create_organization_contact

`TOOL create_organization_contact`

Create a new organization contact

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `contact_data` (required)
  Type: object
  
  The data for creating the organization contact
  
  - `name` (required)
    Type: string
    
    The name (required)
  
  - `organizationId` (required)
    Type: string
    
    The organization ID (required)
  
  Additional properties: 
    Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "create_organization_contact",
    "arguments": {
        "contact_data": {
          "name": "string",
          "organizationId": "string"
        }
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "create_organization_contact",
  "arguments": {
    "contact_data": {
      "name": "string",
      "organizationId": "string"
    }
  }
});
```

### Python

```python
result = await session.call_tool("create_organization_contact", arguments={
  "contact_data": {
    "name": "string",
    "organizationId": "string"
  }
})
```


## update_organization_contact

`TOOL update_organization_contact`

Update an existing organization contact

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contact_data` (argument, object, required) - The fields to update on the organization contact
  Type: object
  
  The fields to update on the organization contact
  
  Additional properties: 
    Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_organization_contact",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "contact_data": {}
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "update_organization_contact",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "contact_data": {}
  }
});
```

### Python

```python
result = await session.call_tool("update_organization_contact", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "contact_data": {}
})
```


## update_organization_contact_by_employee

`TOOL update_organization_contact_by_employee`

Update organization contact by employee

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contact_data` (argument, object, required) - The fields to update on the organization contact
  Type: object
  
  The fields to update on the organization contact
  
  Additional properties: 
    Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "update_organization_contact_by_employee",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000",
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "contact_data": {}
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "update_organization_contact_by_employee",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "contact_data": {}
  }
});
```

### Python

```python
result = await session.call_tool("update_organization_contact_by_employee", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "contact_data": {}
})
```


## delete_organization_contact

`TOOL delete_organization_contact`

Delete an organization contact by ID

Authentication: no security requirement declared for this operation.

Parameters:

- `id` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "delete_organization_contact",
    "arguments": {
        "id": "550e8400-e29b-41d4-a716-446655440000"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "delete_organization_contact",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000"
  }
});
```

### Python

```python
result = await session.call_tool("delete_organization_contact", arguments={
  "id": "550e8400-e29b-41d4-a716-446655440000"
})
```


## bulk_create_organization_contacts

`TOOL bulk_create_organization_contacts`

Create multiple organization contacts in bulk

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `contacts` (required)
  Type: array
  
  Array of organization contacts to create
  
  Items:
    Type: object
    
    - `name` (required)
      Type: string
      
      The name (required)
    
    - `organizationId` (required)
      Type: string
      
      The organization ID (required)
    
    Additional properties: 
      Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bulk_create_organization_contacts",
    "arguments": {
        "contacts": [
          {
            "name": "string",
            "organizationId": "string"
          }
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "bulk_create_organization_contacts",
  "arguments": {
    "contacts": [
      {
        "name": "string",
        "organizationId": "string"
      }
    ]
  }
});
```

### Python

```python
result = await session.call_tool("bulk_create_organization_contacts", arguments={
  "contacts": [
    {
      "name": "string",
      "organizationId": "string"
    }
  ]
})
```


## bulk_update_organization_contacts

`TOOL bulk_update_organization_contacts`

Update multiple organization contacts in bulk

Authentication: no security requirement declared for this operation.

Request body: application/json (required)

Type: object

- `contacts` (required)
  Type: array
  
  Array of organization contacts to update
  
  Items:
    Type: object
    
    - `id` (required)
      Type: string
      
      The ID (required)
    
    - `name` (required)
      Type: string
      
      The name (required)
    
    - `organizationId` (required)
      Type: string
      
      The organization ID (required)
    
    - `tenantId` (required)
      Type: string
      
      The tenant ID (required)
    
    Additional properties: 
      Type: unknown

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bulk_update_organization_contacts",
    "arguments": {
        "contacts": [
          {
            "id": "string",
            "name": "string",
            "organizationId": "string",
            "tenantId": "string"
          }
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "bulk_update_organization_contacts",
  "arguments": {
    "contacts": [
      {
        "id": "string",
        "name": "string",
        "organizationId": "string",
        "tenantId": "string"
      }
    ]
  }
});
```

### Python

```python
result = await session.call_tool("bulk_update_organization_contacts", arguments={
  "contacts": [
    {
      "id": "string",
      "name": "string",
      "organizationId": "string",
      "tenantId": "string"
    }
  ]
})
```


## bulk_delete_organization_contacts

`TOOL bulk_delete_organization_contacts`

Delete multiple organization contacts in bulk

Authentication: no security requirement declared for this operation.

Parameters:

- `ids` (argument, array, required) - Array of organization contact IDs to delete
  Type: array
  
  Array of organization contact IDs to delete
  
  Items:
    Type: string, uuid
    
    pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "bulk_delete_organization_contacts",
    "arguments": {
        "ids": [
          "550e8400-e29b-41d4-a716-446655440000"
        ]
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "bulk_delete_organization_contacts",
  "arguments": {
    "ids": [
      "550e8400-e29b-41d4-a716-446655440000"
    ]
  }
});
```

### Python

```python
result = await session.call_tool("bulk_delete_organization_contacts", arguments={
  "ids": [
    "550e8400-e29b-41d4-a716-446655440000"
  ]
})
```


## get_organization_contact_statistics

`TOOL get_organization_contact_statistics`

Get organization contact statistics

Authentication: no security requirement declared for this operation.

Parameters:

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `contactType` (argument, string, optional) - Filter by contact type
  Type: string
  
  Filter by contact type
  
  enum: ["CLIENT","CUSTOMER","LEAD"]

- `employeeId` (argument, string, uuid, optional) - Filter by employee ID
  Type: string, uuid
  
  Filter by employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `startDate` (argument, string, optional) - Start date for statistics (ISO format)
  Type: string
  
  Start date for statistics (ISO format)

- `endDate` (argument, string, optional) - End date for statistics (ISO format)
  Type: string
  
  End date for statistics (ISO format)

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_organization_contact_statistics",
    "arguments": {
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "contactType": "CLIENT",
        "employeeId": "550e8400-e29b-41d4-a716-446655440000",
        "startDate": "string",
        "endDate": "string"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_organization_contact_statistics",
  "arguments": {
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "contactType": "CLIENT",
    "employeeId": "550e8400-e29b-41d4-a716-446655440000",
    "startDate": "string",
    "endDate": "string"
  }
});
```

### Python

```python
result = await session.call_tool("get_organization_contact_statistics", arguments={
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "contactType": "CLIENT",
  "employeeId": "550e8400-e29b-41d4-a716-446655440000",
  "startDate": "string",
  "endDate": "string"
})
```


## assign_contact_to_employee

`TOOL assign_contact_to_employee`

Assign an organization contact to an employee

Authentication: no security requirement declared for this operation.

Parameters:

- `contactId` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `employeeId` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "assign_contact_to_employee",
    "arguments": {
        "contactId": "550e8400-e29b-41d4-a716-446655440000",
        "employeeId": "550e8400-e29b-41d4-a716-446655440000",
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "assign_contact_to_employee",
  "arguments": {
    "contactId": "550e8400-e29b-41d4-a716-446655440000",
    "employeeId": "550e8400-e29b-41d4-a716-446655440000",
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000"
  }
});
```

### Python

```python
result = await session.call_tool("assign_contact_to_employee", arguments={
  "contactId": "550e8400-e29b-41d4-a716-446655440000",
  "employeeId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000"
})
```


## unassign_contact_from_employee

`TOOL unassign_contact_from_employee`

Unassign an organization contact from an employee

Authentication: no security requirement declared for this operation.

Parameters:

- `contactId` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `employeeId` (argument, string, uuid, required) - The employee ID
  Type: string, uuid
  
  The employee ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "unassign_contact_from_employee",
    "arguments": {
        "contactId": "550e8400-e29b-41d4-a716-446655440000",
        "employeeId": "550e8400-e29b-41d4-a716-446655440000",
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "unassign_contact_from_employee",
  "arguments": {
    "contactId": "550e8400-e29b-41d4-a716-446655440000",
    "employeeId": "550e8400-e29b-41d4-a716-446655440000",
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000"
  }
});
```

### Python

```python
result = await session.call_tool("unassign_contact_from_employee", arguments={
  "contactId": "550e8400-e29b-41d4-a716-446655440000",
  "employeeId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000"
})
```


## get_contact_projects

`TOOL get_contact_projects`

Get projects associated with an organization contact

Authentication: no security requirement declared for this operation.

Parameters:

- `contactId` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `page` (argument, number, optional) - Page number
  Type: number
  
  Page number
  
  default: 1

- `limit` (argument, number, optional) - Items per page
  Type: number
  
  Items per page
  
  default: 10

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_contact_projects",
    "arguments": {
        "contactId": "550e8400-e29b-41d4-a716-446655440000",
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "page": 1,
        "limit": 10
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "get_contact_projects",
  "arguments": {
    "contactId": "550e8400-e29b-41d4-a716-446655440000",
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "page": 1,
    "limit": 10
  }
});
```

### Python

```python
result = await session.call_tool("get_contact_projects", arguments={
  "contactId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "page": 1,
  "limit": 10
})
```


## invite_organization_contact

`TOOL invite_organization_contact`

Send invitation to an organization contact

Authentication: no security requirement declared for this operation.

Parameters:

- `contactId` (argument, string, uuid, required) - The organization contact ID
  Type: string, uuid
  
  The organization contact ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `organizationId` (argument, string, uuid, required) - The organization ID
  Type: string, uuid
  
  The organization ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `tenantId` (argument, string, uuid, optional) - The tenant ID
  Type: string, uuid
  
  The tenant ID
  
  pattern: "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"

- `inviteType` (argument, string, optional) - Invitation type
  Type: string
  
  Invitation type
  
  default: "EMAIL"
  
  enum: ["EMAIL","SMS"]

- `customMessage` (argument, string, optional) - Custom message for the invitation
  Type: string
  
  Custom message for the invitation

## Examples

### JSON-RPC

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "invite_organization_contact",
    "arguments": {
        "contactId": "550e8400-e29b-41d4-a716-446655440000",
        "organizationId": "550e8400-e29b-41d4-a716-446655440000",
        "tenantId": "550e8400-e29b-41d4-a716-446655440000",
        "inviteType": "EMAIL",
        "customMessage": "string"
      }
  }
}
```

### TypeScript

```typescript
const result = await client.callTool({
  "name": "invite_organization_contact",
  "arguments": {
    "contactId": "550e8400-e29b-41d4-a716-446655440000",
    "organizationId": "550e8400-e29b-41d4-a716-446655440000",
    "tenantId": "550e8400-e29b-41d4-a716-446655440000",
    "inviteType": "EMAIL",
    "customMessage": "string"
  }
});
```

### Python

```python
result = await session.call_tool("invite_organization_contact", arguments={
  "contactId": "550e8400-e29b-41d4-a716-446655440000",
  "organizationId": "550e8400-e29b-41d4-a716-446655440000",
  "tenantId": "550e8400-e29b-41d4-a716-446655440000",
  "inviteType": "EMAIL",
  "customMessage": "string"
})
```
