Pinpoint dealership sales tools

Car dealership sales tools from Pinpoint, the sales intelligence platform for car dealerships

Should I use this

Quality & Safety

A
Description quality
99%
Schema completeness
83%
Naming quality
87%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~2,420Tokens (tool definitions)
~659 BTypical response size
Moderate attention impact (1.89% 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": {
    "pinpoint-dealership-tools": {
      "url": "https://usepinpoint.ai/api/mcp"
    }
  }
}

Remote endpoints

https://usepinpoint.ai/api/mcpstreamable-http

What it can do

Tool inventory

Tools (18)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢check_appointment_ask(text)

Deterministic check of one appointment ask on a sales call using six fixed text-pattern rules: day, clock time, holding the time, confirmation question, naming what the customer asked about or promising it ready, and follow-up. Returns a structured score, per-part flags and fixes, and a fixed template example that reuses a detected day and time or supplies sample values when absent. Runs without an AI model. Use this for repeatable rule-based scoring; use review_appointment_ask for contextual AI feedback and a tailored rewrite.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "What the rep said when offering the appointment"
    }
  },
  "required": [
    "text"
  ]
}
🟢check_follow_up_text(text)

Checks a sales follow-up text message against eight practices: identifies the sender and company, refers to what the customer asked about, one question at most, a specific next step, no price or payment or discount, an easy way out, two segments or fewer, no all-caps urgency. Returns what passed, what failed and why.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string",
      "description": "The text message as it would be sent"
    }
  },
  "required": [
    "text"
  ]
}
🟢call_recording_consent(state, company, rep)

Whether one party or every party must consent before a phone call is recorded in a US state, the statute, a note for sales teams, and the greeting, outbound and text notices to use on your calls. All 50 states and DC. General information, not legal advice.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "description": "State name or two-letter abbreviation, for example \"FL\" or \"Florida\""
    },
    "company": {
      "type": "string",
      "description": "Your company name for the notices"
    },
    "rep": {
      "type": "string",
      "description": "Rep first name for the outbound notice"
    }
  },
  "required": [
    "state"
  ]
}
🟢ai_caller_disclosure(state, company)

What a US state requires when an automated or AI voice assistant answers a sales team's missed calls or places an approved outbound call: the AI disclosure rule, the consent rule for automated calls, the statute, the federal baseline, and what the assistant should say. All 50 states and DC. General information, not legal advice.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "description": "State name or two-letter abbreviation"
    },
    "company": {
      "type": "string",
      "description": "Your company name for the scripts"
    }
  },
  "required": [
    "state"
  ]
}
🟢follow_up_cadence(situation, customer_first_name, rep, company, day_and_time, ...)

The follow-up sequence for a sales situation (new web lead, missed inbound call, unconfirmed appointment, no-show, quote without an appointment, pricing question without a meeting, text thread gone quiet, new customer first week): the starting event and each step's timing, channel, purpose, message with the names filled in, and the reply that stops it. Use startLabel to anchor the sequence; a step's whenLabel takes precedence over its retained legacy day value.

Input Schema

{
  "type": "object",
  "properties": {
    "situation": {
      "type": "string",
      "enum": [
        "new-internet-lead",
        "missed-inbound-call",
        "appointment-unconfirmed",
        "no-show",
        "quote-without-appointment",
        "pricing-question-without-meeting",
        "text-thread-gone-quiet",
        "new-customer-first-week"
      ],
      "description": "The situation slug"
    },
    "customer_first_name": {
      "type": "string",
      "description": "The customer's first name"
    },
    "rep": {
      "type": "string",
      "description": "The rep's first name"
    },
    "company": {
      "type": "string",
      "description": "Your company name"
    },
    "day_and_time": {
      "type": "string",
      "description": "The day and time on the table, for example \"Saturday at 12:30\""
    },
    "product": {
      "type": "string",
      "description": "What the customer asked about, for example \"umbrella policy\""
    }
  },
  "required": [
    "situation"
  ]
}
🟢roleplay_card(customer_type, objection)

A practice card for a sales roleplay: a customer type (twelve, from the price shopper to the callback who went quiet) and an objection (eight, from "I need to think about it" to "just email me the numbers"): the customer's opening line, what they want and fear, their tells, the objection as the customer says it, the rep's goal, what a strong answer sounds like, and the feedback checklist.

Input Schema

{
  "type": "object",
  "properties": {
    "customer_type": {
      "type": "string",
      "enum": [
        "price-shopper",
        "payment-shopper",
        "spouse-or-co-buyer",
        "current-provider-anchor",
        "out-of-market-buyer",
        "renewal-window-buyer",
        "internet-lead-with-quote",
        "existing-customer-upgrading",
        "approval-worried-buyer",
        "specific-product-check",
        "just-looking-caller",
        "quiet-callback"
      ]
    },
    "objection": {
      "type": "string",
      "enum": [
        "need-to-think-about-it",
        "best-price-over-the-phone",
        "cheaper-somewhere-else",
        "not-ready-to-come-in",
        "talk-to-my-spouse",
        "is-switching-worth-it",
        "i-might-not-qualify",
        "just-email-me-the-numbers"
      ]
    }
  },
  "required": [
    "customer_type",
    "objection"
  ]
}
🟢crm_note_checklist

