Morning (Green Invoice) MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MORNING_SANDBOX | No | Set for test keys (sandbox mode); check this option if using sandbox credentials | false |
| MORNING_API_KEY_ID | Yes | מזהה המפתח (key ID) from the Morning (Green Invoice) developer API keys page | |
| MORNING_API_KEY_SECRET | Yes | המפתח הסודי (secret key) shown once after creating the key |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| connection_statusC | Check local configuration. verifyMorning checks authentication and a read endpoint; it does not create records. |
| search_clientsC | Find existing Morning clients. |
| get_clientB | Read an existing Morning client. |
| search_documentsC | Find Morning documents. Open status alone does not prove unpaid debt. |
| get_documentC | Read a Morning document and download links. |
| document_optionsA | Read document types and business defaults. Use prepare_morning_action for full document fields. |
| search_expensesC | Read expenses or parsed expense drafts. Finalize parsed drafts in Morning. |
| save_document_draftA | Save an editable, unissued document draft directly in Morning. Does not issue, send email or create a client. Use createDocumentDraft schema for body and client.add=false. draftId updates an existing saved draft. Reuse requestKey only for identical content; check uncertain outcomes before another request. |
| search_document_draftsB | Find editable document drafts saved in Morning. |
| get_document_draftB | Read an editable document draft saved in Morning. This ID is different from a local approval request ID. |
| preview_document_draftA | Generate a local PDF from the current saved Morning draft. Does not issue or email it. Show this preview to the user. |
| prepare_issue_document_draftA | Prepare issuance of the exact current saved Morning draft, including its recipients and PDF. Returns a plain-language review and local request id/payloadHash for execute_draft after the user confirms in chat. Nothing issued yet. Changes in Morning require a fresh preparation. |
| prepare_documentA | Legacy shortcut: prepare a local ILS issuance request and PDF, without saving a draft in Morning. Prefer save_document_draft then prepare_issue_document_draft. No document is issued or emailed. Review it before execute_draft. Requests expire after 24 hours. |
| stage_expense_fileC | Stage a PDF/JPEG/PNG locally, not in Morning. Provide an absolute filePath or name plus base64; maximum 20 MB. |
| prepare_expense_uploadB | Prepare a staged file for review and chat confirmation. No upload yet. expenseId attaches to an existing expense; otherwise upload creates a parsed expense draft. |
| request_statusB | Read local draft status. Never retry executing or needs_check requests; check Morning first. |
| api_operationsB | Discover reviewed Morning operations: published API plus observed native draft endpoints. Reads run immediately; saved editable drafts have a dedicated immediate tool; other changes must be reviewed and confirmed in chat before the agent executes. |
| api_operation_schemaC | Get reviewed fields, source and review requirements. Read this before advanced requests. |
| read_morningC | Run a reviewed read/preview operation. No arbitrary URLs, tokens, headers or writes. |
| prepare_morning_actionA | Prepare a reviewed business write: clients, suppliers, items, expenses, documents, payments, charges, merges and deletions. No execution. Use the operation schema first; changes need a fresh requestKey. |
| execute_draftA | Execute the exact prepared action directly. First show its review and PDF to the user, ask for confirmation in chat, and wait for their explicit reply. If declined, do not call this tool. No custom dialog or typed code. Human consent is an agent instruction, not enforced by this server. Content/target changes, expiry and duplicate/uncertain requests remain blocked. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 21 tools
Overlap is significant: prepare_document, save_document_draft, prepare_issue_document_draft, prepare_morning_action, and prepare_expense_upload all involve preparing, saving, or executing actions/drafts. read_morning, api_operations, and api_operation_schema also blur read/meta boundaries. Descriptions attempt to clarify, but an agent can easily misselect between local draft preparation, Morning draft issuance, and generic reviewed operations.
All tool names use lower snake_case, so the surface is predictable. However, it mixes verb_noun action names such as search_clients, get_document, and save_document_draft with noun-only meta names such as document_options, connection_status, api_operations, and request_status.
At 21 tools, this is borderline heavy for the domain and reflects a layered draft/prepare/execute/generic-API workflow. Many tools earn their place, but the set feels over-fragmented and could likely be consolidated.
Core lifecycle is covered: document drafting, preview/issuance preparation, execution, expense staging/upload, client and document search/get, and reviewed generic writes. Some direct CRUD conveniences are missing, but generic write paths and schema discovery allow workarounds.