Bowman Prospects
FreeNot checkedClassifies Bowman Prospects baseball cards using image recognition, provides player statistics and market pricing data to determine card value.
About
Classifies Bowman Prospects baseball cards using image recognition, provides player statistics and market pricing data to determine card value.
README
This MCP Server gives the tools to classify Bowman Prospects Baseball cards (Chrome or Paper) to determine their current and future value. It allows Claude to access 3 tools to analyze baseball cards through image recognition (contrastive loss), player statistics, and market pricing data.
Available Tools
Card Classification — Identifies card details from images using a fine-tuned CLIP model (~12,000 training samples) combined with EasyOCR. Extracts rarity (Chrome, Blue, Atomic, etc.), player information, grading status, and other key attributes.
Player Statistics — Retrieves comprehensive career statistics across Major League and Minor League levels, including advanced metrics (WAR, DRS, OPS+, etc.) for evaluating player potential and production.
Pricing Data — Provides current market prices and sales volume for the specific card and grade.
Fine-tuned CLIP Model
The model is fine-tuned using ~12,000 labeled bowman prospects image scrapped and categorized from Ebay. The model can be downloaded from here
It currently holds a 90.84% accuracy rate in identifying the rarity of bowman prospects cards.
Data
Source
The Relevant Data is fetched from multiple websites:
- Card Pricing: https://www.sportscardspro.com/category/baseball-cards
- Player Statistics: https://www.baseball-reference.com/register/index.fcgi
- Player Global IDs: https://raw.githubusercontent.com/chadwickbureau/register/master/
- Baseball Card Images: https://www.ebay.ca/
Dataset
The library fetches the complete dataset for training from here: https://huggingface.co/datasets/hazelbestt/bowman_prospects_supervised_images
Parse
The raw HTML content is then parsed using DeepSeek API for reliability against page structure changes. You can see the relevant LLM Prompt here: prompt
Running the MCP
- Install Claude Desktop
- Clone the Repository
- Install Dependencies
pip install -r requirements.txt
- Fill in the env file
- Run via Make
make run-mcp
- Follow this Guide to connect the MCP to Claude Desktop
Training the Model
The MCP comes pre-built with a Model and the Dataset required to classify images with relative accuracy. But users can train on top of the current model.
Docker (CPU only)
make train-cpu
Using GPU
make train-mps
Configurable Flags for Training
- LR: Learning rate (default: 5e-6)
- EPOCHS: Number of epochs (default: 15)
- BATCH_SIZE: Batch size (default: 2)
- ACC_STEPS: Gradient accumulation steps (default: 4)
- CUSTOM: Use custom local dataset instead of HuggingFace dataset (0 or 1, default: 0)
- FETCH: Fetch dataset images before training (0 or 1, default: 0)
- RESET: Reset model weights to the base checkpoint before training (0 or 1, default: 0)
Example
make train-mps LR=1e-5 EPOCHS=5 BATCH_SIZE=4 ACC_STEPS=2 CUSTOM=1 FETCH=1 RESET=1
Custom Datasets
To train the model with a custom dataset, create a data_set directory in the root of the project. Then store images with directories as labels
e.g.
data_set/
└── chrome/
└── aqua/
└── non_auto/
├── 2018 Bowman Chrome Prospects Aqua Refractor _125 Adam Haseley _BCP94.jpg
├── 2018 Bowman Chrome Prospects Refractors Aqua Shimmer Adam Haseley Phillies _125.jpg
└── 2018 Bowman _BCP80 Matt Hall Chrome Prospects Aqua Refractor __125.jpg
The file name of the images do not matter.
Sample Workflow
Input
As an Example, we connect the MCP server to Claude and give the image paths to the following image. (Note: As of November 20, 2025, local MCP does not support attaching images directly to Claude Desktop.)
Output
Tool Responses
Below is the raw data returned to Claude by each tool.
Predict (Card Classification)
{
"player_profile": {
"name": "HYUN-IL CHOI",
"position": "PITCHER",
"team": "LOS ANGELES DODGERS",
"date_of_birth": "05-27-2000",
"location_of_birth": "SEOUL, SOUTH KOREA",
"resume": "No. 13 Dodgers prospect (Baseball America). Averaged 9.8 SOs/9 IP in 2019 Arizona League. Forged SO/BB ratio of 6.5-to-1. Led team in wins (tied), innings, and strikeouts.",
"skills": "Varies speeds and locations cunningly to keep hitters guessing. Loose arm action. Low-90s fastball. Late-breaking hook. Promising change-up. Confident athlete.",
"up_close": "Top contender to go No. 1 overall in the Korea Baseball Organization draft coming out of high school. Opted to sign with the Dodgers instead."
},
"card_info": {
"card_code": "BCP-130",
"graded": "Ungraded",
"serial_number": "Not Numbered",
"year": 2021,
"label": "bowman chrome atomic non_auto baseball card"
}
}
Prospect (Player Statistics)
{
"Major League Statistics": null,
"Minor League Statistics": {
"player_profile": {
"name": "Hyun-il Choi",
"position": "Pitcher",
"bats": "Right",
"throws": "Right",
"height": "6-2",
"weight": "215lb",
"birth_date": "May 27, 2000",
"latest_team": "WSN",
"status": "minors",
"draft_info": null
},
"season 2019": {
"current_league_level": "Rk",
"batting": null,
"pitching": {
"w": 5,
"l": 1,
"era": 2.63,
"so": 71,
"war": null,
"ip": 65.0,
"whip": 1.046,
"G": 14,
"GS": 11,
"bb": 11,
"GF": 0,
"CG": 0,
"SV": 0,
"SHO": 0,
"HBP": 8,
"FIP": null,
"SO9": 9.8,
"H9": 7.9,
"HR9": 0.8,
"WP": 2,
"SO/BB": 6.45
}
},
"season 2021": {
"current_league_level": "A/A+",
"batting": null,
"pitching": {
"w": 8,
"l": 6,
"era": 3.55,
"so": 106,
"war": null,
"ip": 106.1,
"whip": 0.969,
"G": 24,
"GS": 11,
"bb": 18,
"GF": 1,
"CG": 0,
"SV": 0,
"SHO": 0,
"HBP": 3,
"FIP": null,
"SO9": 9.0,
"H9": 7.2,
"HR9": 1.0,
"WP": 4,
"SO/BB": 5.89
}
},
"season 2022": {
"current_league_level": "A+/Rk",
"batting": null,
"pitching": {
"w": 0,
"l": 1,
"era": 4.5,
"so": 4,
"war": null,
"ip": 4.0,
"whip": 1.0,
"G": 2,
"GS": 1,
"bb": 0,
"GF": 0,
"CG": 0,
"SV": 0,
"SHO": 0,
"HBP": 0,
"FIP": null,
"SO9": 9.0,
"H9": 9.0,
"HR9": 0.0,
"WP": 0,
"SO/BB": null
}
},
"season 2023": {
"current_league_level": "A+",
"batting": null,
"pitching": {
"w": 4,
"l": 5,
"era": 3.75,
"so": 46,
"war": null,
"ip": 60.0,
"whip": 1.25,
"G": 16,
"GS": 13,
"bb": 12,
"GF": 0,
"CG": 0,
"SV": 0,
"SHO": 0,
"HBP": 5,
"FIP": null,
"SO9": 6.9,
"H9": 9.5,
"HR9": 0.9,
"WP": 2,
"SO/BB": 3.83
}
},
"season 2024": {
"current_league_level": "AA/AAA",
"batting": null,
"pitching": {
"w": 5,
"l": 11,
"era": 4.92,
"so": 102,
"war": null,
"ip": 115.1,
"whip": 1.335,
"G": 24,
"GS": 21,
"bb": 40,
"GF": 2,
"CG": 0,
"SV": 0,
"SHO": 0,
"HBP": 14,
"FIP": null,
"SO9": 8.0,
"H9": 8.9,
"HR9": 1.0,
"WP": 1,
"SO/BB": 2.55
}
},
"season 2025": {
"current_league_level": "AA/AAA",
"batting": null,
"pitching": {
"w": 7,
"l": 8,
"era": 4.87,
"so": 88,
"war": null,
"ip": 116.1,
"whip": 1.221,
"G": 30,
"GS": 20,
"bb": 34,
"GF": 1,
"CG": 0,
"SV": 0,
"SHO": 0,
"HBP": 13,
"FIP": null,
"SO9": 6.8,
"H9": 8.4,
"HR9": 1.8,
"WP": 3,
"SO/BB": 2.59
}
}
}
}
Baseball Card (Pricing Data)
{
"card_price": {
"ungraded": "$2.50",
"grade 1": null,
"grade 2": null,
"grade 3": null,
"grade 4": null,
"grade 5": null,
"grade 6": null,
"grade 7": null,
"grade 8": null,
"grade 9": null,
"grade 9.5": null,
"TAG 10": null,
"ACE 10": null,
"SGC 10": null,
"CGC 10": null,
"PSA 10": null,
"BGS 10": null,
"BGS 10 Black": null,
"CGC 10 Pristine": null
},
"card_volume": {
"ungraded sold listings": 5,
"grade 7 sold listings": 0,
"grade 8 sold listings": 0,
"grade 9 sold listings": 0,
"grade 10 sold listings": 0
}
}
Installing Bowman Prospects
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/kayoMichael/bowman-prospects-mcpFAQ
Is Bowman Prospects MCP free?
Yes, Bowman Prospects MCP is free — one-click install via Unyly at no cost.
Does Bowman Prospects need an API key?
No, Bowman Prospects runs without API keys or environment variables.
Is Bowman Prospects hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Bowman Prospects in Claude Desktop, Claude Code or Cursor?
Open Bowman Prospects on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Omni Video
An MCP server that transforms LLM-enabled IDEs into professional video editors by pre-processing footage into text proxies, generating motion graphics via HTML/
by buildwithtazaARA
Generate images, video and audio from any AI agent — one connector.
by ARAYouTube
Transcripts, channel stats, search
by YouTubeEverArt
AI image generation using various models.
by modelcontextprotocolCompare Bowman Prospects with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All media MCPs
