Teamgate MCP by usefulapi
Manage Teamgate CRM leads, people, companies, deals, activities and notes.
Should I use this
Quality & Safety
Findings (1)
- LOWin teamgate_list_record_activities
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"teamgate": {
"url": "https://teamgate.usefulapi.io/mcp"
}
}
}Remote endpoints
https://teamgate.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (34)
🟢teamgate_list_users(name, email, is_active, limit, offset)
List the Teamgate users of the account with id, name and username. Use the ids as owner_id filters and values. GET /users.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the user's first name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"email": {
"description": "Exact email of the user.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"is_active": {
"description": "Only active (true) or only inactive (false) users.",
"type": "boolean"
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_user(user_id)
One Teamgate user by id. GET /users/{id}.
Input Schema
{
"type": "object",
"properties": {
"user_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate user id."
}
},
"required": [
"user_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_leads(name, email, phone, status, owner_id, ...)
List or search leads (unqualified prospects) with owner, status, source, industry and contact details. Filter by name, email, phone, status, owner, source, star or creation date. GET /leads.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the lead's name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"email": {
"description": "Part of an email address (at least 3 characters).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"phone": {
"description": "The last digits of a phone number (at least 3 characters).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"status": {
"description": "Exact lead status name, e.g. 'New'. See teamgate_list_lead_statuses.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"owner_id": {
"description": "Only leads owned by this user id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Exact source name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"starred": {
"description": "Only starred (true) or not starred (false) leads.",
"type": "boolean"
},
"created_after": {
"description": "Only leads created at or after this RFC 3339 date or date-time.",
"type": "string"
},
"created_before": {
"description": "Only leads created at or before this RFC 3339 date or date-time.",
"type": "string"
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_lead(lead_id, include_custom_fields)
One lead by id with all its details. GET /leads/{id}.
Input Schema
{
"type": "object",
"properties": {
"lead_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate lead id."
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
}
},
"required": [
"lead_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_lead_statuses(limit, offset)
List the lead statuses of the account (use the names as the status filter or value on leads). GET /leadsStatuses.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_people(name, email, phone, owner_id, customer_status, ...)
List or search people (contacts) with job title, company, owner, source and contact details. Filter by name, email, phone, owner, customer status or creation date. GET /people.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the person's name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"email": {
"description": "Part of an email address (at least 3 characters).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"phone": {
"description": "The last digits of a phone number (at least 3 characters).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"owner_id": {
"description": "Only people owned by this user id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"customer_status": {
"description": "0 = non customer, 1 = past customer, 2 = customer.",
"type": "integer",
"minimum": 0,
"maximum": 2
},
"created_after": {
"description": "Only people created at or after this RFC 3339 date or date-time.",
"type": "string"
},
"created_before": {
"description": "Only people created at or before this RFC 3339 date or date-time.",
"type": "string"
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_person(person_id, include_custom_fields)
One person by id with all their details. GET /people/{id}.
Input Schema
{
"type": "object",
"properties": {
"person_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate person id."
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
}
},
"required": [
"person_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_companies(name, email, phone, owner_id, vat_code, ...)
List or search companies with owner, industry, source, customer and prospect status and contact details. Filter by name, email, phone, owner, VAT code or creation date. GET /companies.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the company name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"email": {
"description": "Part of an email address (at least 3 characters).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"phone": {
"description": "The last digits of a phone number (at least 3 characters).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"owner_id": {
"description": "Only companies owned by this user id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"vat_code": {
"description": "Exact VAT identification number.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"customer_status": {
"description": "0 = non customer, 1 = past customer, 2 = customer.",
"type": "integer",
"minimum": 0,
"maximum": 2
},
"created_after": {
"description": "Only companies created at or after this RFC 3339 date or date-time.",
"type": "string"
},
"created_before": {
"description": "Only companies created at or before this RFC 3339 date or date-time.",
"type": "string"
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_company(company_id, include_custom_fields)
One company by id with all its details. GET /companies/{id}.
Input Schema
{
"type": "object",
"properties": {
"company_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate company id."
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
}
},
"required": [
"company_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_company_people(company_id, limit, offset)
List the people who work at one company. GET /companies/{id}/people.
Input Schema
{
"type": "object",
"properties": {
"company_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate company id."
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"required": [
"company_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_deals(name, status, stage_id, owner_id, source, ...)
List or search deals (sales opportunities) with value, stage, status, owner and expected closing date. Filter by name, status, stage, owner, source or creation date. GET /deals.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the deal name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"status": {
"description": "Deal status.",
"type": "string",
"enum": [
"active",
"won",
"lost",
"postponed"
]
},
"stage_id": {
"description": "Only deals in this pipeline stage id (see teamgate_get_pipeline).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"owner_id": {
"description": "Only deals owned by this user id.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Exact source name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"created_after": {
"description": "Only deals created at or after this RFC 3339 date or date-time.",
"type": "string"
},
"created_before": {
"description": "Only deals created at or before this RFC 3339 date or date-time.",
"type": "string"
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_deal(deal_id, include_custom_fields)
One deal by id with value, stage, status, owner, buyer and dates. GET /deals/{id}.
Input Schema
{
"type": "object",
"properties": {
"deal_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate deal id."
},
"include_custom_fields": {
"description": "Include custom field values in the reply (default false).",
"type": "boolean"
}
},
"required": [
"deal_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_deal_stages(deal_id)
List the pipeline stages that one deal can be in (id, name, win probability; the deal's current stage is marked selected). GET /deals/{id}/stages.
Input Schema
{
"type": "object",
"properties": {
"deal_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate deal id."
}
},
"required": [
"deal_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_contact_deals(contact_type, contact_id, limit, offset)
List the deals that belong to one person or one company. GET /people/{id}/deals or /companies/{id}/deals.
Input Schema
{
"type": "object",
"properties": {
"contact_type": {
"type": "string",
"enum": [
"people",
"companies"
],
"description": "Whether contact_id is a person or a company."
},
"contact_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate person or company id."
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"required": [
"contact_type",
"contact_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_pipelines(name, limit, offset)
List the sales pipelines (id and name). Use teamgate_get_pipeline for the stages of one. GET /pipelines.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the pipeline name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_pipeline(pipeline_id)
One sales pipeline by id, with its stages. GET /pipelines/{id}.
Input Schema
{
"type": "object",
"properties": {
"pipeline_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate pipeline id."
}
},
"required": [
"pipeline_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_activities(limit, offset)
List activities (tasks, calls, appointments and notes) across the account. GET /events.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_record_activities(record_type, record_id, limit, offset)
List the activities (tasks, calls, appointments, notes) linked to one lead, person, company or deal. GET /{leads|people|companies|deals}/{id}/events.
Input Schema
{
"type": "object",
"properties": {
"record_type": {
"type": "string",
"enum": [
"leads",
"people",
"companies",
"deals"
],
"description": "The kind of record."
},
"record_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate id of the lead, person, company or deal."
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"required": [
"record_type",
"record_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_get_activity(activity_id)
One activity (task, call, appointment or note) by id. GET /events/{id}.
Input Schema
{
"type": "object",
"properties": {
"activity_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate activity id."
}
},
"required": [
"activity_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_search(query, modules, limit, offset)
Search leads, people, companies and deals by name in one request. GET /global.
Input Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Text to find in record names."
},
"modules": {
"description": "Which kinds of record to search (default all four).",
"minItems": 1,
"maxItems": 4,
"type": "array",
"items": {
"type": "string",
"enum": [
"leads",
"people",
"companies",
"deals"
]
}
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"required": [
"query"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_sources(limit, offset)
List the lead/deal sources of the account (where records come from). GET /sources.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_industries(limit, offset)
List the industries of the account. GET /industries.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_products(name, limit, offset)
List the products of the catalogue (id, name, price). GET /products.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Part of the product name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢teamgate_list_custom_fields(limit, offset)
List the custom field definitions of the account (id, name, type, module). GET /customFields.
Input Schema
{
"type": "object",
"properties": {
"limit": {
"description": "Results per page, 1-100 (default 25).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Records to skip (default 0). Pass the previous reply's next_offset.",
"type": "integer",
"minimum": 0,
"maximum": 1000000
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_create_lead(name, company_name, job_title, status, email, ...)
WRITE: create a lead. Give a person's name, or a company_name for a company lead. Teamgate may start workflows or notifications for new leads. POST /leads.
Input Schema
{
"type": "object",
"properties": {
"name": {
"description": "Person's full name (required unless company_name is given).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"company_name": {
"description": "Company name for a company lead (required unless name is given).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"job_title": {
"description": "Job title (used only together with company_name).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"status": {
"description": "Lead status name, e.g. 'New' (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"email": {
"description": "Email address.",
"type": "string",
"minLength": 1,
"maxLength": 254
},
"phone": {
"description": "Phone number.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"industry": {
"description": "Industry name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_update_lead(lead_id, name, status, owner_id, source, ...)
WRITE: change fields of one lead. Only the fields you pass are sent; this overwrites their current values. PUT /leads/{id}.
Input Schema
{
"type": "object",
"properties": {
"lead_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate lead id."
},
"name": {
"description": "New name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"status": {
"description": "New lead status name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"industry": {
"description": "Industry name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"lead_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_create_person(name, company_id, job_title, customer_status, email, ...)
WRITE: create a person (contact). Optionally link them to a company with their job title. POST /people.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Person's full name."
},
"company_id": {
"description": "Id of the company the person works at.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"job_title": {
"description": "Job title (used only together with company_id).",
"type": "string",
"minLength": 1,
"maxLength": 100
},
"customer_status": {
"description": "0 = non customer, 1 = past customer, 2 = customer.",
"type": "integer",
"minimum": 0,
"maximum": 2
},
"email": {
"description": "Email address.",
"type": "string",
"minLength": 1,
"maxLength": 254
},
"phone": {
"description": "Phone number.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"industry": {
"description": "Industry name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_update_person(person_id, name, customer_status, owner_id, source, ...)
WRITE: change fields of one person. Only the fields you pass are sent; this overwrites their current values. PUT /people/{id}.
Input Schema
{
"type": "object",
"properties": {
"person_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate person id."
},
"name": {
"description": "New name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"customer_status": {
"description": "0 = non customer, 1 = past customer, 2 = customer.",
"type": "integer",
"minimum": 0,
"maximum": 2
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"industry": {
"description": "Industry name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"person_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_create_company(name, vat_code, customer_status, email, phone, ...)
WRITE: create a company. POST /companies.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Company name."
},
"vat_code": {
"description": "VAT identification number.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"customer_status": {
"description": "0 = non customer, 1 = past customer, 2 = customer.",
"type": "integer",
"minimum": 0,
"maximum": 2
},
"email": {
"description": "Email address.",
"type": "string",
"minLength": 1,
"maxLength": 254
},
"phone": {
"description": "Phone number.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"industry": {
"description": "Industry name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_update_company(company_id, name, vat_code, customer_status, owner_id, ...)
WRITE: change fields of one company. Only the fields you pass are sent; this overwrites their current values. PUT /companies/{id}.
Input Schema
{
"type": "object",
"properties": {
"company_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate company id."
},
"name": {
"description": "New name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"vat_code": {
"description": "VAT identification number.",
"type": "string",
"minLength": 1,
"maxLength": 50
},
"customer_status": {
"description": "0 = non customer, 1 = past customer, 2 = customer.",
"type": "integer",
"minimum": 0,
"maximum": 2
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"industry": {
"description": "Industry name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"company_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_create_deal(name, buyer_id, stage_id, status, price_value, ...)
WRITE: create a deal for a buyer (a person or company). POST /deals.
Input Schema
{
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Deal name."
},
"buyer_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Id of the person or company that buys, as returned by the list tools."
},
"stage_id": {
"description": "Pipeline stage id (see teamgate_get_pipeline).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"status": {
"description": "Deal status.",
"type": "string",
"enum": [
"active",
"won",
"lost",
"postponed"
]
},
"price_value": {
"description": "Deal value.",
"type": "number",
"minimum": 0,
"maximum": 1000000000000
},
"price_currency": {
"description": "Currency code, e.g. EUR.",
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"estimated_closure_date": {
"description": "Expected closing date-time (RFC 3339 with timezone).",
"type": "string"
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"name",
"buyer_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_update_deal(deal_id, name, buyer_id, stage_id, status, ...)
WRITE: change fields of one deal, for example move it to another stage or mark it won or lost. Only the fields you pass are sent; this overwrites their current values. PUT /deals/{id}.
Input Schema
{
"type": "object",
"properties": {
"deal_id": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991,
"description": "Teamgate deal id."
},
"name": {
"description": "New deal name.",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"buyer_id": {
"description": "New buyer (person or company id).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"stage_id": {
"description": "Pipeline stage id (see teamgate_get_pipeline).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"status": {
"description": "Deal status.",
"type": "string",
"enum": [
"active",
"won",
"lost",
"postponed"
]
},
"price_value": {
"description": "Deal value.",
"type": "number",
"minimum": 0,
"maximum": 1000000000000
},
"price_currency": {
"description": "Currency code, e.g. EUR.",
"type": "string",
"pattern": "^[A-Za-z]{3}$"
},
"estimated_closure_date": {
"description": "Expected closing date-time (RFC 3339 with timezone).",
"type": "string"
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"source": {
"description": "Source name (created if it does not exist).",
"type": "string",
"minLength": 1,
"maxLength": 255
},
"tags": {
"description": "Tags to set on the record.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 100
}
},
"starred": {
"description": "Star the record.",
"type": "boolean"
}
},
"required": [
"deal_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_create_activity(type, name, description, start, end, ...)
WRITE: create a task, call or appointment, optionally linked to leads, companies or deals. Teamgate may send reminders to the owner. POST /events.
Input Schema
{
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"task",
"call",
"appointment"
],
"description": "Kind of activity."
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 255,
"description": "Activity title."
},
"description": {
"description": "Details.",
"type": "string",
"minLength": 1,
"maxLength": 5000
},
"start": {
"description": "Start (RFC 3339 date-time with timezone).",
"type": "string"
},
"end": {
"description": "End (RFC 3339 date-time with timezone).",
"type": "string"
},
"owner_id": {
"description": "Owner user id (see teamgate_list_users).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"lead_ids": {
"description": "Leads to link.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"company_ids": {
"description": "Companies to link.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"deal_ids": {
"description": "Deals to link.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
}
},
"required": [
"type",
"name"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴teamgate_add_note(text, lead_ids, company_ids, deal_ids)
WRITE: add a note to one or more leads, companies or deals. The note cannot be edited or removed with these tools. POST /events.
Input Schema
{
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"maxLength": 10000,
"description": "The note text."
},
"lead_ids": {
"description": "Leads to link.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"company_ids": {
"description": "Companies to link.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
},
"deal_ids": {
"description": "Deals to link.",
"minItems": 1,
"maxItems": 20,
"type": "array",
"items": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
}
}
},
"required": [
"text"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence