A self-hosted Model Context Protocol server over Qloo's taste graph. Seven tools, three reference resources, two prompts — all sharing one validated client, so an agent resolves IDs first and never invents a recommendation.
Two real calls: free text becomes Qloo entity IDs, then those IDs seed a ranked recommendation. Verdicts are relative rank thirds; Qloo also returns a 0–1 affinity for every hit.
Entity and tag search are first-class tools, because Qloo's recommender takes IDs — never free text.
Every tool returns hits, warnings, cache and latency_ms. Raw Qloo payloads never leak.
Qloo silently ignores invalid parameters. Zero results trigger an explanation instead of a confident lie.
Contributing anchors arrive with 0–1 scores, so a rank can be justified in plain language.
| Tool | What it does |
|---|---|
qloo_search_entities | Name → Qloo entity IDs, with type, location and radius filters. |
qloo_search_tags | Concept → Qloo tag IDs. Tag names are not tag IDs. |
qloo_recommend | Ranked recommendations from seeded IDs, with optional tags and explainability. |
qloo_compare_tastes | Two profiles, one entity type: where tastes converge and diverge. |
qloo_trending | Popularity trend for an entity type over a date window. |
qloo_build_taste_profile | Free-text tastes → anchors and tags ready to seed anything else. |
qloo_explain | Why a candidate ranked where it did, citing contributor scores. |
Streamable HTTP, stateless. Point any MCP client at the endpoint below.
{
"mcpServers": {
"taste-engine": {
"type": "http",
"url": "http://qloo-mcp.globie.earth/mcp"
}
}
}
The same operations are mirrored over REST for the Reddit app and this page: /api/profile, /api/recommend, /api/compare, /api/trending, /api/explain.