AltFinance MCP Server
Connect Claude to luxury asset auction data. Query watches, jewelry, loose gemstones, handbags, cars, motorcycles, aircraft, wine and whisky, fine art, works of art, design, fashion, shoes, automobilia, and books from 100+ global auction houses directly in Claude.
Quick Start
1. Install
pip install altfinance-mcp
2. Get an API Key
Sign up at altfndata.com to get your API key.
3. Configure Claude Desktop
Add to your Claude Desktop config file:
Windows: %APPDATA%\Claude\claude_desktop_config.json
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"altfinance": {
"command": "altfinance-mcp",
"env": {
"ALTFINANCE_API_KEY": "your-api-key-here"
}
}
}
}
Restart Claude Desktop after adding the configuration.
3b. Or Configure Claude Code
claude mcp add altfinance -- altfinance-mcp
Set the env var before launching:
export ALTFINANCE_API_KEY="your-api-key-here"
What You Can Ask Claude
Once configured, ask Claude questions like:
- "What tables are available in the AltFinance database?"
- "Show me the schema for the watches table"
- "Find the top 10 most expensive Rolex watches sold after 2020"
- "How many Hermes handbags were sold by Christie's?"
- "Give me market stats for Patek Philippe watches sold at Phillips"
- "How have Hermes Birkin prices moved over the last five years?"
- "Price-check a Rolex Daytona 116500 white dial"
- "Search the whole market for a Burma ruby ring over $50k"
- "What loose sapphires have sold at auction?" (uses
gems, notjewelry)
Available Tools
All 9 tools are read-only and annotated with readOnlyHint: true. No data is modified by any tool.
| Tool | Description |
|---|---|
list_tables |
Lists the 20 available tables with live descriptions and column counts |
get_table_schema |
Shows column names and types for one table |
query_table |
Queries a table with filters, sorting, field selection, and pagination |
market_stats |
Realized-price summary for a table or filtered segment: count of sales, median, 25th/75th percentiles, average, min/max, sale-date span, and top vendors by volume |
price_trend |
How realized prices moved over time, bucketed by year, quarter, or month (count, median, average per period) |
price_check |
Fair-value range for a single item from comparable sales, with source links. Live comp categories: handbags, watches, cars |
search |
Whole-market keyword search across every category at once, merged by realized price. With no category it fans out across all 20 tables |
market_index |
Precomputed model-level price index (low / 25th / median / 75th / high, sample size, trend) for a brand or model. Covered categories: handbags, watches, cars |
list_alerts |
Read-only view of price alerts, or guidance on enabling them. See "Price alerts are read-only" below |
Every tool carries readOnlyHint and openWorldHint.
Price alerts are read-only
Price alerts belong to a signed-in AltFinance account (Cognito login), not to an API key. The MCP authenticates with an API key only, so it cannot create or enable alerts, and the alerts feed itself is not reachable for an API-key caller. list_alerts therefore either reports fired alerts (when a session makes the feed reachable) or returns guidance on setting alerts up in the app at app.altfndata.com. Alert allowance by plan: free 0, registered 1, collector 10, pro 100, included with Membership.
Feature and plan suggestions
Some tool responses may append a single short "💡" line suggesting a complementary AltFinance product or a plan upgrade. This happens at most once per response, only at a genuine tier boundary (a table your plan does not include, or an exhausted row quota) or as a relevant feature tip, and never for unlimited or comp accounts. It never changes the data returned.
Query Capabilities
- Filter by any column using operators:
eq,neq,gt,gte,lt,lte,like,in,not_in,is_null,is_not_null - Sort by any column, ascending or descending
- Select specific fields to return
- Paginate with limit/offset (max 500 rows per request)
Data Coverage
The database spans 20 tables. Call list_tables for the live set with current column counts.
| Table | Description |
|---|---|
watches |
Luxury watch auction results |
handbags |
Luxury handbag auction results |
jewelry |
Finished jewelry, mounted pieces (rings, necklaces, bracelets, earrings) set with gemstones |
gems |
Loose, unmounted gemstones (single stones and parcels). Use this for gemstone valuations, not jewelry |
automobile |
Collector car auction results |
motorcycle |
Collector motorcycle auction results |
aircraft |
Aircraft auction results |
wine_whisky |
Wine and whisky auction results |
works_of_art |
Works of art with stone/jewelry relevance (jade, jadeite, diamond-set, etc.) |
fine_art |
Fine art auction results across all movements and periods |
design |
Design and decorative arts: furniture, lighting, glass, ceramics, studio/industrial design |
fashion |
Fashion and couture: clothing and accessories (not handbags or shoes, which have their own tables) |
shoes |
Footwear: designer shoes and collectible sneakers |
automobilia |
Automotive memorabilia, parts, signage, models and related collectibles (not the cars themselves) |
books |
Books, manuscripts, maps and printed material |
coins |
Numismatic coin auction results |
other_automobile |
Other vehicles: boats, tractors, trucks, buses and military vehicles (not cars or motorcycles) |
perfume |
Perfume and collectible fragrance bottles and flacons |
accessories |
Fashion accessories: belts, scarves, cufflinks, brooches and sunglasses, including gem-set pieces |
musical_instruments |
Musical instruments: guitars, violin family, pianos and keyboards, woodwind, brass, percussion and amplifiers |
gems vs jewelry: gems holds LOOSE, unmounted stones (the right table for a gemstone valuation); jewelry holds FINISHED, mounted pieces set with stones. If one returns nothing, try the other.
Data sources include Christie's, Sotheby's, Phillips, Bonhams, Artcurial, Dorotheum, Heritage Auctions, and 100+ other auction houses worldwide.
Remote Connector (Claude.ai)
AltFinance is also available as a built-in connector in Claude. When connecting through Claude.ai, you'll be prompted to enter your AltFinance API key via a secure OAuth flow — no local installation needed.
Self-Hosting the Remote Server
To run the MCP server in remote (HTTP) mode:
export ALTFINANCE_TRANSPORT=streamable-http
export ALTFINANCE_ISSUER_URL=https://mcp.altfndata.com
export ALTFINANCE_RESOURCE_URL=https://mcp.altfndata.com
python -m altfinance_mcp
Or with Docker:
docker build -t altfinance-mcp .
docker run -p 8000:8000 \
-e ALTFINANCE_TRANSPORT=streamable-http \
-e ALTFINANCE_ISSUER_URL=https://mcp.altfndata.com \
-e ALTFINANCE_RESOURCE_URL=https://mcp.altfndata.com \
altfinance-mcp
The remote server exposes:
POST/GET/DELETE /mcp— MCP Streamable HTTP endpoint (authenticated)GET /.well-known/oauth-authorization-server— OAuth metadataPOST /register— Dynamic Client RegistrationGET /authorize— OAuth authorizationPOST /token— Token exchangeGET/POST /login— API key entry form
Environment Variables
Local (stdio) mode
| Variable | Required | Default | Description |
|---|---|---|---|
ALTFINANCE_API_KEY |
Yes | — | Your AltFinance API key |
ALTFINANCE_API_URL |
No | https://api.altfndata.com |
API base URL |
Remote (HTTP) mode
| Variable | Required | Default | Description |
|---|---|---|---|
ALTFINANCE_TRANSPORT |
Yes | stdio |
Set to streamable-http |
ALTFINANCE_API_URL |
No | https://api.altfndata.com |
API base URL |
ALTFINANCE_HOST |
No | 0.0.0.0 |
HTTP listen address |
ALTFINANCE_PORT |
No | 8000 |
HTTP listen port |
ALTFINANCE_ISSUER_URL |
No | http://localhost:8000 |
OAuth issuer URL (your public URL) |
ALTFINANCE_RESOURCE_URL |
No | Same as issuer | OAuth resource server URL |
Privacy Policy
This MCP server connects to the AltFinance API (api.altfndata.com) to retrieve auction data. The following outlines our data practices:
- Data collection: The server sends your API key and query parameters (table names, filters, sort options) to the AltFinance API. No personal user data is collected beyond what is required for API authentication and query execution.
- Usage and storage: Query data is processed in real-time and returned to the MCP client. The server does not persist, cache, or store any query results or user data locally.
- Third-party sharing: Data is exchanged only between the MCP client and the AltFinance API (
api.altfndata.com). No data is shared with any other third parties. - Data retention: The server is stateless. No user data or query history is retained after a session ends.
- Contact: For privacy inquiries, contact support@altfndata.com.
Full privacy policy: https://altfndata.com/privacy-policy/
Support
- Documentation: https://altfndata.com/docs
- Email: support@altfndata.com
- GitHub Issues: https://github.com/altfinance/altfinance-mcp/issues
Requirements
- Python 3.10+
- An AltFinance API key
License
MIT
Metadata
Release files for altfinance-mcp 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| altfinance_mcp-0.4.1.tar.gz | 45.8 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| altfinance_mcp-0.4.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 80.1 kB
Release files / altfinance_mcp-0.4.1.tar.gz
| Download URL | altfinance_mcp-0.4.1.tar.gz |
|---|---|
| Size | 45.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7b786be2b3ff837d59d77c971bd34083b77622acf9efb18abcbc0a2c9dc28c0b
|
|
BLAKE2b-256 checksum How to use checksums |
684463a8d44eea1a2062b2c713a05653ec54040133fb23416cfe948a9cc56d64
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Release files / altfinance_mcp-0.4.1-py3-none-any.whl
| Download URL | altfinance_mcp-0.4.1-py3-none-any.whl |
|---|---|
| Size | 34.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
28dcf1b59b46833742bef1a541a259212e00af6d2cf5dce10586e085314bc405
|
|
BLAKE2b-256 checksum How to use checksums |
d913f80e63dcd900bdf036107997fdd1c13a4512dd18a9732bbdfbf71024b535
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.3
|
Security for altfinance-mcp 0.4.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.