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

# Tools Reference

> Every tool the Prophia MCP server exposes, by category

Once connected, your assistant can call these tools. Your Prophia permissions apply to every call — a tool appears in the list even if a given user lacks the capability to use it, in which case the call is denied with a message naming what's missing.

The **Requires** column names the [capability](https://docs.prophia.com/api-reference/v2/concepts/errors-and-permissions.md#the-capabilities-model) each tool checks, the same model the REST API uses. Building-level permissions apply underneath, filtering which rows come back.

## Portfolio navigation

| Tool | What it does | Requires |
| - | - | - |
| `list_accounts` | List the Prophia accounts you can access | Account read |
| `get_account` | Details of one account | Account read |
| `list_properties_for_account` | Properties in an account | Property read |
| `get_property` | Details of one property | Property read |
| `list_buildings_for_account` | Buildings across the account | Building read |
| `list_buildings_for_property` | Buildings in one property | Building read |
| `get_building` | Details of one building | Building read |
| `get_stacking_plan_for_property` | Floor-by-floor stacking plan data | Property, building space, and lease read |
| `recent_changed_leases` | Leases whose documents changed in a date range | Lease read |

## Leases

| Tool | What it does | Requires |
| - | - | - |
| `get_lease` | Details of one lease | Lease read — plus document read with `include=documents`, tag read with `include=tags` |
| `list_leases_for_property` | Leases across a property | Lease read |
| `list_leases_for_building` | Leases in a building | Lease read |
| `get_lease_doc_list` | Documents attached to a lease | Document read |
| `get_tags_by_lease` | Extracted terms (tags) for a lease | Lease and tag read |
| `get_raw_tags_by_lease` | A lease's tags built from their stored rows, without consolidation — see [consolidated vs. raw](#consolidated-vs-raw-tag-reads) | Lease and tag read |

## Documents & search

| Tool | What it does | Requires |
| - | - | - |
| `get_doc_pages` | Page inventory of a document | Document read |
| `get_doc_status_list` | The document statuses an account uses (`incomplete`, `complete`, and any custom statuses), for filtering `get_lease_doc_list` | Document read |
| `get_doc_page_text` | OCR text of a page | Document read |
| `get_doc_page_image` | Page image | Document read |
| `smart_search` | Full-text search scoped to account, property, lease, or document | Document read |
| `search_text_bounding_boxes` | Locate exact text positions on a page | Document read |
| `get_tags_by_lease_doc` | Tags extracted from one document | Lease and tag read |
| `get_raw_tags_by_lease_doc` | One document's tags built from their stored rows, without consolidation | Lease and tag read |

## Tags & custom terms

| Tool | What it does | Requires |
| - | - | - |
| `get_doc_tag` | One tag with its citation | Tag read |
| `get_raw_doc_tag` | One tag built from its stored row, without consolidation | Tag read |
| `list_tag_definitions` | The term library for the account | Tag read |
| `list_custom_terms` | List the account's custom terms | Custom term read |
| `get_custom_term` | Details of one custom term | Custom term read |
| `create_custom_term` | Define a new custom term | Custom term **write** |
| `update_custom_term` | Change a custom term | Custom term **write** |
| `delete_custom_term` | Remove a custom term | Custom term **write** |

### Consolidated vs. raw tag reads

`get_doc_tag`, `get_tags_by_lease`, and `get_tags_by_lease_doc` return each tag as part of the lease's **consolidated** view, the same one the Prophia app shows. Consolidation combines terms across a lease's documents: amendments override the values they amend, rent schedules are merged, and an option's child terms are nested under it. Prophia rebuilds this view in the background about 10 minutes after the most recent tag change on a lease, so for that window these tools can still return a tag's previous value.

The `get_raw_*` tools take the same arguments and return the same shape, but build each tag from its stored row alone. A tag change shows up in them immediately. They apply nothing that consolidation derives across documents, and an option's child terms come back as separate tags rather than nested under it. Rent periods stored by lease term ("months 1–12") keep `startMonth` and `endMonth` with no `startDate` or `endDate`; only consolidation resolves them to dates from the commencement date.

Use the consolidated tools for a lease's effective terms. Use the raw tools when you need a tag exactly as it was just created or edited.

## Building spaces

| Tool | What it does | Requires |
| - | - | - |
| `list_building_spaces` | Spaces (suites/floors) in a building | Building space read |
| `get_building_space` | Details of one space | Building space read |

## Portfolio analytics & reporting

| Tool | What it does | Requires |
| - | - | - |
| `portfolio_analytics_get_workspace_info` | The account's analytics workspace | Portfolio report read |
| `portfolio_analytics_list_workspace_metrics` | Available metrics | Portfolio report read |
| `portfolio_analytics_list_workspace_attributes` | Available attributes (dimensions) | Portfolio report read |
| `portfolio_analytics_compute_label_elements` | Values of an attribute | Portfolio report read |
| `portfolio_analytics_execute_query` | Run an analytics query | Portfolio report read |
| `portfolio_analytics_fetch_execution_data` | Fetch query results | Portfolio report read |
| `portfolio_analytics_ai_search` | Natural-language analytics search | Portfolio report read |
| `save_portfolio_report` | Save a filtered portfolio report | Portfolio report **write** |

## Built-in guides

The server publishes its own documentation as MCP **resources** — `guide://` documents covering navigation patterns, search strategies, analytics querying, and per-tool result schemas. Assistants consult them automatically, and they need no capability.

| Tool | What it does | Requires |
| - | - | - |
| `list_guides` | List the guides available to the caller | — |
| `read_guides` | Read one or more guides by uri | — |

The [MCP overview](https://docs.prophia.com/developers/mcp/overview.md#built-in-guides) lists what each guide covers.

## The only writes

Everything above is read-only except the four tools marked **write**: the three `*_custom_term` tools and `save_portfolio_report`. Tag, lease, document, building space, and note writes are not exposed to customer connections at all — see [what your assistant can't do](https://docs.prophia.com/developers/mcp/overview.md#what-it-cannot-do).

## Example prompts

* *"Show me the stacking plan for Bayside Corporate Center"*
* *"Which leases expire in the next 18 months, by building?"*
* *"Search all Initech documents for the assignment clause and quote it"*
* *"What's my occupied square footage by property?"*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.