# MCP Server

Connect AnyProp to your AI assistant to find listings, compare markets, and explore property details. Ask questions in plain language using your existing AnyProp account. The connection can read listing data; it cannot change listings.

## Server URL

```text
https://mcp.anyprop.com/mcp
```

You need an AnyProp account with Listings API access. Your assistant can access the same MLS data available to your account.

## Get Connected

1. [Choose your client](#connect-your-client) below and add **AnyProp** using the full server URL, including `/mcp`.
2. Choose **OAuth** and sign in on the AnyProp page with your API username and password.
3. Enable AnyProp in your conversation and ask a question.

OAuth is the sign-in option recommended for most users. Your app keeps the connection signed in automatically and prompts you when you need to sign in again.

## Connect Your Client

Select your app for setup instructions.


### Claude

```text
https://mcp.anyprop.com/mcp
```

1. In Claude, go to **Account → Settings → Connectors → Add Connector**.
2. Name the connector **AnyProp** and paste the MCP URL above.
3. Choose **Sign in now**. Under **OAuth client**, choose **Register automatically**.
4. Complete the AnyProp sign-in, then enable the connector from the conversation's **+ → Connectors** menu.

On a managed team, an owner may need to add the connector before members can connect. See [Claude's custom connector instructions](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp).

**Claude Code**

Run this command in your project’s terminal:

```bash
claude mcp add --transport http anyprop https://mcp.anyprop.com/mcp
```

Then open Claude Code, run `/mcp`, select **anyprop**, and complete the sign-in in your browser. Return to Claude Code to start asking questions.

The command adds AnyProp for the current project. To make it available across your projects, add `--scope user` to the command. See [Claude Code's MCP guide](https://code.claude.com/docs/en/mcp).

### ChatGPT

```text
https://mcp.anyprop.com/mcp
```

1. In ChatGPT, go to **Account → Settings → Plugins → Browse Directory → Add → Create custom MCP Server**.
2. Name the connection **AnyProp**.
3. Paste the MCP URL above and select OAuth. Choose automatic setup if prompted.
4. Sign in to AnyProp when prompted and review the available tools.
5. Start a conversation and enable AnyProp from its tools menu.

Custom connections depend on your account and workspace policy. Follow [OpenAI's current connection instructions](https://developers.openai.com/plugins/deploy/connect-chatgpt) if your interface differs.

### Grok

```text
https://mcp.anyprop.com/mcp
```

1. Open **Plugins → New Connector → Custom**.
2. Paste the MCP URL above.

Sign in to AnyProp when prompted.

### Custom

```text
https://mcp.anyprop.com/mcp
```

For another app that supports MCP:

1. Add a remote MCP connection named **AnyProp**.
2. Paste the MCP URL above. If asked for a connection type, choose **Streamable HTTP**.
3. Choose **OAuth** and automatic setup, then sign in to AnyProp.
4. Enable the connection and try a question below.

**If your app asks for an access token**

Use your existing AnyProp API token with this command to create an MCP access token:

```bash
curl --fail-with-body https://mcp.anyprop.com/connect/token \
  -H 'Content-Type: application/json' \
  --data '{"api_token":"YOUR_ANYPROP_API_TOKEN"}'
```

Copy the returned `access_token` into your app's Bearer token setting. If the app instead asks for an Authorization header, enter:

```text
Bearer YOUR_MCP_ACCESS_TOKEN
```

This token lasts up to 24 hours. Run the command again when you need a new one. Keep it in your app's connection settings.



## Try a First Question

> Use AnyProp to find five active residential listings in Miami, Florida under $500,000. Show their asking prices, bedrooms, and bathrooms.

Choose a city covered by your account. You can then ask follow-up questions, adjust the price range, or request more listings.

## Compare Markets

Ask for counts, averages, medians, and comparisons across cities or property types:

- “What is the median asking price of active residential listings in Miami, Florida, and how many listings match?”
- “Compare average asking prices and listing counts by city in Broward County, Florida.”
- “Compare median asking prices for condos and single-family homes in Miami, Florida.”
- “What are the lowest and highest asking prices for active condos in Miami Beach, Florida?”

AnyProp calculates these statistics across matching listings, so your assistant can analyze a market without downloading every listing. Your assistant receives the instructions it needs to run these calculations automatically.

These examples compare asking prices. Available data depends on your account and the MLS source.

## Explore Listing Details

Ask about the details that matter to your search:

- “Find active residential listings with a water view in Miami Beach, Florida.”
- “What open-house information is available for these listings?”
- “Which listing details can I use to search for a home with a pool?”

Your assistant can look up available fields and their meanings as needed.

## Available Tools

Your app connects to three tools. Your assistant chooses which one to use based on your question.

| Tool | What it does |
| --- | --- |
| `listings_query` | Finds matching listings and calculates market statistics. |
| `listings_next_page` | Retrieves more listings from the same search. |
| `listings_fields` | Explains available listing details and how they can be searched or compared. |

For direct API integrations, see the [Listings API documentation](https://docs.anyprop.com/api-documentation/v1-listings-api/).

## Troubleshooting

| Issue | What to do |
| --- | --- |
| AnyProp connects but no tools appear | Check that the server URL is `https://mcp.anyprop.com/mcp`, including `/mcp`. |
| Sign-in fails | Follow the setup instructions for your app above. In Claude, choose **Register automatically**, then sign in with your AnyProp API username and password. |
| You cannot add a custom connection | Check whether your plan supports custom MCP connections. Your workspace administrator may need to enable them. |
| Your connection has expired | Sign in to AnyProp again. If you use an access token, create a new one using the **Custom** setup instructions above. |
| A requested detail is unavailable | Ask your assistant to check the available fields. Access can vary by your account and MLS source. |
| You cannot load more results | Ask your assistant to repeat the search. The previous search may have expired. |
| Your assistant still shows older tools | Refresh the AnyProp connection in your app's settings, then start a new conversation. |
