This is the UnClick gateway server, not a standalone Spotify integration. It gives you access to 450+ endpoints across 178+ tools through a single MCP connection, including Spotify controls buried in that catalog. You get memory operations (load_memory, save_fact, search_memory), todo and idea management through their Fishbowl system, and dynamic tool discovery via unclick_search and unclick_call. Instead of installing separate servers for each service, you point at their API with a key from unclick.world and your agent can reach whatever's in their continuously updated catalog. Think of it as an app store proxy rather than a dedicated music server.
Public tool metadata for what this MCP can expose to an agent.
unclick_searchSearch the UnClick tool marketplace by keyword or description. Use this to discover which tools are available for a task. Example: 'I need to resize an image' → returns the image tool with its endpoints.2 paramsSearch the UnClick tool marketplace by keyword or description. Use this to discover which tools are available for a task. Example: 'I need to resize an image' → returns the image tool with its endpoints.
querystringcategorystringtext · data · media · time · network · generationunclick_browseBrowse all available UnClick tools, optionally filtered by category. Returns a list of tools with their slugs and descriptions.1 paramsBrowse all available UnClick tools, optionally filtered by category. Returns a list of tools with their slugs and descriptions.
categorystringtext · data · media · time · network · generationunclick_tool_infoGet detailed information about a specific UnClick tool including all its endpoints, required parameters, and response shapes. Use this after unclick_search to understand exactly how to call a tool.1 paramsGet detailed information about a specific UnClick tool including all its endpoints, required parameters, and response shapes. Use this after unclick_search to understand exactly how to call a tool.
slugstringunclick_callCall any UnClick tool endpoint. Specify the endpoint ID and parameters. Use unclick_search or unclick_tool_info to discover endpoint IDs and required params. Example: endpoint_id='image.resize', params={image: '<base64>', width: 800, height: 600}2 paramsCall any UnClick tool endpoint. Specify the endpoint ID and parameters. Use unclick_search or unclick_tool_info to discover endpoint IDs and required params. Example: endpoint_id='image.resize', params={image: '<base64>', width: 800, height: 600}
paramsobjectendpoint_idstringunclick_shorten_urlShorten a URL using UnClick. Returns a short URL and its code.1 paramsShorten a URL using UnClick. Returns a short URL and its code.
urlstringunclick_generate_qrGenerate a QR code from text or a URL. Returns base64-encoded PNG or SVG.3 paramsGenerate a QR code from text or a URL. Returns base64-encoded PNG or SVG.
sizenumbertextstringformatstringpng · svgdefault: pngunclick_hashCompute a cryptographic hash (MD5, SHA1, SHA256, SHA512) of text.2 paramsCompute a cryptographic hash (MD5, SHA1, SHA256, SHA512) of text.
textstringalgorithmstringmd5 · sha1 · sha256 · sha512default: sha256unclick_transform_textTransform text case: upper, lower, title, sentence, camelCase, snake_case, kebab-case, PascalCase.2 paramsTransform text case: upper, lower, title, sentence, camelCase, snake_case, kebab-case, PascalCase.
tostringupper · lower · title · sentence · camel · snaketextstringunclick_validate_emailValidate an email address format.1 paramsValidate an email address format.
emailstringunclick_validate_urlValidate a URL format, optionally check if it's reachable.2 paramsValidate a URL format, optionally check if it's reachable.
urlstringcheck_reachablebooleanunclick_resize_imageResize an image (provided as base64) to specified dimensions.4 paramsResize an image (provided as base64) to specified dimensions.
fitstringcover · contain · fill · inside · outsidedefault: coverimagestringwidthnumberheightnumberunclick_parse_csvParse a CSV string into a JSON array of rows.3 paramsParse a CSV string into a JSON array of rows.
csvstringheaderbooleandelimiterstringunclick_json_formatFormat / pretty-print a JSON string.2 paramsFormat / pretty-print a JSON string.
jsonstringindentvalueunclick_encodeEncode or decode text. Supports base64, URL, HTML, and hex.2 paramsEncode or decode text. Supports base64, URL, HTML, and hex.
textstringoperationstringencode_base64 · decode_base64 · encode_url · decode_url · encode_html · decode_htmlunclick_generate_uuidGenerate one or more random UUIDs (v4).1 paramsGenerate one or more random UUIDs (v4).
countnumberunclick_random_passwordGenerate a secure random password.5 paramsGenerate a secure random password.
lengthnumbernumbersbooleansymbolsbooleanlowercasebooleanuppercasebooleanunclick_cron_parseConvert a cron expression to a human-readable description and get next occurrences.2 paramsConvert a cron expression to a human-readable description and get next occurrences.
expressionstringnext_countnumberunclick_ip_parseParse an IP address — get decimal, binary, hex, and type (private/loopback/multicast).1 paramsParse an IP address — get decimal, binary, hex, and type (private/loopback/multicast).
ipstringunclick_color_convertConvert a color between hex, RGB, HSL, and HSV formats.1 paramsConvert a color between hex, RGB, HSL, and HSV formats.
colorvalueunclick_regex_testTest a regex pattern against text and get all matches with groups.3 paramsTest a regex pattern against text and get all matches with groups.
flagsstringinputstringpatternstringunclick_timestamp_convertConvert a timestamp (ISO, Unix seconds, or Unix ms) to all common formats.1 paramsConvert a timestamp (ISO, Unix seconds, or Unix ms) to all common formats.
timestampvalueunclick_diff_textCompare two strings and return a unified diff showing what changed.2 paramsCompare two strings and return a unified diff showing what changed.
astringbstringunclick_kv_setStore a value in the UnClick key-value store with optional TTL.3 paramsStore a value in the UnClick key-value store with optional TTL.
keystringttlnumbervaluevalueunclick_kv_getRetrieve a value from the UnClick key-value store.1 paramsRetrieve a value from the UnClick key-value store.
keystringreport_bugReport a bug or unexpected behavior encountered while using an UnClick tool. Call this whenever a tool returns an error, behaves unexpectedly, or fails silently. Severity is auto-classified from the error message: 500/fatal → critical, timeout/503 → high, 4xx/invalid → low, ev...5 paramsReport a bug or unexpected behavior encountered while using an UnClick tool. Call this whenever a tool returns an error, behaves unexpectedly, or fails silently. Severity is auto-classified from the error message: 500/fatal → critical, timeout/503 → high, 4xx/invalid → low, ev...
tool_namestringagent_contextstringerror_messagestringrequest_payloadobjectexpected_behaviorstringrawg_search_gamesSearch for video games on RAWG.6 paramsSearch for video games on RAWG.
genresstringsearchstringapi_keystringorderingstringpage_sizenumberplatformsstringrawg_get_gameGet details for a specific game by RAWG ID or slug.2 paramsGet details for a specific game by RAWG ID or slug.
idstringapi_keystringrawg_game_screenshotsGet screenshots for a RAWG game.2 paramsGet screenshots for a RAWG game.
idstringapi_keystringrawg_list_genresList all game genres on RAWG.1 paramsList all game genres on RAWG.
api_keystringrawg_list_platformsList all gaming platforms on RAWG.1 paramsList all gaming platforms on RAWG.
api_keystringrawg_upcoming_gamesGet upcoming game releases from RAWG.2 paramsGet upcoming game releases from RAWG.
api_keystringpage_sizenumberriot_summonerGet a League of Legends summoner by name.3 paramsGet a League of Legends summoner by name.
regionstringapi_keystringsummonerNamestringriot_rankedGet ranked stats for a League of Legends summoner.3 paramsGet ranked stats for a League of Legends summoner.
regionstringapi_keystringsummonerIdstringriot_match_historyGet match history for a LoL/Riot account by PUUID.4 paramsGet match history for a LoL/Riot account by PUUID.
countnumberpuuidstringregionstringapi_keystringriot_get_matchGet details for a specific Riot match by match ID.3 paramsGet details for a specific Riot match by match ID.
regionstringapi_keystringmatchIdstringriot_valorant_accountGet a Valorant account by game name and tag line.3 paramsGet a Valorant account by game name and tag line.
api_keystringtagLinestringgameNamestringbungie_search_playerSearch for a Destiny 2 player by display name.3 paramsSearch for a Destiny 2 player by display name.
api_keystringdisplayNamestringmembershipTypenumberbungie_get_profileGet a Destiny 2 player profile.3 paramsGet a Destiny 2 player profile.
api_keystringmembershipIdstringmembershipTypenumberbungie_get_manifestGet the Destiny 2 manifest definition.1 paramsGet the Destiny 2 manifest definition.
api_keystringbungie_search_entitiesSearch Destiny 2 manifest entities.3 paramsSearch Destiny 2 manifest entities.
api_keystringentityTypestringsearchTermstringcoc_playerGet a Clash of Clans player by tag.2 paramsGet a Clash of Clans player by tag.
api_keystringplayerTagstringcoc_clanGet a Clash of Clans clan by tag.2 paramsGet a Clash of Clans clan by tag.
api_keystringclanTagstringcoc_clan_membersGet members of a Clash of Clans clan.2 paramsGet members of a Clash of Clans clan.
api_keystringclanTagstringcr_playerGet a Clash Royale player by tag.2 paramsGet a Clash Royale player by tag.
api_keystringplayerTagstringcr_top_playersGet top Clash Royale players globally or by location.2 paramsGet top Clash Royale players globally or by location.
api_keystringlocationIdstringbs_playerGet a Brawl Stars player by tag.2 paramsGet a Brawl Stars player by tag.
api_keystringplayerTagstringbs_clubGet a Brawl Stars club by tag.2 paramsGet a Brawl Stars club by tag.
api_keystringclubTagstringlego_search_setsSearch LEGO sets by name/theme (Rebrickable).6 paramsSearch LEGO sets by name/theme (Rebrickable).
searchstringapi_keystringmax_yearnumbermin_yearnumbertheme_idnumberpage_sizenumberlego_get_setGet details for a specific LEGO set by set number.2 paramsGet details for a specific LEGO set by set number.
api_keystringset_numstringlego_set_partsGet the parts list for a LEGO set.2 paramsGet the parts list for a LEGO set.
api_keystringset_numstringlego_search_partsSearch LEGO parts by name.2 paramsSearch LEGO parts by name.
searchstringapi_keystringlego_themesList all LEGO themes from Rebrickable.1 paramsList all LEGO themes from Rebrickable.
api_keystringbrickset_searchSearch LEGO sets via Brickset API.5 paramsSearch LEGO sets via Brickset API.
yearstringquerystringthemestringapi_keystringpageSizenumberbrickset_get_setGet a specific LEGO set from Brickset by set number.2 paramsGet a specific LEGO set from Brickset by set number.
api_keystringsetNumberstringuntappd_search_beerSearch for beers on Untappd.3 paramsSearch for beers on Untappd.
limitnumberquerystringapi_keystringuntappd_get_beerGet details for a specific beer on Untappd.2 paramsGet details for a specific beer on Untappd.
bidnumberapi_keystringuntappd_get_breweryGet details for a brewery on Untappd.2 paramsGet details for a brewery on Untappd.
api_keystringbrewery_idnumberuntappd_search_brewerySearch for breweries on Untappd.2 paramsSearch for breweries on Untappd.
querystringapi_keystringuntappd_beer_activitiesGet recent activity/check-ins for a beer on Untappd.3 paramsGet recent activity/check-ins for a beer on Untappd.
bidnumberlimitnumberapi_keystringesports_matchesGet esports matches from PandaScore.5 paramsGet esports matches from PandaScore.
gamestringpagenumberstatusstringapi_keystringper_pagenumberesports_tournamentsGet esports tournaments from PandaScore.3 paramsGet esports tournaments from PandaScore.
gamestringstatusstringapi_keystringesports_teamsSearch esports teams on PandaScore.3 paramsSearch esports teams on PandaScore.
gamestringsearchstringapi_keystringesports_playersSearch esports players on PandaScore.2 paramsSearch esports players on PandaScore.
searchstringapi_keystringesports_get_matchGet details for a specific esports match by ID.2 paramsGet details for a specific esports match by ID.
api_keystringmatch_idnumberamber_sitesGet Amber Electric sites for the authenticated user.1 paramsGet Amber Electric sites for the authenticated user.
api_keystringamber_current_priceGet the current electricity price for an Amber site.2 paramsGet the current electricity price for an Amber site.
api_keystringsite_idstringamber_forecastGet electricity price forecast for an Amber site.2 paramsGet electricity price forecast for an Amber site.
api_keystringsite_idstringwillyweather_forecastGet weather forecast from WillyWeather for an Australian location.3 paramsGet weather forecast from WillyWeather for an Australian location.
daysnumberapi_keystringlocation_idnumberwillyweather_surfGet surf report from WillyWeather.3 paramsGet surf report from WillyWeather.
daysnumberapi_keystringlocation_idnumberwillyweather_tideGet tide times from WillyWeather.3 paramsGet tide times from WillyWeather.
daysnumberapi_keystringlocation_idnumberdomain_search_listingsSearch Australian property listings on Domain.10 paramsSearch Australian property listings on Domain.
statestringsuburbstringapi_keystringmaxPricenumberminPricenumberpageSizenumberpostcodestringlistingTypestringmaxBedroomsnumberminBedroomsnumberdomain_get_propertyGet details for a specific Domain property listing.2 paramsGet details for a specific Domain property listing.
api_keystringlisting_idnumberdomain_suburb_statsGet property market statistics for an Australian suburb.5 paramsGet property market statistics for an Australian suburb.
statestringsuburbstringapi_keystringpostcodestringpropertyCategorystringtrove_searchSearch the National Library of Australia's Trove.4 paramsSearch the National Library of Australia's Trove.
nnumberzonestringquerystringapi_keystringtrove_get_workGet a specific Trove work by ID.2 paramsGet a specific Trove work by ID.
idstringapi_keystringtrove_newspaper_articleGet a specific Trove newspaper article by ID.2 paramsGet a specific Trove newspaper article by ID.
idstringapi_keystringauspost_track_parcelTrack an Australia Post parcel by tracking number.2 paramsTrack an Australia Post parcel by tracking number.
api_keystringtracking_idstringauspost_get_postcodeLook up an Australian postcode or suburb.2 paramsLook up an Australian postcode or suburb.
qstringapi_keystringauspost_delivery_timesGet Australia Post estimated delivery times.4 paramsGet Australia Post estimated delivery times.
api_keystringto_postcodestringservice_codestringfrom_postcodestringsendle_get_quoteGet a shipping quote from Sendle.9 paramsGet a shipping quote from Sendle.
api_keystringweight_unitsstringweight_valuenumberpickup_suburbstringpickup_countrystringdelivery_suburbstringpickup_postcodestringdelivery_countrystringdelivery_postcodestringThe app store for AI agents. unclick.world
450+ callable endpoints across 178+ tools, available to any MCP-compatible AI client. New tools ship to the API continuously. Your agent picks them up automatically; no package update is needed.
Using the latest GitHub release (no npm account required):
{
"mcpServers": {
"unclick": {
"command": "npx",
"args": ["-y", "https://github.com/malamutemayhem/unclick/releases/latest/download/unclick.tgz"]
}
}
}
Add this to your claude_desktop_config.json (or equivalent for Cursor, Windsurf, etc).
Or install globally from GitHub:
npm install -g https://github.com/malamutemayhem/unclick/releases/latest/download/unclick.tgz
This repo follows the AGENTS.md fence rules for agent work.
For local web development:
npm run dev
For the API workspace:
npm run dev:api
Run the main test suite:
npm test
Run the production build check:
npm run build
UnClick uses a split license. The platform (website, API, and hosted backend
and memory services) is AGPL-3.0 (see LICENSE). The npm client
package @unclick/mcp-server stays MIT, and the standalone connector
packages stay Apache-2.0. Full breakdown and reasoning in
LICENSING.md.
Gives your agent access to a growing catalog of tools across developer utilities, social media, e-commerce, finance, messaging, media, security, and more. You don't need to install separate packages for each integration. One server provides access to everything in the catalog.
UnClick exposes a small direct surface for daily agent workflows, plus hidden internal discovery tools for the full catalog.
| Tool group | Tools |
|---|---|
| Memory session protocol | load_memory, save_fact, search_memory, save_identity, save_session |
| Signals and Boardroom coordination | check_signals, read_messages, post_message, create_todo, list_todos, update_todo, complete_todo, create_idea, list_ideas, vote_on_idea, promote_idea_to_todo |
| Hidden internal catalog tools | unclick_search, unclick_browse, unclick_tool_info, unclick_call |
The agent starts with memory, uses direct Boardroom tools for coordination, and can still call the hidden catalog tools by name when it needs dynamic endpoint discovery.
get_startup_context -> load_memory, write_session_summary -> save_session, add_fact -> save_fact, set_business_context -> save_identity.ListTools and are called through unclick_call with endpoint_id: "memory.<op>" (for example memory.manage_decay, memory.store_code, memory.log_conversation, memory.supersede_fact, memory.upsert_library_doc).Set your key as an environment variable:
UNCLICK_API_KEY=your_key_here
Or pass it via the MCP config:
{
"mcpServers": {
"unclick": {
"command": "npx",
"args": ["-y", "https://github.com/malamutemayhem/unclick/releases/latest/download/unclick.tgz"],
"env": {
"UNCLICK_API_KEY": "your_key_here"
}
}
}
}
Full catalog, docs, and API keys at unclick.world.
io.github.socialapishub/social-media-api
io.github.xpaysh/social-media
com.thenextgennexus/youtube-media-mcp-server
io.github.ludmila-omlopes/youtube-video-analyzer
csoai-org/social-media-ai-mcp
com.ezbizservices/social-media