Virtual Assistant International

Courses, live prices, jobs platform and support info from Virtual Assistant International.

Should I use this

Quality & Safety

A
Description quality
98%
Schema completeness
74%
Naming quality
98%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,442Tokens (tool definitions)
~845 BTypical response size
Moderate attention impact (1.13% of 128k context)

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": {
    "vai-site": {
      "url": "https://www.virtualassistantinternational.com/mcp"
    }
  }
}

Remote endpoints

https://www.virtualassistantinternational.com/mcpstreamable-http

What it can do

Tool inventory

Tools (9)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢get_company_overview

Who VA International is, its mission, history and approach to training virtual assistants. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_platform_overview

How the VA International jobs platform works for virtual assistants and employers. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_packages(country)

All current course packages with live prices, billing periods and what each includes. Prices are in EUR. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "country": {
      "description": "Two-letter ISO country code for the price list, for example NL. Defaults to NL.",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_package(code, country)

One course package by its code (see list_packages) with live prices and contents. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "Package code from list_packages."
    },
    "country": {
      "description": "Two-letter ISO country code for the price list, for example NL. Defaults to NL.",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    }
  },
  "required": [
    "code"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_faq(topic)

Answers to common questions on courses, studying, jobs, payment and accounts. Optionally filter by a topic word. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "topic": {
      "description": "Word or phrase to filter on, for example refund or English.",
      "type": "string",
      "maxLength": 100
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_contact_and_support

How to reach VA International support, support hours and the company details. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search_site_content(query)

Keyword search over the company, platform, contact and FAQ text. Returns the best matches with page links. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Words to look for."
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_checkout_link(productCode, billingPeriod, countryCode)

Returns the checkout page link for one package and billing period, so the person can finish and pay themselves. Nothing is bought yet: no order exists and nothing is charged until the person signs in, accepts the purchase terms and pays on Stripe. You cannot pay, accept terms or set a price, and you never see card details. The price in the reply is for information; the checkout page shows the final price. Packages are for virtual assistants: other accounts are blocked at checkout. Read-only and safe to repeat; it changes nothing.

Input Schema

{
  "type": "object",
  "properties": {
    "productCode": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "Package code from list_packages."
    },
    "billingPeriod": {
      "type": "string",
      "enum": [
        "one_time",
        "3_months",
        "6_months",
        "12_months"
      ],
      "description": "one_time, 3_months, 6_months or 12_months. Must be one of the offers of the package."
    },
    "countryCode": {
      "description": "Two-letter ISO country code for the price list, for example NL. Defaults to NL.",
      "type": "string",
      "pattern": "^[A-Za-z]{2}$"
    }
  },
  "required": [
    "productCode",
    "billingPeriod"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡request_account(email, firstName, lastName, marketingConsent)

WRITE TOOL, not read-only. Asks VA International to start an account for a person, using their own email address. The person gets a confirmation email, then chooses their own password and accepts the terms. Until they confirm, no account, customer record or marketing consent exists. You never receive a password, login or token. The reply is the same for new and existing addresses. Only use this when the person asked you to. Accounts are for virtual assistants: other accounts are blocked at checkout.

Input Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string",
      "maxLength": 254,
      "format": "email",
      "pattern": "^(?!\\.)(?!.*\\.\\.)([A-Za-z0-9_'+\\-\\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$",
      "description": "The person's own email address. They must confirm by email."
    },
    "firstName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The person's first name."
    },
    "lastName": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The person's last name."
    },
    "marketingConsent": {
      "description": "Only true if the person themselves said yes to product updates. Default false.",
      "type": "boolean"
    }
  },
  "required": [
    "email",
    "firstName",
    "lastName"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded9 tools