Skip to main content
Glama

AIsa Apollo

Create an Account

post_apollo_accounts
Destructive

Create a new account. Duplicate domains are not allowed. Requires a master API key.

Published reference price: $0.012 USD per successful request. Account-specific pricing and final settlement may differ.

Input Schema

NameRequiredDescriptionDefault
bodyYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • removedInput schema / properties / account_stage_id
      Removed value: -{
      -  "description": "Account stage ID",
      -  "type": "string"
      -}
    • addedInput schema / properties / body
      Added value: +{
      +  "properties": {
      +    "account_stage_id": {
      +      "description": "The Apollo ID for the account stage to which you want to assign the account. Call the <a href=\"https://docs.apollo.io/reference/list-account-stages\" target=\"_blank\">list account stages endpoint</a> to retrieve a list of all the account stage IDs available in your Apollo account. <br><br>If you do not specify the account stage, Apollo automatically assigns the account to a stage as determined by your team's Apollo account. To change the order of account stages, launch the Apollo product and go to <b>Settings</b> > <b>Objects</b> > <a href=\"https://app.apollo.io/#/settings/accounts/stages\" target=\"_blank\"><b>Accounts</b></a>. Then, access the <b>Triggers</b> tab and change the stage for when an account is created.<br><br>Example: `6095a710bd01d100a506d4b9`",
      +      "type": "string"
      +    },
      +    "domain": {
      +      "description": "The domain name for the account. <br><br>Do not include `www.` or similar. <br><br>Example: `apollo.io` or `microsoft.com`",
      +      "type": "string"
      +    },
      +    "name": {
      +      "description": "Name the account that you are creating. This should be a human-readable name. <br><br>Example: `The Irish Copywriters`",
      +      "type": "string"
      +    },
      +    "owner_id": {
      +      "description": "The ID for the account owner within your team's Apollo account. <br><br>Use the <a href=\"https://docs.apollo.io/reference/get-a-list-of-users\" target=\"_blank\">get a list of users endpoint</a> to retrieve IDs for all of the users within your Apollo account. <br><br>Example: `66302798d03b9601c7934ebf`",
      +      "type": "string"
      +    },
      +    "phone": {
      +      "description": "The primary phone number for the account. <br><br>This can be the phone number for the corporate headquarters, a branch location, or a direct dial to the primary point of contact for the account. <br><br>Apollo sanitizes phone numbers, so you can enter them in any format. The sanitized number can be viewed in the endpoint response. <br><br>Examples: `555-555-0133`; `+44 7700 900852`",
      +      "type": "string"
      +    },
      +    "raw_address": {
      +      "description": "The corporate location for the account. This can include a city, US state, and country. <br><br>Apollo matches the location you provide to the most applicable pre-defined location. <br><br>Examples: `Belfield, Dublin 4, Ireland`; `Dallas, United States`",
      +      "type": "string"
      +    },
      +    "typed_custom_fields": {
      +      "additionalProperties": {
      +        "type": "string"
      +      },
      +      "description": "Add information to <a href=\"https://knowledge.apollo.io/hc/en-us/articles/4412498754445-Create-Custom-Account-Fields\" target=\"_blank\">custom fields</a> in Apollo. <br><br><b>Your custom fields are unique to your team's Apollo account. This means that the examples in this documentation may not work for your testing purposes.</b> <br><br>To utilize this parameter successfully, call the <a href=\"https://docs.apollo.io/reference/get-a-list-of-all-custom-fields\">get a list of all custom fields</a> endpoint and identify the `id` value for the custom field, as well as the appropriate data type. For example, if a custom field accepts picklist entries, you need to pass the accompanying `id` value for the picklist entry that you want to use as the input value. <br><br><b>Example</b>: When the <a href=\"https://docs.apollo.io/reference/get-a-list-of-all-custom-fields\">get a list of all custom fields</a> endpoint returns an `id` of field: \n * `\"60c39ed82bd02f01154c470a\"` (datetime) \n \n\n then the value passed should be: \n\n `{\"60c39ed82bd02f01154c470a\": \"2025-08-07\"}`",
      +      "example": {
      +        "60c39ed82bd02f01154c470a": "2025-08-07"
      +      },
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
    • removedInput schema / properties / domain
      Removed value: -{
      -  "description": "Account domain",
      -  "type": "string"
      -}
    • removedInput schema / properties / name
      Removed value: -{
      -  "description": "Account name",
      -  "type": "string"
      -}
    • removedInput schema / properties / owner_id
      Removed value: -{
      -  "description": "Owner ID",
      -  "type": "string"
      -}
    • changedInput schema / required
      Previous value: -[
      -  "name",
      -  "domain"
      -]New value: +[
      +  "body"
      +]
  2. First observed

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare the safety profile (readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true), so the bar is lower. The description still adds genuinely non-annotation context: the master-API-key requirement and the duplicate-domain rejection rule. It omits failure behavior and does not restate anything the annotations already cover, but adds no more.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three short front-loaded sentences: action, constraint, prerequisite. The pricing block is boilerplate but separate and ignorable. No wasted text in the substantive portion.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Output schema exists, so return values need no explanation, and the nested schema fully documents inputs. What remains for the description—auth requirement and domain constraint—is covered, leaving only failure modes unstated for a destructive create.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The top-level `body` param carries no description (reported coverage 0%), but the nested body schema documents each field extensively (name, domain, owner_id, account_stage_id, typed_custom_fields), so the schema itself carries parameter semantics. The description contributes only the domain-uniqueness constraint, adding marginal value beyond the schema; baseline 3 fits.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Create a new account') in the first sentence, and the singular 'an account' distinguishes it from post_apollo_accounts_bulk_create and from patch_apollo_accounts_account_id. An agent can place it correctly without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description supplies prerequisites ('Requires a master API key') and a hard constraint ('Duplicate domains are not allowed'), which implies the create use case, but it never names an alternative such as bulk create or the patch endpoint, nor states when not to call it. Usage is implied rather than guided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources