expertapp-receptionist-mcp

expertapp-receptionist-mcp

An MCP server that enables AI agents to act as a business receptionist on expert.com.jm, managing appointments and services without exposing API keys to the model.

Category
Visit Server

README

expertapp-receptionist-mcp

An MCP server that lets an AI agent act as the receptionist for a business on expert.com.jmwithout the API key ever entering the model's own context.

This is the recommended way to connect an agent to expert.com.jm's Reception API. The companion expertapp-receptionist skill (a plain REST API + prompt instructions) works too, but it requires the model itself to construct an Authorization: Bearer <key> header on every request — meaning the raw key has to pass through the model's own reasoning/output at some point, which is exposed to conversation transcripts, logs, and prompt-injection-triggered echoes. This server closes that gap: the key lives only in this process's environment, set once in your agent's own configuration file, never typed into a conversation. The model just calls typed tools (create_booking, check_availability, ...) and never sees a header, a key, or anything that looks like one.

Install & configure

Add it to your MCP client's config (Claude Code, Claude Desktop, Cursor, Windsurf, and most other MCP-compatible tools use a similar JSON config format — check your tool's docs for the exact file/location):

{
  "mcpServers": {
    "expertapp-receptionist": {
      "command": "npx",
      "args": ["-y", "github:incrhst/expertapp-receptionist-mcp"],
      "env": {
        "EXPERTAPP_API_KEY": "your-key-here"
      }
    }
  }
}

Get the key from the business's expert.com.jm dashboard: Team → Reception & management access → Generate an API key for an AI agent. It's shown once — paste it directly into this config file, not into a chat with the agent.

Optional: set EXPERTAPP_BASE_URL in the same env block if the business uses a white-labelled or staging domain. Defaults to https://www.expert.com.jmuse www, not the bare apex domain: the apex 308-redirects to www, and most HTTP clients (correctly, per the fetch spec) strip the Authorization header on that cross-origin hop, which makes requests against the apex silently unauthenticated rather than failing loudly.

Tools

Tool What it does
list_services Every bookable service across the team, labelled with who it belongs to
check_availability Open start times for one service over the next two weeks
create_booking Books an appointment. Paid bookings confirm on payment; free ones hold the slot and require the client to confirm by email
list_bookings Every booking across the team, most recent first
reschedule_booking Moves a booking — requires the client's email/phone to match the record
request_cancellation Queues a cancellation — the booking stays active until the client confirms by email, and may be rejected if it's within the business's cancellation-notice window

Full behavior (including the email-confirmation flows and cancellation policy) is documented in the skill's SKILL.md — this server calls the exact same API, just without the model ever touching the credential.

Scope, on purpose

Same as the REST skill: view services/availability, create/reschedule/cancel bookings. No pricing, subscription/billing, or payout access, and no refund tool — those stay human-only, in the business's own dashboard.

Local development

npm install
npm run build
EXPERTAPP_API_KEY=... node dist/index.js

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured