Present Picker MCP
A read-only MCP server that provides gift recommendations from a fixed bank of 255 hand-checked, no-brand ideas. It allows AI assistants to pick gifts based on a person's interests and budget, search for ideas by keyword, and retrieve detailed information about specific gift items without collecting user data or facilitating purchases.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://mcp.thepresentpicker.com/mcpWhat its tools do
3 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (3)
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to thepresentpicker.com ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Pick up to 5 gift ideas for a specific person based on their interests and budget
- Search for up to 10 gift ideas based on a specific interest or keyword
- Get detailed information about a specific gift idea including care tips and buying notes
Source and maintenance
- Maintenance checked
Protocol and capabilities
- Server
- the-present-picker 1.0.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 3 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
3 advertised
pick_gift — Pick a gift
Returns up to 5 gift ideas from a fixed bank of 255 checked gift ideas, matched to who the gift is for, a budget band, interests, and an optional gift style. Each pick has a one-line description, a why-line explaining the fit, one buying note, its budget band, a link that opens that exact idea on thepresentpicker.com, and a photo link to the picture on that idea's page. Some picks carry a good_to_know line: a plain handling fact the bank states for that idea, such as the weight of a cast iron skillet, present only where the bank states one. The result also carries lead_pick — the top pick at full bank depth, with its buying notes (what to look for and what to avoid) and a care-and-pairing tip — more_ideas with the remaining picks under the heading 'More ideas if that one misses', and answer_text, that focused answer formatted as text: it opens by naming who the gift is for, in the caller's words, and how the top pick fits them. Recipient and budget band are hard filters. A style, when given, is a hard filter too: every pick carries the style, and the result reports total_matches and, on a style call, style_matches. Interests narrow the pool, and picks matching more interests rank first. keyword names a specific item the buyer asked for: picks matching every keyword word rank first inside the same filtered pool, carry their full bank detail, and the result reports keyword_matches (a miss is stated in the note, and a miss carries no lead_pick). exclude names an item the person already has: matching picks are dropped before ranking, and the result notes the drop. A recipient-only call (no budget, interest, style, or keyword) returns a spread across all budget bands, led by a mid-band pick and never by the $100+ band — a starting sampler, not a tailored list. A 'teen' recipient maps to the kid pool and carries a recipient_note explaining how teen picks are drawn from that pool. A 'coworker' recipient draws on the bank's coworker shelf — picks tagged for coworkers, ranked ahead of the general pool — and when a mix returns none of them, recipient_note says so plainly. A relation the bank has no shelf for (a sister, an aunt, an in-law, a cousin) is filed under the closest shelf, and recipient_note states the filing plainly. Ideas are generic product types: the bank names no brands, no stores, and no exact prices. When fewer than 5 ideas fit the exact mix, the result says so.
{
"type": "object",
"required": [
"recipient"
],
"properties": {
"style": {
"type": "string",
"description": "Optional gift style: 'practical', 'fun', 'sentimental', or 'experience'. When given, every pick carries this style."
},
"budget": {
"type": "string",
"description": "Optional budget band: 'under $25', '$25-$50', '$50-$100', or '$100+'. Omit to search every band."
},
"exclude": {
"type": "string",
"description": "Optional: an item the user says the person already has, in plain words, e.g. 'cast iron skillet'. Picks matching it are dropped and the drop is disclosed in the note."
},
"keyword": {
"type": "string",
"description": "Optional: the specific item the buyer named, in plain words, e.g. 'plant pot', 'bookmark', 'board game', 'star map'. When the bank holds that item for this recipient and budget, it ranks first."
},
"interests": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional: what they are into. Bank interests: cooking, outdoors, tech, books, fitness, cozy, music, games, gardening, travel, science."
},
"recipient": {
"type": "string",
"description": "Who the gift is for: 'mom', 'dad', 'partner', 'grandparent', 'friend', 'kid', 'coworker', or 'other'. Plain words work too, e.g. 'my wife', 'grandma', 'my son', 'my colleague'. 'teen' and 'teenager' map to 'kid' and carry a note explaining how teen picks are drawn from the kid pool. Relations the bank has no shelf for, like 'my sister' or 'my aunt', are filed under the closest shelf and the result notes the filing."
}
}
}{
"title": "Pick a gift",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_gifts — Search gift ideas
Picked for them, not the store: searches the fixed bank of 255 gift ideas by interest, by keyword, or by both, with optional recipient and budget-band filters. Returns up to 10 matches in bank order, each with a one-line description, a why-line, one buying note, its budget band, a photo link, and a link that opens that exact idea on thepresentpicker.com. The result reports the total number of matches, including when there are none.
{
"type": "object",
"required": [],
"properties": {
"limit": {
"type": "number",
"description": "Optional: max results to return, 1 to 10. Default 10."
},
"budget": {
"type": "string",
"description": "Optional filter: 'under $25', '$25-$50', '$50-$100', or '$100+'."
},
"keyword": {
"type": "string",
"description": "Optional: plain words to match against gift names and descriptions, e.g. 'coffee', 'science kit', 'board game'. Every word must match, so a named item finds its exact bank entry."
},
"interest": {
"type": "string",
"description": "Optional: one bank interest: cooking, outdoors, tech, books, fitness, cozy, music, games, gardening, travel, science."
},
"recipient": {
"type": "string",
"description": "Optional filter: 'mom', 'dad', 'partner', 'grandparent', 'friend', 'kid', 'coworker', or 'other'."
}
}
}{
"title": "Search gift ideas",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_gift — Get gift details
Picked for them, not the store: returns the full detail for one gift idea from the bank: description, why-line, a buying-notes line (what to look for and what to avoid when buying it), a care-and-pairing tip, budget band, who it suits, its interests and styles, and up to 3 similar ideas, each with its own link. Accepts a gift id returned by pick_gift or search_gifts, or a gift name like 'cast iron skillet'. When nothing matches, the result says so and gives example ids.
{
"type": "object",
"required": [
"gift_id"
],
"properties": {
"gift_id": {
"type": "string",
"description": "Gift id from pick_gift or search_gifts (e.g. 'cast-iron-skillet-10-inch-pre-seasoned'), or a gift name."
}
}
}{
"title": "Get gift details",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-07: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 280 ms
- 95th percentile latency
- 280 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 280 ms · metadata changed · 3 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http present-picker-mcp https://mcp.thepresentpicker.com/mcpCodex
codex mcp add present-picker-mcp --url https://mcp.thepresentpicker.com/mcpCursor
{
"mcpServers": {
"present-picker-mcp": {
"url": "https://mcp.thepresentpicker.com/mcp"
}
}
}Cline
{
"mcpServers": {
"present-picker-mcp": {
"type": "streamableHttp",
"url": "https://mcp.thepresentpicker.com/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"present-picker-mcp": {
"type": "http",
"url": "https://mcp.thepresentpicker.com/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http present-picker-mcp https://mcp.thepresentpicker.com/mcpClaude Desktop
https://mcp.thepresentpicker.com/mcpWindsurf
{
"mcpServers": {
"present-picker-mcp": {
"serverUrl": "https://mcp.thepresentpicker.com/mcp"
}
}
}Let your agent find its tools
Find servers like Present Picker MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other productivity and knowledge servers
Do you run Present Picker MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.