ULink MCP Server

ULink MCP Server

Enables AI assistants to manage ULink deep linking projects, including creating smart links, configuring domains, and viewing analytics.

Category
访问服务器

README

ULink MCP Server

Connect your ULink deep linking projects to Claude Code, Cursor, Windsurf, and other AI assistants.

The Model Context Protocol (MCP) standardizes how Large Language Models (LLMs) talk to external services like ULink. It connects AI assistants directly with your ULink account and allows them to perform tasks like managing projects, creating smart links, configuring domains, and more. See the full list of tools.

Setup

1. Install the MCP server

Choose your MCP client and run the corresponding command:

Claude Code:

claude mcp add ulink -- npx -y @ulinkly/mcp-server@latest

Cursor:

Open Settings > MCP > Add new MCP server, or add to .cursor/mcp.json:

{
  "mcpServers": {
    "ulink": {
      "command": "npx",
      "args": ["-y", "@ulinkly/mcp-server@latest"]
    }
  }
}

Windsurf:

Open Settings > MCP > Add new MCP server, or add to ~/.windsurf/mcp.json:

{
  "mcpServers": {
    "ulink": {
      "command": "npx",
      "args": ["-y", "@ulinkly/mcp-server@latest"]
    }
  }
}

If you don't see your MCP client listed above, check your client's MCP documentation and use the following server command:

npx -y @ulinkly/mcp-server@latest

2. Authenticate

The MCP server shares authentication with the ULink CLI. If you've already logged in via ulink login, the MCP server will use those tokens automatically — no extra login needed.

Otherwise, your MCP client will open a browser window for authentication on first use. Tokens are saved to ~/.ulink/config.json and shared with the CLI. The session persists and tokens refresh automatically.

API Key (alternative)

For CI environments or headless servers, set the ULINK_API_KEY environment variable to skip the browser flow:

Claude Code:

claude mcp add ulink -e ULINK_API_KEY=your-api-key -- npx -y @ulinkly/mcp-server@latest

Manual config:

{
  "mcpServers": {
    "ulink": {
      "command": "npx",
      "args": ["-y", "@ulinkly/mcp-server@latest"],
      "env": {
        "ULINK_API_KEY": "your-api-key"
      }
    }
  }
}

You can generate an API key from the ULink dashboard under Project Settings > API Keys, or by using the create_api_key tool.

3. Start building

Once connected, your AI assistant can manage your ULink projects directly. Try asking it to:

  • "List my ULink projects"
  • "Create a new smart link for my app"
  • "Show click analytics for my latest link"
  • "Add a custom domain to my project"

Tools

The following ULink tools are available to the LLM, organized by category.

Project Management

  • list_projects: Lists all ULink projects owned by or shared with the authenticated user.
  • get_project: Gets detailed information about a specific project, including configuration and membership.
  • create_project: Creates a new project with a name and default fallback URL.
  • update_project: Updates the name or default URL of an existing project.
  • configure_project: Sets platform-specific configuration (iOS bundle ID, Android package name, deeplink schemas, SHA-256 fingerprints).

Link Management

  • create_link: Creates a unified or dynamic smart link with platform-specific URLs, parameters, and metadata. Supports allowQueryPassthrough (see below).
  • list_links: Lists all links in a project with pagination.
  • get_link: Gets detailed information about a specific link.
  • update_link: Updates a link's URLs, parameters, or metadata. Supports allowQueryPassthrough (see below).
  • delete_link: Permanently deletes a link. This is irreversible.
  • get_link_analytics: Gets click analytics for a link, including total clicks and breakdowns by platform, country, and referrer.
Query Passthrough

Both create_link and update_link accept an allowQueryPassthrough boolean field (default: false). When enabled, query parameters appended to the link URL at click time (e.g. https://go.example.com/abc?orderId=123&ref=email) are merged into the resolved link's parameters and override any stored parameter with the same key. Parameter values always arrive as strings. The feature works on both immediate app open and after a deferred install — no SDK change is required.

Validation rules for passthrough parameters: keys must match [A-Za-z0-9_-]{1,64}, a maximum of 25 parameters are allowed, each value must be ≤ 1 024 characters, the total payload must be ≤ 4 KB, and the key debug is reserved.

Domain Management

  • list_domains: Lists all domains (shared and custom) associated with a project.
  • add_domain: Adds a custom domain to a project. Requires DNS configuration and verification.
  • verify_domain: Triggers DNS verification for a custom domain.
  • delete_domain: Removes a custom domain from a project. Links using this domain will stop working.

API Keys

  • list_api_keys: Lists all API keys for a project (metadata only, not the key value).
  • create_api_key: Creates a new API key. The full key is only returned once — store it securely.
  • revoke_api_key: Permanently revokes an API key. Applications using this key will immediately lose access.

Account & Billing

  • get_subscription: Gets a project's subscription plan, status, and renewal date. Accepts an optional projectId.
  • list_plans: Lists all available subscription plans with pricing and limits. Accepts an optional billingPeriod (monthly/yearly).
  • get_usage: Gets a project's usage statistics for the current billing period (clicks, links, API calls). Accepts an optional projectId.

Environment Variables

Variable Default Description
ULINK_API_KEY API key for authentication (skips browser OAuth flow)

Requirements

  • Node.js 18 or later

Resources

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选