# MoonClerk MCP

> MoonClerk connects your AI agent to manage all recurring revenue and billing data. Track every transaction, check customer profiles, view payment forms, and list active subscriptions—all without clicking through a dashboard. This server lets you get real-time financial status updates for subscription businesses directly from natural conversation.

## Overview
- **Category:** finance-accounting
- **Price:** Free
- **Tags:** recurring-payments, transaction-tracking, subscription-management, payment-forms, customer-billing, financial-reporting

## Description

MoonClerk connects your AI agent to manage all recurring revenue and billing data without you ever having to click through a dashboard page. You'll get real-time financial status updates for subscription businesses just by talking to your agent. This server lets you check everything—from historical payments to active customer profiles and setup forms—using natural conversation.

**Managing Payments History**

You can pull up every single transaction that’s ever happened in your account. Using **`list_payments`**, your AI client gathers a paginated list of all payments, showing you the core details for each one: the exact amount charged, what currency it was in, and its current payment status. If you need to drill down into just one record, **`get_payment`** pulls all the necessary data for a single transaction using only its unique ID.

**Handling Customers and Profiles**

Need to check on a client? You can start by asking your agent to run **`list_customers`**, which spits out an initial list of every customer you've managed in MoonClerk. If you know the specific person, running **`get_customer`** fetches their full profile details instantly using only their unique ID. This means you get everything about them—contact info, account status, and more—without leaving the chat window.

**Tracking Subscriptions and Plans**

This is where you keep track of recurring revenue. You can run **`list_subscriptions`** to see a comprehensive list of every subscription that's active or inactive in your system right now. To check on one specific client, **`get_subscription`** pulls the active status and entire history for that single subscription record, letting you confirm its next billing date at a glance. You also need to know what plans you offer. Running **`list_plans`** shows every available payment plan configured in your billing system. If you gotta verify the pricing structure or terms for one specific tier, **`get_plan`** retrieves all the detailed information about that single billing plan.

**Inspecting Payment Forms and Setup**

You can check how your setup is looking too. To get a full overview of what forms you've built out, running **`list_forms`** gives you a complete list and summary of every payment form in the system. If you gotta inspect the details of one specific form—maybe to see its current status or usage count—you use **`get_form`**, which retrieves all that detailed metadata about a single payment form.

## Tools

### get_customer
Fetches the full profile details for a single customer using their unique ID.

### get_form
Retrieves detailed metadata about one payment form, including its status and usage count.

### get_payment
Gets all the necessary details for a single payment transaction using its ID.

### get_plan
Retrieves specific information about one billing plan, including pricing and terms.

### get_subscription
Pulls the active status and history for a single subscription record.

### list_customers
Returns an initial list of all customers managed in your MoonClerk account.

### list_forms
Provides a full list and summary of every payment form you have created.

### list_payments
Gathers a paginated list of all historical payments, showing core transaction data.

### list_plans
Lists every available payment plan configured in your billing system.

### list_subscriptions
Shows a comprehensive list of all active and inactive subscriptions.

## Prompt Examples

**Prompt:** 
```
List my last 5 payments received on MoonClerk.
```

**Response:** 
```
I've retrieved your recent payments. You have 5 recent transactions: three for $50.00 (Status: Succeeded) and two for $25.00. Would you like details on the customer for the most recent one?
```

**Prompt:** 
```
What recurring payment plans do I have configured?
```

**Response:** 
```
Retrieving your plans... You have 3 recurring plans: 'Monthly Membership' ($29/mo), 'Annual Pro' ($290/yr), and 'Starter Kit' (One-time). Shall I list the active subscribers for the Monthly Membership?
```

**Prompt:** 
```
Show me the details for the payment form with ID form_123.
```

**Response:** 
```
Inspecting form_123... This form is titled 'Donation Page', it is currently 'active', and has been used for 45 successful transactions. Would you like the checkout URL for this form?
```

## Capabilities

### List all payments
Gets a list of every transaction, including the amount, currency, and current payment status.

### Get specific customer data
Retrieves full details on one customer profile using their unique ID.

### List active subscriptions
Shows a list of all current, running subscription plans and their associated metrics.

### Check payment plan configuration
Lists available billing plans so you can confirm pricing tiers (e.g., monthly vs. annual).

