MCP 서버

UnClick

world.unclick/mcp-server
MCP 및 에이전트 인프라 생산성 공개 · 연결 가능 MCP 2026-07-28

이 MCP로 할 수 있는 일

Provides a marketplace and router for hundreds of app integrations, along with persistent cross-session memory and session coordination tools.

load_memory
Load memory
Loads the user's identity, preferences, facts, and recent session history from persistent cross-session storage. Default output is compact for strict MCP clients; call search_memory for narrow questions or pass full_content=true only when the full raw payload is required. Use IMMEDIATELY at the start of every session -- before responding to the user's first message, before calling any other tool. Trigger even when the opening message looks trivial: keywords like 'remember', 'recall', 'context', 'profile', 'facts about me', 'who am I', 'last time', 'preferences', 'pick up where we left off' all signal stored context exists. Also trigger after any context reset or tool reconnect, or any time you are unsure whether context was loaded this session. Do NOT skip because the first message is simple -- personal facts change how almost every answer should be framed. Do NOT trigger for pure factual lookups (capitals, math, definitions) that require no personal context.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {'lite': {'type': 'boolean', 'default': True, 'description': 'When true, skips session summary bodies and returns compact identity, facts, and counts (default true)'}, 'full_content': {'type': 'boolean', 'default': False, 'description': 'When true, returns the full raw memory payload. Use sparingly; strict clients may reject large tool results.'}, 'num_sessions': {'type': 'number', 'default': 3, 'description': 'Number of recent session summaries to load when lite=false (1-20, default 3)'}}, 'additionalProperties': False}
save_fact
Remember a fact
Saves a new persistent fact about the user that will be available in all future sessions across every AI tool. Use whenever the user shares anything worth keeping -- even if they don't explicitly ask: 'capture', 'noted', 'remember this', 'log', 'store', 'don't forget', or any preference, decision, correction, contact, project detail, technical choice, troubleshooting fix, or personal detail the user mentions. When the user reports a solved client/tool issue, save it as category 'troubleshooting' using the shape 'Issue: <symptom>. Solution: <fix>'. Also trigger proactively when the user corrects you (save the correction immediately), reveals a preference by rejecting something, or names a person/tool/project for the first time. Do NOT trigger for transient values (today's weather, one-off calculations, temporary state that won't matter next session). Do NOT trigger for facts already confirmed stored earlier in this session.
입력 스키마
{'type': 'object', 'required': ['fact'], 'properties': {'fact': {'type': 'string', 'description': 'The fact -- a single atomic statement'}, 'category': {'enum': ['preference', 'decision', 'technical', 'contact', 'project', 'troubleshooting', 'general'], 'type': 'string', 'default': 'general', 'description': 'Category: preference, decision, technical, contact, project, troubleshooting, general'}, 'pr_number': {'type': 'integer', 'description': 'PR number linking this fact to a code review (for audit trail)'}, 'commit_sha': {'type': 'string', 'description': 'Git commit SHA linking this fact to a code change (for audit trail)'}, 'confidence': {'type': 'number', 'default': 0.9, 'maximum': 1, 'minimum': 0}, 'preserve_as_blob': {'type': 'boolean', 'description': 'If true, stores as a blob and extracts atomic facts via LLM instead of saving fact text directly'}, 'source_session_id': {'type': 'string', 'description': 'Session ID where this fact was learned'}}, 'additionalProperties': False}
save_session
Save this session
Saves a structured summary of the current session so the next session can resume without re-asking. Use at the end of every meaningful session -- even if the user doesn't ask: 'summary', 'wrap-up', 'end of session', 'recap', 'we're done', 'see you next time', 'close out', or whenever significant work was completed, decisions were made, or open loops exist that need carrying forward. Also trigger at natural checkpoints mid-session when a major phase completes. Include: what was accomplished, key decisions made, open loops or next steps. Do NOT trigger after trivial exchanges (single Q&A, quick lookups) with nothing worth carrying forward. Do NOT trigger if the session has already been saved with no new work done since. ALSO extract durable facts here: pass facts:[{text, kind}] with the atomic facts this session surfaced (preferences, decisions, corrections, durable project details) so memory forms in the same call even when no save_fact calls were made along the way.
입력 스키마
{'type': 'object', 'required': ['session_id', 'summary'], 'properties': {'facts': {'type': 'array', 'items': {'type': 'object', 'required': ['text'], 'properties': {'kind': {'enum': ['current', 'historical', 'future', 'preference', 'timeless'], 'type': 'string', 'description': 'Temporal bucket for the fact'}, 'text': {'type': 'string', 'description': 'One atomic, durable fact'}}, 'additionalProperties': False}, 'maxItems': 20, 'description': 'Atomic durable facts learned this session (max 20). One clause each; skip transient status. Each lands as a normal memory fact via the write gate, linked to this session.'}, 'topics': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Topic tags for searchability'}, 'summary': {'type': 'string', 'description': 'Narrative of what happened: decisions, work completed, problems solved'}, 'platform': {'type': 'string', 'default': 'claude-code', 'description': 'Platform this session ran on'}, 'decisions': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Key decisions made during the session'}, 'open_loops': {'type': 'array', 'items': {'type': 'string'}, 'description': 'Unfinished tasks or questions to carry forward'}, 'session_id': {'type': 'string', 'description': 'Unique session identifier (timestamp or UUID)'}, 'duration_minutes': {'type': 'number', 'description': 'Approximate session duration'}}, 'additionalProperties': False}
search_memory
Search memory
Searches the user's stored facts and session history using hybrid semantic + keyword retrieval. Result content is capped to keep strict MCP clients under response limits; pass full_content=true only when the full matching row is required. Use whenever the user asks about anything that might be stored: 'remember', 'recall', 'do you know', 'what did I say about', 'last time', 'context', 'profile', 'facts about me', 'who am I', 'my preferences', 'what have I told you', or when you need background on a topic before answering. Trigger even when the user doesn't explicitly say 'search' -- if the question involves past decisions, preferences, project details, or named people and tools, check memory first. Do NOT trigger for one-shot math, translations, definitions, or questions with no plausible stored context. Do NOT trigger if load_memory was just called and already returned the relevant context.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['query'], 'properties': {'as_of': {'type': 'string', 'description': 'ISO 8601 timestamp for point-in-time queries (returns facts valid at that moment)'}, 'query': {'type': 'string', 'description': 'Search query'}, 'max_results': {'type': 'number', 'default': 10, 'maximum': 50, 'minimum': 1}, 'full_content': {'type': 'boolean', 'default': False, 'description': 'When true, returns full result content instead of 800-character previews. Use sparingly for strict clients.'}, 'include_card': {'type': 'boolean', 'default': False, 'description': 'Phase 1 Wizard opt-in. When true, the response is { results, card } where card is a ConversationalCard summarising the matches for friendly chat surfaces. When false (default), returns the raw results array unchanged for backward compatibility.'}}, 'additionalProperties': False}
unclick_call
Call 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}. Also routes memory operations as 'memory.<op>' (e.g. memory.manage_decay) and the Boardroom coordination tools as 'boardroom.<tool>' (e.g. boardroom.read_messages, boardroom.post_message, boardroom.list_todos), plus first-party large-file tools like workspace_put/workspace_push and file_sync_put/file_sync_pull - this is the one gateway to every UnClick capability when only the essentials tool list is advertised.
입력 스키마
{'type': 'object', 'required': ['endpoint_id', 'params'], 'properties': {'params': {'type': 'object', 'description': 'Parameters for the endpoint. Use unclick_tool_info to see required params.'}, 'endpoint_id': {'type': 'string', 'description': "Endpoint identifier, e.g. 'image.resize', 'hash.compute', 'csv.parse', 'cron.next'"}}, 'additionalProperties': False}
unclick_search
Search 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.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['query'], 'properties': {'query': {'type': 'string', 'description': 'Search term -- describe what you want to do'}, 'category': {'enum': ['text', 'data', 'media', 'time', 'network', 'generation', 'storage', 'platform'], 'type': 'string', 'description': "Optional: narrow to one category. Omit it if unsure - it only filters the built-in catalog, never the integration tools. Image and video generators are under 'generation'."}}, 'additionalProperties': False}
unclick_start_pairing
Connect UnClick
Use when this UnClick MCP connection is not paired yet. It gives the user a safe sign-in link that completes the public URL pairing.
입력 스키마
{'type': 'object', 'properties': {'email': {'type': 'string', 'description': 'Optional email address to pre-fill on the UnClick sign-in page.'}}, 'additionalProperties': False}
unclick_tool_info
Get 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.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['slug'], 'properties': {'slug': {'type': 'string', 'description': "Tool slug, e.g. 'image', 'hash', 'csv', 'cron'. Available slugs: transform, encode, hash, regex, markdown, diff, json, csv, validate, image, qr, color, timestamp, cron, ip, shorten, uuid, random, report-bug, kv, webhook, memory"}}, 'additionalProperties': False}
추가됨
unclick_call
2026년 9월 17일 12:55 PM
추가됨
unclick_tool_info
2026년 9월 17일 12:55 PM
추가됨
unclick_search
2026년 9월 17일 12:55 PM
추가됨
save_session
2026년 9월 17일 12:55 PM
추가됨
search_memory
2026년 9월 17일 12:55 PM
추가됨
save_fact
2026년 9월 17일 12:55 PM
추가됨
load_memory
2026년 9월 17일 12:55 PM
추가됨
unclick_start_pairing
2026년 9월 17일 12:55 PM