MCP 서버

MiniURL

io.github.addychang/miniurl
마케팅 및 광고 공개 · 연결 가능 MCP 2025-11-25

이 MCP로 할 수 있는 일

Creates and manages shortened URLs, custom domains, tags, registration, and link analytics.

add_domain
MiniURL add_domain
Request a custom domain to be connected to MiniURL. Agent domain changes require human approval by default.
파괴적 작업
입력 스키마
{'type': 'object', 'required': ['domain'], 'properties': {'domain': {'type': 'string', 'format': 'hostname', 'description': 'A custom hostname such as links.example.com.'}, 'approval_id': {'type': 'string'}, 'approval_token': {'type': 'string', 'description': 'Legacy compatibility field; normally omit it.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
bulk_create_links
MiniURL bulk_create_links
Create multiple short links in one request. Free accounts can create up to 10 at a time, Pro up to 50.
입력 스키마
{'type': 'object', 'required': ['links'], 'properties': {'links': {'type': 'array', 'items': {'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri'}, 'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1}, 'domain': {'type': 'string', 'format': 'hostname'}, 'password': {'type': 'string'}, 'expiration': {'type': 'string', 'format': 'date-time'}, 'activated_at': {'type': 'string', 'format': 'date-time'}}}, 'maxItems': 50, 'minItems': 1}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]{8,128}$', 'maxLength': 128, 'minLength': 8}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'results': {'type': 'array'}, 'summary': {'type': 'object'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
check_alias
MiniURL check_alias
Check whether a custom alias is available on a given domain before creating a link.
읽기 전용 외부 접근 가능 멱등성
입력 스키마
{'type': 'object', 'required': ['alias'], 'properties': {'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The alias to check.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'The domain to check on. Defaults to miniurl.com.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'alias': {'type': 'string'}, 'exists': {'type': 'boolean'}, 'available': {'type': 'boolean'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
clear_authentication
MiniURL clear_authentication
Clear authentication retained by a legacy MCP session. Stateless clients clear authentication by omitting the Authorization header on later requests.
멱등성
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'auth_mode': {'type': ['string', 'null']}}, 'additionalProperties': False}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
create_guest_token
MiniURL create_guest_token
Create a short-lived MiniURL guest bearer token. Legacy MCP sessions retain it; stateless clients must pass the returned gt_ token explicitly on later requests. shorten_url can provision one automatically.
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'expires_at': {'type': 'string'}, 'guest_token': {'type': 'string'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
create_tag
MiniURL create_tag
Create a new tag for organising links. Maximum 20 tags per account.
입력 스키마
{'type': 'object', 'required': ['name'], 'properties': {'name': {'type': 'string', 'maxLength': 30, 'minLength': 1, 'description': 'Tag name, 1-30 characters.'}, 'color': {'enum': ['#6b7280', '#ef4444', '#f97316', '#eab308', '#22c55e', '#06b6d4', '#3b82f6', '#8b5cf6', '#ec4899'], 'type': 'string', 'description': 'Tag colour hex code. Defaults to #6b7280 (grey).'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
delete_domain
MiniURL delete_domain
Delete a custom domain and its linked URLs after a dry-run confirmation. Agent domain changes require human approval by default.
파괴적 작업
입력 스키마
{'type': 'object', 'required': ['domain_id'], 'properties': {'confirm': {'type': 'boolean', 'description': 'Set true only after reviewing the dry-run impact response.'}, 'domain_id': {'type': 'integer', 'minimum': 1}, 'approval_id': {'type': 'string'}, 'approval_token': {'type': 'string', 'description': 'Legacy compatibility field; normally omit it.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
delete_link
MiniURL delete_link
Delete a registered short link permanently.
파괴적 작업
입력 스키마
{'type': 'object', 'required': ['alias'], 'properties': {'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The alias to delete.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'The link domain. Defaults to miniurl.com.'}, 'dry_run': {'type': 'boolean', 'description': 'Preview the deletion and affected link scope without writing. Human approval is still required for the real delete.'}, 'approval_id': {'type': 'string', 'description': 'Approval id returned by a previous USER_APPROVAL_REQUIRED response.'}, 'approval_token': {'type': 'string', 'description': 'Legacy compatibility field; normally omit it and retry with approval_id after approval.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]{8,128}$', 'maxLength': 128, 'minLength': 8}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
delete_tag
MiniURL delete_tag
Delete a tag and remove it from all associated links.
파괴적 작업
입력 스키마
{'type': 'object', 'required': ['tag_id'], 'properties': {'tag_id': {'type': 'integer', 'minimum': 1, 'description': 'The tag ID to delete.'}, 'approval_id': {'type': 'string', 'description': 'Approval id returned by a previous USER_APPROVAL_REQUIRED response.'}, 'approval_token': {'type': 'string', 'description': 'Legacy compatibility field; normally omit it and retry with approval_id after approval.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
get_account_status
MiniURL get_account_status
Inspect the current guest/free/pro account status, remaining quota, and feature availability.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
get_link
MiniURL get_link
Get a single short link by alias for the current registered account.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['alias'], 'properties': {'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The link alias to fetch.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'The link domain. Defaults to miniurl.com.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
get_link_stats
MiniURL get_link_stats
Get link analytics. Free accounts receive a basic total plus an upgrade hint; Pro accounts receive full breakdowns.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'required': ['alias'], 'properties': {'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The alias to inspect.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'Optional domain to scope the alias lookup. Defaults to miniurl.com.'}, 'period': {'enum': ['24H', '7D', '30D', 'ALL'], 'type': 'string', 'description': 'Analytics time range. Defaults to 7D.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'clicks': {'type': 'array'}, 'total_clicks': {'type': 'integer'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
list_domains
MiniURL list_domains
List domains available to the current registered account, including miniurl.com and active custom domains.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'domains': {'type': 'array'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
list_links
MiniURL list_links
List short links for the current registered account.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 100, 'minimum': 1, 'description': 'Optional page size. Defaults to 20.'}, 'cursor': {'type': 'string', 'description': 'Opaque cursor returned as next_cursor. Prefer cursor pagination for stable traversal.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'Optional domain filter.'}, 'offset': {'type': 'integer', 'minimum': 0, 'description': 'Optional zero-based offset for pagination. Defaults to 0.'}, 'search': {'type': 'string', 'description': 'Optional search term for alias or destination URL.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'links': {'type': 'array'}, 'pagination': {'type': 'object'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
list_tags
MiniURL list_tags
List all tags for the current registered account. Tags help organise links into campaigns or categories.
읽기 전용 멱등성
입력 스키마
{'type': 'object', 'properties': {}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'tags': {'type': 'array'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
send_registration_code
MiniURL send_registration_code
Send a 6-digit registration code to the user email, using the current guest session.
입력 스키마
{'type': 'object', 'required': ['email'], 'properties': {'email': {'type': 'string', 'format': 'email', 'description': 'The user email address.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
shorten_url
MiniURL shorten_url
Create a MiniURL short link for a supplied HTTP or HTTPS destination. Use when the user asks to shorten a URL or generate a MiniURL link. This is an additive external write; do not fetch or open the destination. If no authentication is supplied, MiniURL automatically starts a guest flow. Reuse idempotency_key when retrying the same logical request.
외부 접근 가능
입력 스키마
{'type': 'object', 'required': ['url'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'The HTTP or HTTPS destination URL to shorten.'}, 'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'Optional custom alias. Call check_alias before creating it. Requires a registered account; miniurl.com aliases must be at least 4 characters.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'Optional domain. Requires a registered account with an active custom domain.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate the destination and show the planned link without creating it. Agent tokens only.'}, 'password': {'type': 'string', 'description': 'Optional password. Requires Pro.'}, 'expiration': {'type': 'string', 'format': 'date-time', 'description': 'Optional ISO 8601 expiration datetime. Requires Pro.'}, 'activated_at': {'type': 'string', 'format': 'date-time', 'description': 'Optional ISO 8601 activation datetime. Requires Pro.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]{8,128}$', 'maxLength': 128, 'minLength': 8, 'description': 'Optional idempotency key. Reusing it with the same payload safely replays the original result.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'alias': {'type': 'string'}, 'domain': {'type': 'string'}, 'full_url': {'type': 'string'}, 'short_url': {'type': 'string'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
start_pro_upgrade
MiniURL start_pro_upgrade
Create a shortened checkout link for upgrading the current registered account to Pro.
파괴적 작업
입력 스키마
{'type': 'object', 'properties': {'interval': {'enum': ['monthly', 'yearly'], 'type': 'string', 'description': 'Billing interval. Defaults to monthly.'}, 'approval_id': {'type': 'string', 'description': 'Approval id returned by a previous USER_APPROVAL_REQUIRED response.'}, 'approval_token': {'type': 'string', 'description': 'Legacy compatibility field; normally omit it and retry with approval_id after approval.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]{8,128}$', 'maxLength': 128, 'minLength': 8}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': 'object', 'properties': {'interval': {'type': 'string'}, 'checkout_url': {'type': 'string'}}, 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
tag_link
MiniURL tag_link
Add a tag to a short link for campaign or category organisation.
입력 스키마
{'type': 'object', 'required': ['alias', 'tag_id'], 'properties': {'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The link alias to tag.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'The link domain. Defaults to miniurl.com.'}, 'tag_id': {'type': 'integer', 'minimum': 1, 'description': 'The tag ID to assign.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
untag_link
MiniURL untag_link
Remove a tag from a short link.
입력 스키마
{'type': 'object', 'required': ['alias', 'tag_id'], 'properties': {'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The link alias.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'The link domain. Defaults to miniurl.com.'}, 'tag_id': {'type': 'integer', 'minimum': 1, 'description': 'The tag ID to remove.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
update_link
MiniURL update_link
Update a registered short link. Some fields require Pro.
입력 스키마
{'type': 'object', 'required': ['alias'], 'properties': {'url': {'type': 'string', 'format': 'uri', 'description': 'New HTTP or HTTPS destination URL. Requires Pro.'}, 'alias': {'type': 'string', 'maxLength': 64, 'minLength': 1, 'description': 'The link alias to update.'}, 'domain': {'type': 'string', 'format': 'hostname', 'description': 'The link domain. Defaults to miniurl.com.'}, 'dry_run': {'type': 'boolean', 'description': 'Validate and preview the update without changing the link. Agent tokens only.'}, 'password': {'type': 'string', 'description': 'Set or replace the password. Requires Pro.'}, 'expiration': {'type': 'string', 'format': 'date-time', 'description': 'Set a new ISO 8601 expiration datetime. Requires Pro.'}, 'activated_at': {'type': 'string', 'format': 'date-time', 'description': 'Set a new ISO 8601 activation datetime. Requires Pro.'}, 'clear_password': {'type': 'boolean', 'description': 'Remove the current password.'}, 'idempotency_key': {'type': 'string', 'pattern': '^[A-Za-z0-9._:-]{8,128}$', 'maxLength': 128, 'minLength': 8}, 'clear_expiration': {'type': 'boolean', 'description': 'Clear the current expiration.'}, 'clear_activated_at': {'type': 'boolean', 'description': 'Clear the current scheduled activation datetime.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
verify_domain
MiniURL verify_domain
Refresh custom-domain DNS and SSL verification status. Agent domain changes require human approval by default.
입력 스키마
{'type': 'object', 'required': ['domain_id'], 'properties': {'domain_id': {'type': 'integer', 'minimum': 1}, 'approval_id': {'type': 'string'}, 'approval_token': {'type': 'string', 'description': 'Legacy compatibility field; normally omit it.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
verify_registration_code
MiniURL verify_registration_code
Verify the emailed code, create the account, claim guest links, and continue with OAuth 2.1 + PKCE. Long-lived API keys are never returned over MCP.
입력 스키마
{'type': 'object', 'required': ['email', 'code'], 'properties': {'code': {'type': 'string', 'pattern': '^\\d{6}$', 'description': 'The 6-digit verification code.'}, 'email': {'type': 'string', 'format': 'email', 'description': 'The user email address.'}}, 'additionalProperties': False}
출력 스키마
{'type': 'object', 'required': ['success', 'request_id'], 'properties': {'data': {'type': ['object', 'array', 'string', 'number', 'boolean', 'null'], 'additionalProperties': True}, 'meta': {'type': 'object', 'additionalProperties': True}, 'error': {'oneOf': [{'type': 'string'}, {'type': 'object', 'required': ['code', 'message', 'retryable'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': True}]}, 'success': {'type': 'boolean'}, 'approval': {'type': 'object', 'additionalProperties': True}, 'retryable': {'type': 'boolean'}, 'request_id': {'type': 'string', 'minLength': 8}, 'retry_after': {'type': 'integer', 'minimum': 0}, 'next_actions': {'type': 'array', 'items': {'type': 'string'}}, 'required_scope': {'type': 'string'}, 'user_action_required': {'type': 'boolean'}}, 'additionalProperties': False}
추가됨
untag_link
2026년 9월 17일 12:40 PM
추가됨
tag_link
2026년 9월 17일 12:40 PM
추가됨
delete_tag
2026년 9월 17일 12:40 PM
추가됨
create_tag
2026년 9월 17일 12:40 PM
추가됨
list_tags
2026년 9월 17일 12:40 PM
추가됨
check_alias
2026년 9월 17일 12:40 PM
추가됨
get_link_stats
2026년 9월 17일 12:40 PM
추가됨
bulk_create_links
2026년 9월 17일 12:40 PM
추가됨
delete_link
2026년 9월 17일 12:40 PM
추가됨
update_link
2026년 9월 17일 12:40 PM
추가됨
get_link
2026년 9월 17일 12:40 PM
추가됨
list_links
2026년 9월 17일 12:40 PM
추가됨
verify_domain
2026년 9월 17일 12:40 PM
추가됨
delete_domain
2026년 9월 17일 12:40 PM
추가됨
add_domain
2026년 9월 17일 12:40 PM
추가됨
list_domains
2026년 9월 17일 12:40 PM
추가됨
start_pro_upgrade
2026년 9월 17일 12:40 PM
추가됨
get_account_status
2026년 9월 17일 12:40 PM
추가됨
verify_registration_code
2026년 9월 17일 12:40 PM
추가됨
send_registration_code
2026년 9월 17일 12:40 PM
추가됨
shorten_url
2026년 9월 17일 12:40 PM
추가됨
clear_authentication
2026년 9월 17일 12:40 PM
추가됨
create_guest_token
2026년 9월 17일 12:40 PM