### Verify a customer's subscription status
Retrieves the specific details for one recurring subscription, confirming its active state and next billing date.

## Use Cases

### A customer calls asking about an overcharged renewal.
The agent needs to check the billing history. They ask their AI client to run `list_payments` and filter by date range. The agent then uses `get_payment` on a specific ID to show the customer the exact charge, plan name, and successful payment status. Problem solved in three steps.

### The finance team needs a quarterly report of all active services.
Instead of manually logging into MoonClerk's dashboard and exporting multiple lists, the analyst asks their agent to run `list_subscriptions`. They then process this list, calling `get_plan` for key subscriptions to confirm the billing cycle (monthly/annual) before compiling the final report.

### You suspect a payment form is broken or outdated.
The product manager asks their agent to run `list_forms`. They spot an old ID and use `get_form` immediately. The tool returns the current status and usage count, allowing them to confirm if they need to update it before linking it in marketing materials.

### Verifying a new user's initial billing setup.
Support needs to check a brand-new account. They use `list_customers` to find the ID, then run `get_customer`. Next, they call `get_plan` using the retrieved plan ID to verify that the correct starter pricing was applied and confirm the payment method is valid.

## Benefits

- Stop context switching for billing data. You can list all payments and get the full transaction history—status, amount, currency—in one AI call using `list_payments` and `get_payment`.
- Instantly verify subscriber status without navigating dashboards. Use `get_subscription` to confirm if a paid plan is active or when it expires; this saves time during live support calls.
- Deep dive into billing setup. If you need to check pricing rules, use `list_plans` and then drill down with `get_plan`. This confirms the exact terms for any customer’s rate.
- Streamline onboarding tasks. Run `list_customers` first, then pass a specific ID to `get_customer` to pull up all contact details and billing history in sequence.
- Centralize form management. Instead of viewing payment forms across multiple tabs, use `list_forms` to see them all, and `get_form` to inspect the metadata for any given checkout link.

## How It Works

The bottom line is: your AI client speaks directly to MoonClerk's backend via defined functions, giving you instant financial oversight.

1. Subscribe to this server on Vinkius and enter your MoonClerk API Key.
2. Your AI client (Claude, Cursor, etc.) sends a natural language request to the MCP Server.
3. The agent executes specific tools—like calling `list_customers` followed by `get_subscription` for filtering—and returns structured billing data.

## Frequently Asked Questions

**How do I list all payments using MoonClerk MCP Server?**
Run the `list_payments` tool. This returns a paginated list of every transaction you have processed through MoonClerk, showing amounts and statuses.

**What is the difference between `get_customer` and `list_customers`?**
`list_customers` gives you an initial summary list of all customers. You must then use `get_customer` with a specific ID to retrieve the full, detailed record for that single person.

**Can I check plan details using MoonClerk MCP Server?**
Yes. Use `list_plans` to see all available plans. To get specifics on one plan, run `get_plan`, passing the exact plan ID you are interested in.

**How do I check if a subscription is active?**
Call the `get_subscription` tool. This returns the current status of the subscription and key dates, letting you know if it's active, pending, or canceled.

**What authentication details are required before I can use the `get_customer` tool?**
You must provide your MoonClerk API key when connecting this server. This key authorizes your AI client to access your billing data; without it, no tools will run.

**If I call `get_payment`, do I need a specific payment ID, or can I use the customer's email?**
The `get_payment` tool requires the unique payment ID for accurate data retrieval. You cannot look up payments using only an email address or customer name.

**When I run `list_forms`, what metrics can I gather about each listed payment form?**
The list provides key operational details, including the form's current status (active/inactive) and how many successful transactions it has processed.

**What specific billing cycle information does the `get_plan` tool provide about a subscription plan?**
The tool returns detailed structure data, including the recurring cost, frequency (monthly, yearly), and whether the plan is set up as one-time or continuous.

**Is the MoonClerk API read-only?**
Yes, as per their official documentation, the MoonClerk API currently only supports retrieving information. Creating or modifying records must be done via their dashboard or forms.

**Can I see details about recurring plans?**
Yes! Use the `list_plans` tool to see all your payment plans and `get_plan` for detailed information about a specific one.

**How do I find a specific subscription's status?**
The `list_subscriptions` and `get_subscription` tools allow you to check the current state and recurrence details for any active customer subscription.