What a complete CRM note carries after a sales call or text thread, in five sections, with an example of a strong note and the lead statuses that mislead managers.

Input Schema

{
  "type": "object",
  "properties": {}
}
🟢call_scorecard

The eighteen-item pass-or-fail scorecard for a sales call, in five groups (open, discovery, the ask, control, close and record), with the scoring rules and the four-minute review method.

Input Schema

{
  "type": "object",
  "properties": {}
}
🟢conversation_signals(signal)

The 40 moments in a sale worth acting on, in six groups (buying signals, appointment handling, follow-up gaps, coaching moments, record gaps, agent handoffs). Without a signal, returns the list; with a signal slug, returns what it sounds like, why it matters, what to do next, how to coach it and how to practice it.

Input Schema

{
  "type": "object",
  "properties": {
    "signal": {
      "type": "string",
      "description": "A signal slug from the list"
    }
  }
}
🟢dealership_glossary(term)

Plain definitions of the 92 terms in the Pinpoint sales conversation glossary, from appointment set rate to speed to lead and quiet hours. Accepts a term's other names too. Returns the matching term, or the closest matches.

Input Schema

{
  "type": "object",
  "properties": {
    "term": {
      "type": "string",
      "description": "The term, another name for it, or a word in it"
    }
  },
  "required": [
    "term"
  ]
}
🟢review_appointment_ask(ask)

Uses the configured AI assistant to review one appointment ask from a sales call in context. Returns prose with a verdict, present and missing parts, a tailored rewrite in the rep's voice, and one coaching line. Choose this for phrasing and coaching; use check_appointment_ask for deterministic six-part scoring and a fixed template example. Available only when an assistant provider is configured.

Input Schema

{
  "type": "object",
  "properties": {
    "ask": {
      "type": "string"
    }
  },
  "required": [
    "ask"
  ]
}
🟢write_follow_up_texts(situation, rep, company, customer_first_name, day_and_time, ...)

Writes two follow-up texts for a sales situation you describe: under 300 characters, names the rep and company, one question, a way out, no price, payment or discount.

Input Schema

{
  "type": "object",
  "properties": {
    "situation": {
      "type": "string",
      "description": "What happened with the customer"
    },
    "rep": {
      "type": "string"
    },
    "company": {
      "type": "string"
    },
    "customer_first_name": {
      "type": "string"
    },
    "day_and_time": {
      "type": "string"
    },
    "product": {
      "type": "string"
    }
  },
  "required": [
    "situation"
  ]
}
🟢rewrite_follow_up_text(text)

Checks a follow-up text against eight practices and rewrites it to pass them.

Input Schema

{
  "type": "object",
  "properties": {
    "text": {
      "type": "string"
    }
  },
  "required": [
    "text"
  ]
}
🟢score_crm_note(note)

Scores a CRM note written after a sales call or text thread against what a complete note carries, and rewrites it complete with brackets for missing facts.

Input Schema

{
  "type": "object",
  "properties": {
    "note": {
      "type": "string"
    }
  },
  "required": [
    "note"
  ]
}
🟢score_call(transcript)

Scores a sales call transcript, notes or summary against the eighteen-item sales call scorecard: pass, fail or not observable per item with evidence, and a coaching note.

Input Schema

{
  "type": "object",
  "properties": {
    "transcript": {
      "type": "string",
      "description": "Transcript, notes or a summary of one call, up to 6,000 characters"
    }
  },
  "required": [
    "transcript"
  ]
}
🟢tailor_follow_up_cadence(situation, customer, rep, company, customer_first_name, ...)

Rewrites every step of a situation's follow-up cadence for the customer you describe, keeping the days, times and channels.

Input Schema

{
  "type": "object",
  "properties": {
    "situation": {
      "type": "string",
      "enum": [
        "new-internet-lead",
        "missed-inbound-call",
        "appointment-unconfirmed",
        "no-show",
        "quote-without-appointment",
        "pricing-question-without-meeting",
        "text-thread-gone-quiet",
        "new-customer-first-week"
      ]
    },
    "customer": {
      "type": "string",
      "description": "Who the customer is and what they care about"
    },
    "rep": {
      "type": "string"
    },
    "company": {
      "type": "string"
    },
    "customer_first_name": {
      "type": "string"
    },
    "day_and_time": {
      "type": "string"
    },
    "product": {
      "type": "string"
    }
  },
  "required": [
    "situation",
    "customer"
  ]
}
🟢answer_recording_question(state, question)

Answers a sales manager's question about recording phone calls in one US state from the state's consent entry. General information, not legal advice.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string"
    },
    "question": {
      "type": "string"
    }
  },
  "required": [
    "state",
    "question"
  ]
}
🟢answer_ai_caller_question(state, question)

Answers a question about an automated or AI voice assistant answering missed calls or placing approved outbound calls in one US state, from the federal baseline and the state entry. General information, not legal advice.

Input Schema

{
  "type": "object",
  "properties": {
    "state": {
      "type": "string"
    },
    "question": {
      "type": "string"
    }
  },
  "required": [
    "state",
    "question"
  ]
}

Recommended Prompts

list_items
List all [items] available in Pinpoint dealership sales tools
Expected tools: crm_note_checklist
browse_collection
Show me the [collection] from Pinpoint dealership sales tools
Expected tools: crm_note_checklist

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded18 tools
verifiedversion not recorded18 tools