QuotaPath MCP by usefulapi

Read deals, payouts, plans, teams and users, and create, update or delete deals in QuotaPath.

¿Debería usar esto?

Calidad y seguridad

A
Calidad de la descripción
98%
Integridad del esquema
94%
Calidad de los nombres
77%
Riesgo de envenenamiento
100%
Coincidencia de permisos
100%
Cumplimiento del protocolo
100%

Hallazgos (2)

  • LOWTool 'quotapath_list_resolved_payouts' name length outside 3-30 rangeen quotapath_list_resolved_payouts
  • LOWTool 'quotapath_list_unresolved_payouts' name length outside 3-30 rangeen quotapath_list_unresolved_payouts

Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.

Costo de contexto

~3,163Tokens (definiciones de herramientas)
~2.2 KBTamaño de respuesta típico
Impacto significativo en la atención (2.47% del contexto de 128k)

Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.

Instalar

Instalación con un clic

Agrega esto a tu archivo `claude_desktop_config.json`:

{
  "mcpServers": {
    "quotapath": {
      "url": "https://quotapath.usefulapi.io/mcp"
    }
  }
}

Puntos de conexión remotos

https://quotapath.usefulapi.io/mcpstreamable-http

Qué puede hacer

Inventario de herramientas

Herramientas (12)

🟢 Solo lectura🟡 Escritura🔴 Eliminación⚪ Desconocido
🟢quotapath_list_deals(id, integration_id, path_id, user_email, limit, ...)

List deals in the QuotaPath workspace. Filter by id, integration_id (your system's id), path_id or user_email (deal owner). Uses GET /v1/deal/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "id": {
      "description": "Filter by QuotaPath deal id.",
      "type": "string"
    },
    "integration_id": {
      "description": "Filter by your system's id for the deal.",
      "type": "string"
    },
    "path_id": {
      "description": "Filter by path uuid.",
      "type": "string"
    },
    "user_email": {
      "description": "Filter by deal owner email.",
      "type": "string"
    },
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_get_deal(deal_id)

Get one deal by uuid, with its deal values, metadata and state. Uses GET /v1/deal/{uuid}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "deal_id": {
      "type": "string",
      "minLength": 1,
      "description": "The deal uuid (from quotapath_list_deals)."
    }
  },
  "required": [
    "deal_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴quotapath_create_deal(name, user_email, deal_values, integration_id, date, ...)

Create one deal in QuotaPath, with its owner, amounts per path and state. This changes commission data: confirm the owner, path ids and amounts first. Uses POST /v1/deal/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255,
      "description": "Deal name (up to 255 characters)."
    },
    "user_email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "Email of the deal owner (a QuotaPath user)."
    },
    "deal_values": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "description": "Deal amount as a number."
          },
          "path_id": {
            "type": "string",
            "minLength": 1,
            "description": "Path uuid this amount applies to (from quotapath_list_plans)."
          }
        },
        "required": [
          "value",
          "path_id"
        ]
      },
      "description": "Amounts per path. Each needs path_id and value."
    },
    "integration_id": {
      "description": "Your system's id for this deal. Keeps the deal linked to your CRM record.",
      "type": "string",
      "minLength": 1
    },
    "date": {
      "description": "Deal date (yyyy-mm-dd).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "state": {
      "description": "Deal state.",
      "type": "string",
      "enum": [
        "open",
        "closed",
        "lost"
      ]
    },
    "admin_locked": {
      "description": "Lock the deal so only admins can change it.",
      "type": "boolean"
    },
    "metadata": {
      "type": "object",
      "properties": {
        "date_field_1": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
          "description": "Date as yyyy-mm-dd."
        },
        "date_field_2": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
          "description": "Date as yyyy-mm-dd."
        },
        "number_field_1": {
          "type": "string",
          "description": "Decimal number as a string."
        }
      },
      "required": [
        "date_field_1",
        "date_field_2",
        "number_field_1"
      ],
      "description": "Optional custom fields used by the plan's paths."
    }
  },
  "required": [
    "name",
    "user_email",
    "deal_values"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴quotapath_bulk_create_deals(deals)

Create many deals in one call. Each item uses the same fields as quotapath_create_deal. This changes commission data. Uses POST /v1/deal/bulk/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "deals": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 255,
            "description": "Deal name (up to 255 characters)."
          },
          "user_email": {
            "type": "string",
            "format": "email",
            "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
            "description": "Email of the deal owner (a QuotaPath user)."
          },
          "deal_values": {
            "minItems": 1,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "value": {
                  "type": "number",
                  "description": "Deal amount as a number."
                },
                "path_id": {
                  "type": "string",
                  "minLength": 1,
                  "description": "Path uuid this amount applies to (from quotapath_list_plans)."
                }
              },
              "required": [
                "value",
                "path_id"
              ]
            },
            "description": "Amounts per path. Each needs path_id and value."
          },
          "integration_id": {
            "description": "Your system's id for this deal. Keeps the deal linked to your CRM record.",
            "type": "string",
            "minLength": 1
          },
          "date": {
            "description": "Deal date (yyyy-mm-dd).",
            "type": "string",
            "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
          },
          "state": {
            "description": "Deal state.",
            "type": "string",
            "enum": [
              "open",
              "closed",
              "lost"
            ]
          },
          "admin_locked": {
            "description": "Lock the deal so only admins can change it.",
            "type": "boolean"
          },
          "metadata": {
            "type": "object",
            "properties": {
              "date_field_1": {
                "type": "string",
                "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                "description": "Date as yyyy-mm-dd."
              },
              "date_field_2": {
                "type": "string",
                "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
                "description": "Date as yyyy-mm-dd."
              },
              "number_field_1": {
                "type": "string",
                "description": "Decimal number as a string."
              }
            },
            "required": [
              "date_field_1",
              "date_field_2",
              "number_field_1"
            ],
            "description": "Optional custom fields used by the plan's paths."
          }
        },
        "required": [
          "name",
          "user_email",
          "deal_values"
        ]
      },
      "description": "Deals to create."
    }
  },
  "required": [
    "deals"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡quotapath_update_deal(deal_id, name, user_email, deal_values, integration_id, ...)

Change some fields of one deal. Send only the fields to change; the others stay as they are. Uses PATCH /v1/deal/{uuid}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "deal_id": {
      "type": "string",
      "minLength": 1,
      "description": "The deal uuid (from quotapath_list_deals)."
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 255,
      "description": "Deal name (up to 255 characters)."
    },
    "user_email": {
      "type": "string",
      "format": "email",
      "pattern": "^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "Email of the deal owner (a QuotaPath user)."
    },
    "deal_values": {
      "minItems": 1,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "value": {
            "type": "number",
            "description": "Deal amount as a number."
          },
          "path_id": {
            "type": "string",
            "minLength": 1,
            "description": "Path uuid this amount applies to (from quotapath_list_plans)."
          }
        },
        "required": [
          "value",
          "path_id"
        ]
      },
      "description": "Amounts per path. Each needs path_id and value."
    },
    "integration_id": {
      "description": "Your system's id for this deal. Keeps the deal linked to your CRM record.",
      "type": "string",
      "minLength": 1
    },
    "date": {
      "description": "Deal date (yyyy-mm-dd).",
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "state": {
      "description": "Deal state.",
      "type": "string",
      "enum": [
        "open",
        "closed",
        "lost"
      ]
    },
    "admin_locked": {
      "description": "Lock the deal so only admins can change it.",
      "type": "boolean"
    },
    "metadata": {
      "type": "object",
      "properties": {
        "date_field_1": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
          "description": "Date as yyyy-mm-dd."
        },
        "date_field_2": {
          "type": "string",
          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
          "description": "Date as yyyy-mm-dd."
        },
        "number_field_1": {
          "type": "string",
          "description": "Decimal number as a string."
        }
      },
      "required": [
        "date_field_1",
        "date_field_2",
        "number_field_1"
      ],
      "description": "Optional custom fields used by the plan's paths."
    }
  },
  "required": [
    "deal_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴quotapath_delete_deal(deal_id, confirm)

Remove one deal from QuotaPath. This cannot be undone through this server. Check the deal with quotapath_get_deal first, and get the user's OK. Uses DELETE /v1/deal/{uuid}/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "deal_id": {
      "type": "string",
      "minLength": 1,
      "description": "The deal uuid (from quotapath_list_deals)."
    },
    "confirm": {
      "type": "boolean",
      "const": true,
      "description": "Must be true. Set it only after the user confirms this deletion."
    }
  },
  "required": [
    "deal_id",
    "confirm"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_list_payouts(updated_since, limit, offset)

List all payouts, resolved and unresolved. Use updated_since to fetch only changes since a Unix time in seconds. Uses GET /v1/payout/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "updated_since": {
      "description": "Unix timestamp in seconds. Returns records updated after it.",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_list_resolved_payouts(updated_since, limit, offset)

List resolved payouts, the ones that can go to your external software systems. Use updated_since to fetch only changes. Uses GET /v1/payout/resolved/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "updated_since": {
      "description": "Unix timestamp in seconds. Returns records updated after it.",
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_list_unresolved_payouts(limit, offset)

List payouts that are not resolved yet. Uses GET /v1/payout/unresolved/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_list_plans(limit, offset)

List compensation plans with their assignments and paths. Path uuids from here go into deal values. Uses GET /v1/plan/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_list_teams(limit, offset)

List teams in the QuotaPath workspace with their current members and managers. Uses GET /v1/team/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢quotapath_list_users(limit, offset)

List users in the QuotaPath workspace (name and email). Use the email as user_email on a deal. Uses GET /v1/user/.

Esquema de entrada

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Maximum records to return (vendor default when omitted).",
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 9007199254740991
    },
    "offset": {
      "description": "Records to skip, for paging.",
      "type": "integer",
      "minimum": 0,
      "maximum": 9007199254740991
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Comunidad

Califica este servidor

Evidencia

Observaciones recientes

verificadoversión no registrada12 herramientas