Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the Moss in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
Summary
Moss spend management (Germany and Europe): expenses from cards, invoices and reimbursements with line items and receipts, wallet balances and bank transactions, suppliers, expense accounts, VAT rates and cost centres. Creates suppliers and dimension items; it cannot pay or approve anything.
Try asking
Example prompts for Moss
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Moss, paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
Moss + ChatGPT
Moss spend management (Germany and Europe): expenses from cards, invoices and reimbursements with line items and receipts, wallet balances and bank transactions, suppliers, expense accounts, VAT rates and cost centres. Creates suppliers and dimension items; it cannot pay or approve anything.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
MOSS_KEY_ID, MOSS_SECRET_KEY
Step 1 — Get credentials
Setting up takes about 5 minutes. You need a Moss admin, and the Moss mobile app to confirm the new key.
- Sign in to Moss as an admin and open Settings, Company Settings, API Keys (also shown as Settings, Platform, API Keys).
- Click Generate API Key and confirm in the Moss mobile app.
- Copy the Key ID (starts with
kid_) intoMOSS_KEY_IDand the Secret Key (starts withsk_) intoMOSS_SECRET_KEY. The secret is shown once; generate a new key if it is lost. - Install the connector and run
moss_list_expenses: it returns your latest expenses and confirms the key.
The connector exchanges the key for a one-hour token at Moss's /oauth2/token (client credentials) and renews it by itself. It asks for the write scope, which includes read, because the create and update tools need it. If the AI should only read, switch those tools off.
What it reads: expenses (card transactions, invoices and reimbursements) with their line items, net, VAT and gross amounts, expense account and VAT rate per line, status, export status and supplier; the files attached to expenses (receipts, invoice PDFs), listed with moss_search_files and handed over as an attachment by moss_download_file; the Moss bank accounts (wallets) with funding type, currency and status, the balance and available balance of each, and bank transactions for a booking date range (card purchases and refunds, payouts, withdrawals, top-ups, repayments, with booking and value date, counterparty and fees); suppliers with bank details, VAT id, payment term and default booking; expense accounts with account numbers; VAT rates; payment terms with their due date and discount rules; accounting dimensions such as cost centres, cost carriers and projects with their items; users with team, manager and roles; teams and departments.
Filters: expenses filter by type (CARD_TRANSACTION, INVOICE, REIMBURSEMENT), status (for example SUBMITTED, APPROVED, FLAGGED, REJECTED, REVIEWED, VERIFIED, COMPLETED), export status (NOT_EXPORTED, READY_FOR_EXPORT, EXPORT_PENDING, EXPORTED, EXPORT_FAILED), creation date, expense date or last update, and sort by status, creation time, home amount or expense time. Bank transactions always need a booking date range. Files of line items are only listed when the line ids are passed as well.
What it writes: moss_create_supplier, moss_create_dimension, moss_update_dimension, moss_create_dimension_item (for example a new cost centre) and moss_update_dimension_item change master data used for booking. They are on at install; the AI shows you what it will create or change and waits for your yes, and it passes external_user_id (the person who asked) so Moss can trace the change. Suppliers and dimension items can be set ACTIVE or DEACTIVATED; deleting is not offered. A dimension item update always needs name and status, so the AI sends the current values for what should stay. Creating more than the default dimensions needs the Moss Multiple Dimensions module.
Switched off at install: moss_update_supplier, because it can replace the IBAN that Moss pays the supplier's invoices to. An administrator turns it on deliberately, and the AI then shows the old and new values before calling it.
Amounts and dates: amounts are objects with a decimal string amount and a currency; homeAmount is in the company's home currency. Dates are YYYY-MM-DD, timestamps ISO 8601 in UTC. Ids are UUIDs.
Limits: lists return up to 100 items per page (default 50); the AI calls the next page while meta.pagination.hasMore is true. Id filters take up to 100 ids. Moss allows 180 reads and 20 writes per minute per organisation.
Common errors: 401 means the key was revoked or the token could not be issued: check MOSS_KEY_ID and MOSS_SECRET_KEY. 402 means a Moss module is not booked, for example Multiple Dimensions. 403 means the token lacks the scope. 409 means the record is managed by an active accounting integration. 422 means a referenced id (expense account, VAT rate, payment term, team) does not exist or is inactive. 429 means the rate limit is used up: wait for Retry-After.
The connector cannot pay, approve, export or delete anything, and it does not create expenses or upload receipts: the Moss Public API offers no such call.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in ChatGPT
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
ChatGPT adds MCP servers as plugins on its Plugins page, on the web and on paid plans. Developer mode is no longer needed. In a Business workspace only admins and owners can add one; in Enterprise and Edu an admin can grant the Create plugins with MCPs permission.
- Go to chatgpt.com/plugins, click Add, then Add custom MCP server.
- Enter a name, e.g. Name:
Moss. - Under Connection, enter the Server URL
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_IDand keep Authentication on OAuth. - Select I understand and want to continue, then Create as a plugin. When ChatGPT asks, sign in to AnythingMCP and allow access.
- Install the new plugin from your personal plugins, then type @ in a chat and pick it.
Available tools
| Tool | What it does |
|---|---|
moss_list_expenses | List expenses (card transactions, invoices and reimbursements) with their line items, amounts in original and home currency, status, export… |
moss_search_files | List the files (receipts, invoice PDFs) attached directly to the given expenses: id, name, original name, size and upload time |
moss_download_file | Download one file attached to an expense (receipt or invoice, usually a PDF or image) by its id from moss_search_files |
moss_list_expense_accounts | List expense accounts (the accounting sub-categories booked on expense lines): id, name, account number and status |
moss_get_expense_account | Get one expense account by id: name, account number and status |
moss_list_dimensions | List the accounting dimensions of the organisation (e.g. cost centre, cost carrier, project; at most 50): id, name, ERP name and id, status |
moss_get_dimension | Get one accounting dimension by id: name, ERP name, ERP id and status |
moss_list_dimension_items | List the items (values) of one dimension, e.g. the cost centres: id, name, code and status |
moss_get_dimension_item | Get one dimension item (e.g. a cost centre) by id: name, code and status |
moss_list_suppliers | List suppliers: id, name, supplier number (code), status, currency, VAT id, bank details, default payment method, payment term and default… |
moss_get_supplier | Get one supplier by id (e.g. the supplierId of an expense) with bank details, VAT id and defaults |
moss_list_payment_terms | List payment terms: id, number, description, status and the due date rules (days, discounts) |
moss_get_payment_term | Get one payment term by id, e.g. the paymentTermId of a supplier |
moss_list_tax_rates | List VAT rates: id, name, code, rate and status |
moss_get_tax_rate | Get one VAT rate by id (taxRateId of an expense line): name, code, rate and status |
moss_list_users | List the users of the organisation: id, name, e-mail, team, manager, roles and status. createdBy of an expense is a user id |
moss_get_user | Get one user by id: name, e-mail, team, manager, roles and status |
moss_list_teams | List teams: id, name, department and status |
moss_get_team | Get one team by id (teamId of a user or default team of a supplier): name, department and status |
moss_list_departments | List the departments of the organisation: id and name |
moss_get_department | Get one department by id (the department of a team) with its name |
moss_list_bank_accounts | List the Moss bank accounts (wallets) of the organisation: id, funding type (CREDIT or DEBIT), currency and status (ACTIVE or CLOSED) |
moss_get_bank_account_balance | Get the current balance of one Moss bank account: balance (ledger) and availableBalance (what can still be spent, lower when transactions… |
moss_search_bank_transactions | Search the money movements of Moss wallets by booking date: card purchases and refunds, payouts, withdrawals, top-ups and repayments, with… |
moss_create_supplier | Create a supplier in Moss with name, supplier number, currency, VAT id, bank details, default payment method, payment term and default… |
moss_update_supplier | Change fields of an existing supplier; only the fields you send change |
moss_create_dimension | Create an accounting dimension (e.g |
moss_update_dimension | Rename a dimension in Moss and set its name in the accounting system |
moss_create_dimension_item | Add an item to a dimension, e.g. a new cost centre or project with its name and code |
moss_update_dimension_item | Rename a dimension item, change its code, or activate or deactivate it |
Example prompts
- "List the card transactions of last month that are still NOT_EXPORTED, with amount, supplier and expense account."
- "What is the available balance of each of our Moss wallets right now?"
- "Show me the receipt attached to the Moss expense of 249.90 EUR from 14 October."
- "Sum our invoices of the third quarter by supplier and VAT rate."
- "Create the cost centre 4300 Marketing Events in our cost centre dimension. Show me what you will create first."
FAQ
Does the free ChatGPT plan work with custom MCP servers? OpenAI documents custom MCP servers for paid plans only; the Free plan is not on its list.
Next steps
- Connector landing page
- Connect to Claude
- Connect to Cursor
- Connect to Gemini
- Connect to Meta Muse
- Connect to Microsoft Copilot
Was this guide helpful?