Labsco
hellovelop logo

limelink-mcp-server

from hellovelop

MCP server for managing Limelink dynamic links with platform-specific deep linking (iOS/Android), social previews, and UTM tracking

๐Ÿ”ฅ๐Ÿ”ฅ๐Ÿ”ฅโœ“ VerifiedAccount requiredNeeds API keys

limelink-mcp-server

ํ•œ๊ตญ์–ด

A Model Context Protocol (MCP) server for LimeLink dynamic link management. Create, look up, and manage dynamic links directly from Claude Code, Claude Desktop, or any MCP-compatible client.

No API key required to get started! Documentation, SDK setup guides, and prompt templates work without any configuration. Just connect and start exploring LimeLink features with your AI assistant.

Features

  • Documentation Resources โ€” Access LimeLink docs (15 pages + index) directly from your AI assistant โ€” no API key needed
  • 2 Prompt Templates โ€” Guided workflows for link creation and SDK deep linking setup โ€” no API key needed
  • 3 Tools โ€” Create dynamic links, look up by suffix, look up by URL (requires API key)
  • In-memory Caching โ€” 1-hour TTL cache for documentation fetches

What works without an API key?

FeatureCategoryAPI KeyDescription
limelink://docs/indexResourceNot neededFull documentation index
limelink://docs/{slug}ResourceNot needed15 individual documentation pages
setup-deep-linkingPromptNot needediOS/Android SDK setup guide
create-dynamic-linkPromptNot neededLink creation guide (uses create-link tool to execute)
create-linkToolRequiredCreate dynamic links via API
get-link-by-suffixToolRequiredLook up links by suffix
get-link-by-urlToolRequiredLook up links by URL

Tools

Create a dynamic link with platform-specific deep linking, social previews, and UTM tracking.

Parameters:

ParameterTypeRequiredDescription
dynamic_link_suffixstringYesShort URL path identifier (max 50)
dynamic_link_urlstringYesTarget URL (max 500)
dynamic_link_namestringYesLink name (max 100)
project_idstringNoProject ID (falls back to env)
stats_flagbooleanNoEnable analytics tracking
apple_optionsobjectNoiOS deep linking options
android_optionsobjectNoAndroid deep linking options
additional_optionsobjectNoSocial preview + UTM options

Example usage in Claude:

"Create a dynamic link for https://example.com/product/123 with suffix 'product-123' and enable analytics"

Look up a dynamic link by its suffix.

ParameterTypeRequiredDescription
suffixstringYesDynamic link suffix
project_idstringNoProject ID (falls back to env)

Look up a dynamic link by its full URL. Automatically extracts the suffix from both URL formats:

  • Free plan: https://deep.limelink.org/{suffix}
  • Pro plan: https://{project}.limelink.org/link/{suffix}
ParameterTypeRequiredDescription
urlstringYesFull LimeLink dynamic link URL
project_idstringNoProject ID (falls back to env)

Resources

limelink://docs/index

Returns the full LimeLink documentation index (llms.txt).

limelink://docs/{slug}

Returns individual documentation pages. Available slugs:

introduction, getting-started, project, application, dynamic-link, create-link, link-detail, link-management, appearance, sdk-integration, ios-sdk, android-sdk, api-integration, advanced, llm-agent

Example usage in Claude:

"Read the LimeLink API integration docs"

Claude will access limelink://docs/api-integration

Prompts

Guided workflow for creating a dynamic link.

ArgumentTypeRequiredDescription
target_urlstringYesDestination URL
suffixstringNoCustom suffix
platformsenumYesios, android, both, or web

setup-deep-linking

Guided workflow for setting up LimeLink SDK deep linking.

ArgumentTypeRequiredDescription
platformenumYesios, android, or both

Development

Prerequisites

  • Node.js >= 18
  • pnpm

Setup

git clone https://github.com/hellovelop/limelink-mcp-server.git
cd limelink-mcp-server
pnpm install
pnpm run build

Run locally

LIMELINK_API_KEY=your_key node dist/index.js

Testing

pnpm test          # Unit tests
pnpm test:e2e      # E2E tests (MCP stdio communication)
pnpm test:watch    # Unit tests in watch mode
pnpm test:coverage # Coverage report

Project Structure

src/
โ”œโ”€โ”€ index.ts              # Entry point
โ”œโ”€โ”€ lib/
โ”‚   โ”œโ”€โ”€ config.ts         # Environment variable loading
โ”‚   โ”œโ”€โ”€ cache.ts          # In-memory TTL cache
โ”‚   โ”œโ”€โ”€ api-client.ts     # LimeLink API HTTP client
โ”‚   โ””โ”€โ”€ doc-fetcher.ts    # Documentation fetcher with caching
โ”œโ”€โ”€ tools/
โ”‚   โ”œโ”€โ”€ create-link.ts    # create-link tool
โ”‚   โ”œโ”€โ”€ get-link-by-suffix.ts
โ”‚   โ””โ”€โ”€ get-link-by-url.ts
โ”œโ”€โ”€ resources/
โ”‚   โ””โ”€โ”€ documentation.ts  # Documentation resources
โ””โ”€โ”€ prompts/
    โ”œโ”€โ”€ create-link-prompt.ts
    โ””โ”€โ”€ deep-link-prompt.ts