> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nextlevelmca.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP server

> What the NextLevel MCA MCP server is, the tools it exposes and the prompts it is good at.

The MCP server lets an AI assistant work in your location the way a team member would: look up a business, explain which lenders fit a deal, submit it, chase documents, log an offer. It speaks the [Model Context Protocol](https://modelcontextprotocol.io) over Streamable HTTP and is protected by OAuth, so each connection acts as a signed-in user with the scopes that user approved.

|            |                                                                                                  |
| ---------- | ------------------------------------------------------------------------------------------------ |
| Server URL | `https://api.nextlevelmca.com/mcp`                                                               |
| Transport  | Streamable HTTP (stateless; each request is independent)                                         |
| Auth       | OAuth 2.1 with PKCE and dynamic client registration. API keys are not accepted here.             |
| Discovery  | `https://api.nextlevelmca.com/.well-known/oauth-protected-resource`                              |
| Works with | Claude (web, desktop, Code), ChatGPT, and any MCP client that supports remote servers with OAuth |

Every tool calls the same service code as the REST API with the same request context, so the MCP server can never do anything the API cannot. Tenant isolation, role-based field masking and stage rules apply unchanged.

## Tools

Tools are task-shaped: reads bundle what an assistant needs to answer in one call; writes are explicit and narrow. Each tool requires the scope listed; a connection without it still sees the tool, and calling it returns a plain error explaining which scope to approve. Tools that send something (`submit_deal`, `request_documents`, `send_merchant_portal`) say so in their descriptions, so assistants confirm with you first.

### Read tools

| Tool                          | What it returns                                                                                                                                                                                                                       | Scope                                                               |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
| `search`                      | Businesses, people and deals matching a query, grouped, with ids and one-line summaries. Types the connection cannot read are skipped and listed in `skipped`.                                                                        | `businesses:read`, `people:read` or `deals:read`, per type searched |
| `get_deal`                    | The deal with its stage, the linked business record, people (PII masked by role, SSN never returned), offers (primary flagged), submissions with lender responses, documents (first 50) and the last 10 activity entries, in one call | `deals:read`                                                        |
| `get_business`                | The business with people, deals summary, advances and renewal outlook                                                                                                                                                                 | `businesses:read`                                                   |
| `get_person`                  | A person by id, phone or email, with their businesses and deals. The inbound-call tool: one match fills `person`, several fill `matches` so the assistant can ask which.                                                              | `people:read`                                                       |
| `list_deals`                  | Deal summaries filtered by `phase`, `stage_id`, `status`, `originator_id`, `business_id`, `paper_grade`, `stale_days` or `search`, with cursor paging                                                                                 | `deals:read`                                                        |
| `get_statement_analysis`      | Parsed bank statement metrics, coverage, positions and trend                                                                                                                                                                          | `documents:read`                                                    |
| `get_recommended_lenders`     | Lender matches with scores and per-check pass, fail or skip explanations; `view` defaults to `recommended` (`eligible` and `all` available)                                                                                           | `lenders:read`                                                      |
| `get_offers`                  | Offers on a deal, primary flagged, with computed payback                                                                                                                                                                              | `offers:read`                                                       |
| `list_renewal_ready_advances` | Advances at or over the renewal threshold with paid-in percentage                                                                                                                                                                     | `advances:read`                                                     |
| `get_pipeline`                | Stages, phases, event bindings and per-stage counts                                                                                                                                                                                   | `deals:read`                                                        |

### Write tools

| Tool                   | What it does                                                                                                                     | Scope                                         |
| ---------------------- | -------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| `create_deal`          | Creates a deal for an existing business or an inline one, with duplicate detection                                               | `deals:write`                                 |
| `update_deal`          | Merge-patches deal fields and `form_data`                                                                                        | `deals:write`                                 |
| `move_deal_stage`      | Moves a deal to a stage or fires `mark_funded` / `mark_dead`, under the same rules as dragging on the board                      | `deals:write`                                 |
| `submit_deal`          | Records one submission per lender and queues the emails (`send: false` only records them). Sends email.                          | `submissions:write`                           |
| `log_offer`            | Logs a lender offer with its terms                                                                                               | `offers:write`                                |
| `set_primary_offer`    | Marks an offer primary; the deal status follows and event bindings may move the stage (`meta.deal_stage_id`, `meta.deal_status`) | `offers:write`                                |
| `request_documents`    | Sends a document request to the merchant by email, SMS or link                                                                   | `documents:write`                             |
| `send_merchant_portal` | Issues a merchant portal link and optionally sends it                                                                            | `portal:send`                                 |
| `add_note`             | Adds a note at business or deal level                                                                                            | `businesses:write` or `deals:write`, by level |
| `create_task`          | Creates a task at business or deal level                                                                                         | `businesses:write` or `deals:write`, by level |

The server's `instructions` describe the object model (businesses → people → deals → submissions → offers → advances) and flag which tools have side effects, so assistants orient without trial calls.

## Example prompts

Once connected, prompts like these work as-is:

* "Show me deals stuck in Missing docs for more than 5 days and draft follow-ups for each."
* "Which lenders should I send deal ACME Plumbing to, and why?"
* "Send the merchant portal link to the owner of ACME Plumbing."
* "Someone is calling from +1 212 555 0123. Who is it and where is their deal?"
* "Summarise the bank statements on the Rivera deal: revenue trend, NSFs, open positions."
* "Which advances are renewal-ready this week? List the merchant, lender and paid-in percentage."
* "Log an offer from Northwind on deal 3c9d… : \$70,000 at 1.32 over 9 months, daily payments."
* "What is in the pipeline right now, by stage?"

Write prompts (submit, send, log) run only when the connection was approved with the matching write scope. See [OAuth and security](/mcp/oauth-and-security).

## Connect

<CardGroup cols={2}>
  <Card title="Connect from Claude" icon="comment" href="/mcp/connect-from-claude">
    Add the server as a custom connector.
  </Card>

  <Card title="Connect from ChatGPT" icon="comment-dots" href="/mcp/connect-from-chatgpt">
    Add it through developer mode connectors.
  </Card>
</CardGroup>


## Related topics

- [OAuth and security](/mcp/oauth-and-security.md)
- [Authentication](/getting-started/authentication.md)
- [Connect from ChatGPT](/mcp/connect-from-chatgpt.md)
