io.github.amadeuserras/leaseclear-mcp
MCP server for LeaseClear lease Q&A.
What can you do with io.github.amadeuserras/leaseclear-mcp?
lease_qa— ask one question about lease terms; returns an answer grounded in the lease, or states that the lease is silent
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
leaseclear-mcpclaude mcp add leaseclear-mcp -e 'LEASECLEAR_API_KEY=<your leaseclear_api_key>' -e 'LEASECLEAR_API_URL=<LEASECLEAR_API_URL>' -- uvx leaseclear-mcp==0.1.3
{
"mcpServers": {
"leaseclear-mcp": {
"command": "uvx",
"args": [
"leaseclear-mcp==0.1.3"
],
"env": {
"LEASECLEAR_API_KEY": "<your leaseclear_api_key>",
"LEASECLEAR_API_URL": "<LEASECLEAR_API_URL>"
}
}
}
}
Environment variables
LEASECLEAR_API_KEYsecret Your LeaseClear API key. Omit for demo mode.LEASECLEAR_API_URLOverride the LeaseClear API URL.
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Contents
leaseclear-mcp
A Model Context Protocol server that exposes LeaseClear lease Q&A.
Listed in the official MCP Registry as io.github.amadeuserras/leaseclear-mcp.
Tools
lease_qa— ask one question about lease terms; returns an answer grounded in the lease, or states that the lease is silent
Usage
Add this to your MCP client config (e.g. claude_desktop_config.json or Cursor mcp.json):
{
"mcpServers": {
"lease-qa": {
"command": "uvx",
"args": ["leaseclear-mcp"]
}
}
}
The package is on PyPI. uvx fetches and runs it as a local subprocess, communicating over stdio. uv required.
Optional environment variables
| Variable | Description | Default |
|---|---|---|
LEASECLEAR_API_KEY | Use the server with your own LeaseClear account | LeaseClear demo mode |
LEASECLEAR_API_URL | Override the API endpoint (local or private instances) | LeaseClear production backend |
{
"mcpServers": {
"lease-qa": {
"command": "uvx",
"args": ["leaseclear-mcp"],
"env": {
"LEASECLEAR_API_KEY": "lc_...",
"LEASECLEAR_API_URL": "https://..."
}
}
}
}
lease_qa usage
Argument
question(string, required) — one question about the lease
_meta
document_ids(string[], optional) — UUIDs of the documents to query. Omitted means all.
Security: The _meta field is used to pass metadata to the tool call that the model doesn't see. Having document_ids there is intentional: it prevents cross-document prompt injection because the model is never able to choose which documents it has access to. See a real-world example in LeaseOps: prompt injection and the tenants table.
MCP Python SDK example
Tool call:
result = await session.call_tool(
name="lease_qa",
arguments={
"question": "How much is the security deposit for Yuna Kim?"
},
meta={
"document_ids": [
"a1b2c3d4-e5f..."
]
}
)
Output:
{
"answer": "The security deposit is $6,400.00. This deposit is held in Owner's Broker's trust account [california-johnson-kim §4]."
}
Tech stack
- Python 3.12
- Model Context Protocol Python SDK (
mcp[cli]) over stdio httpxfor LeaseClear API calls- Pydantic and
pydantic-settingsfor schemas and config uvanduv_buildfor running and packaging- pytest, Ruff, and Pyright for tests, linting, and type checking
Project structure
leaseclear-mcp/
├── src/leaseclear_mcp/
│ ├── server.py # MCP server + lease_qa
│ ├── leaseclear.py # LeaseClear HTTP client
│ ├── schemas.py
│ └── config.py
├── tests/
├── pyproject.toml
├── .env.example
└── README.md
Local Development
git clone https://github.com/you/leaseclear-mcp.git
cd leaseclear-mcp
uv sync
cp .env.example .env
uv run pytest
uv run ruff check .
uv run pyright
Debugging
Use the MCP Inspector to test the server interactively:
npx @modelcontextprotocol/inspector uvx leaseclear-mcp
From a checkout, use uv run leaseclear-mcp instead of uvx leaseclear-mcp.
License
MIT
Frequently asked questions
What is io.github.amadeuserras/leaseclear-mcp?
MCP server for LeaseClear lease Q&A.
How do I install io.github.amadeuserras/leaseclear-mcp?
It runs on your machine. In Claude Code: claude mcp add leaseclear-mcp -e 'LEASECLEAR_API_KEY=<your leaseclear_api_key>' -e 'LEASECLEAR_API_URL=<LEASECLEAR_API_URL>' -- uvx leaseclear-mcp==0.1.3. For other clients, paste the JSON configuration from this page into their MCP settings.
Does io.github.amadeuserras/leaseclear-mcp need an API key?
Yes. It expects LEASECLEAR_API_KEY, which you set in its configuration.
Is io.github.amadeuserras/leaseclear-mcp open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains io.github.amadeuserras/leaseclear-mcp?
It is published by amadeuserras. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.