Skip to content

Tools

The Famasi MCP server exposes 24 provider API operations plus 2 documentation tools. All operations require provider authentication via x-api-key header.

Base URL: https://mcp.famasi.ai/mcp


Documentation Tools

These tools read the local OpenAPI spec — no API call needed.

Search provider API operations by keyword.

"Search docs for customer"
"Find operations related to orders"

docs_describe_operation

Get full details for a specific operation by operationId.

"Describe the fetchCustomers operation"

Authentication (2 operations)

getAuthenticatedProvider

Fetch the authenticated provider’s details.

MethodGET
Path/me
"Who am I? Show my provider profile"
"Get my authenticated provider details"

refreshProviderApiToken

Generate a new API token for the provider.

MethodPOST
Path/me/token
"Rotate my API key"
"Generate a new provider token"

Warning: This invalidates the current token. You’ll need to update your configuration after rotating.


Customer Management (4 operations)

fetchCustomers

List all patients/customers for the authenticated provider.

MethodGET
Path/customers
Parameterspage, search (query string)
"List my customers"
"Search for customer with phone +2348012345678"

addProviderCustomer

Register a new patient under the provider.

MethodPOST
Path/customers
BodyPatient details (name, phone, etc.)
"Create a new customer with phone +2348012345678 and name Amina Yusuf"

Confirmation required. The agent will ask you to confirm before creating.

viewProviderCustomerDetails

View details of a specific customer/patient.

MethodGET
Path/view-customer/{customer_id}
Parameterscustomer_id (path)
"Show me details for customer ABC123"

updateProviderCustomer

Edit a customer in the provider’s organisation.

MethodPUT
Path/customers/{unique_customer_id}
Parametersunique_customer_id (path)
BodyUpdated fields
"Update customer ABC123's phone number to +2349087654321"

Confirmation required. The agent will ask you to confirm before modifying.


Plan Management (2 operations)

fetchPlansForProvider

List available subscription/dispensary plans.

MethodGET
Path/plans
"Show me all available plans"
"List dispensary plans"

addCustomerPlan

Enrol a patient in a dispensary plan.

MethodPOST
Path/customers/{unique_customer_id}/plans
Parametersunique_customer_id (path)
BodyPlan details
"Add customer ABC123 to the monthly wellness plan"

Confirmation required. The agent will ask you to confirm before enrolment.


Product Management (1 operation)

fetchFormularyForProvider

Search products in the formulary.

MethodGET
Path/formulary
Parameterssearch, page (query string)
"Search the formulary for Amoxicillin 500mg"
"What's in stock for diabetes medications?"
"Find metformin in the formulary"

Order Management (4 operations)

getAllProviderOrder

Fetch all orders for the provider.

MethodGET
Path/orders
ParametersPagination, date filters (query string)
"Show me all orders"
"List orders from last week"
"Get pending orders"

createNewProviderOrderController

Create a new order for a patient.

MethodPOST
Path/orders
BodyPatient ID, cart items, options
"Create an order for customer +2348012345678 — 2x Amoxicillin 500mg"

Confirmation required. The agent will show order details and ask for confirmation before placing.

getProviderOrderStats

Summary counts and status breakdown of orders.

MethodGET
Path/orders-stats
"Show me order statistics"
"How many orders were completed this month?"

getProviderOrderAnalytics

Trend data for provider orders.

MethodGET
Path/provider-orders/analytics
"Show order analytics"
"What's the order trend for the last 30 days?"

Analytics (1 operation)

getProviderAnalytics

Broader provider platform analytics.

MethodGET
Path/analytics
"Show me my analytics dashboard"
"Get platform analytics"

User Management (2 operations)

createProviderUser

Add a user (team member) to the provider organisation.

MethodPOST
Path/users
BodyUser details
"Add a new team member — pharmacist@example.com"

Confirmation required. Granting access to your organisation is a sensitive action.

getProviderProfiles

Fetch user profiles in the organisation.

MethodGET
Path/profiles
"List all users in my organisation"
"Show team member profiles"

Provider Management (4 operations)

editProviderInfo

Update provider name, contact details, or settings.

MethodPUT
Path/edit
BodyUpdated fields
"Update my pharmacy name to 'HealthFirst Pharmacy Lagos'"
"Change my contact email"

Set the brand logo for the provider.

MethodPOST
Path/upload_logo
BodyLogo file
"Upload my pharmacy logo"

updatePaymentType

Switch the preferred payment method.

MethodPOST
Path/update-payment-type
"Switch my payment type to bank transfer"

setLowWalletThreshold

Configure the auto-alert threshold for low wallet balance.

MethodPOST
Path/set-low-balance-threshold
BodyThreshold amount
"Set my low balance alert to 50,000 naira"

Wallet & Transactions (4 operations)

getProviderWalletBalance

Check current wallet balance.

MethodGET
Path/wallet-balance
"What's my wallet balance?"
"Show available and pending balance"

getProviderTransactionHistory

Audit payment and debit history.

MethodGET
Path/transactions
Parameterslimit (query string)
"Show my last 20 transactions"
"Get transaction history for this month"

getAllProviderVirtualAccounts

View linked virtual account details.

MethodGET
Path/virtual-accounts
"Show my virtual accounts"
"List linked bank accounts"

toggleAutoDebit

Enable or disable automatic debits for provider orders.

MethodPOST
Path/toggle-auto-debit
"Turn on auto-debit"
"Disable automatic debits"

Agent safety rules

The Famasi provider agent follows these rules across all platforms:

  • Read vs Write — Read operations (GET) run freely. Write operations (POST/PUT) require confirmation.
  • Linked context — Uses provider identity from .famasi/provider-link.json.
  • No guessing — Uses the MCP server for API calls, never fabricates endpoint shapes.
  • Cites operations — References operationId when calling tools so you can verify.
  • Recommends doctor — Suggests npx @famasi/agents@latest doctor when config looks incomplete.