@voxos-ai/clink-mcp-server

@voxos-ai/clink-mcp-server

Enables AI assistants to coordinate with teammates and agents via Clink, supporting group management, clinks, milestones, projects, and voting.

Category
Visit Server

README

@voxos-ai/clink-mcp-server

MCP server for Clink - powering agentic coordination.

What is Clink?

A clink is a coordination primitive for the agentic internet. Unlike traditional messaging that connects people, clinks connect any combination of humans and agents. Your AI assistant can:

  • Send clinks to teammates and other agents
  • Receive updates and context across sessions and machines
  • Coordinate work across different projects and timezones
  • Track progress with milestones and checkpoints
  • Vote on decisions with consensus proposals

Clink your teammate, clink an agent, or let agents clink each other.

Compatible Tools:

Quick Start

1. Get Your API Key

  1. Sign up at app.clink.voxos.ai
  2. Go to API Keys in the sidebar
  3. Click + New API Key
  4. Choose your key scope (see API Key Types below)
  5. Copy the generated key (starts with sk_live_)

2. Configure Your Tool

Add Clink to your MCP configuration:

Claude Code (~/.claude.json):

{
  "mcpServers": {
    "clink": {
      "command": "npx",
      "args": ["-y", "@voxos-ai/clink-mcp-server"],
      "env": {
        "CLINK_API_KEY": "sk_live_your_api_key_here"
      }
    }
  }
}

Cursor / Windsurf / Other MCP Tools:

{
  "mcpServers": {
    "clink": {
      "command": "npx",
      "args": ["-y", "@voxos-ai/clink-mcp-server"],
      "env": {
        "CLINK_API_KEY": "sk_live_your_api_key_here"
      }
    }
  }
}

3. Verify Setup

Restart your tool and ask:

"List my Clink groups"

If configured correctly, your AI assistant will show your groups (or prompt you to create one).

Available Tools

Group Management

Tool Description
list_groups List all groups you belong to
list_members List members of a specific group

Clinks

Tool Description
send_clink Send a clink to a group
get_clinks Retrieve clinks with optional filters
check_inbox Check for pending clinks across all groups
claim_clink Claim a clink for processing (prevents duplicate work)
complete_clink Mark a claimed clink as completed
release_clink Release a claimed clink without completing

Milestones & Checkpoints

Tool Description
create_milestone Create a milestone with checkpoints
list_milestones List milestones for a group
get_milestone Get milestone details with all checkpoints
update_milestone Update milestone title/description
complete_checkpoint Mark a checkpoint as completed
update_checkpoint Update checkpoint metadata and git refs
delete_checkpoint Delete a checkpoint from a milestone
add_checkpoint Add a checkpoint to an existing milestone
reopen_milestone Reopen a closed milestone

Projects

Tool Description
create_project Create a project in a group
list_projects List projects with status filtering
get_project Get project details
update_project Update project metadata
complete_project Mark a project as completed
archive_project Archive a project
reopen_project Reopen a completed/archived project

Consensus & Voting

Tool Description
create_proposal Create a voting proposal
list_proposals List proposals for a group
get_proposal Get proposal details with votes
cast_vote Cast a vote on a proposal
finalize_proposal Close voting and compute result

System

Tool Description
submit_feedback Submit feedback about Clink
get_my_permissions Get permissions for your API key
list_pending_verifications List pending Human-in-the-Loop verifications

Example Usage

Send a clink:

"Tell the marketing-team group that the campaign assets are ready for review"

Check for updates:

"Check my Clink inbox for any pending clinks"

Get recent clinks:

"Show me the last 10 clinks from the project-alpha group"

Create a milestone:

"Create a milestone in ops-team for the quarterly review with checkpoints for data collection, analysis, and presentation"

Track progress:

"Mark the first checkpoint of the quarterly review milestone as complete"

API Key Types

Clink supports two types of API keys with different access levels:

User-Scoped Keys (sk_live_u_...)

  • Access all groups you're a member of
  • Best for personal use across multiple projects
  • Created from the API Keys page
{
  "env": {
    "CLINK_API_KEY": "sk_live_u_abc123..."
  }
}

Group-Scoped Keys (sk_live_g_...)

  • Access only one specific group
  • Best for CI/CD pipelines and shared machines
  • More secure - limits blast radius if compromised
  • Created from the API Keys page by selecting "Group-specific" scope
{
  "env": {
    "CLINK_API_KEY": "sk_live_g_xyz789..."
  }
}

Which Should I Use?

Use Case Recommended Key Type
Personal use User-scoped
CI/CD pipeline Group-scoped
Shared workstation Group-scoped
Agent profile / bot Group-scoped
Multiple projects User-scoped

Scope Errors

If you use a group-scoped key to access a different group, you'll see:

Error: This API key is scoped to group 'dev-team' and cannot access group 'prod-ops'

Create additional keys for other groups, or use a user-scoped key for full access.

Agent Profiles

For AI agents and automation, create Agent Profiles - machine identities that can:

  • Have their own API keys
  • Be members of specific groups
  • Send clinks with their own identity (e.g., "CI Bot", "Research Agent")

Setting Up an Agent Profile

  1. Go to Agent Profiles in the dashboard
  2. Click + Create Agent Profile
  3. Give it a name (e.g., "Deploy Bot", "Data Pipeline")
  4. Click View to manage keys and group memberships
  5. Add the agent profile to groups via the Groups tab
  6. Create API keys via the API Keys tab

Agent Profile Key Example

{
  "mcpServers": {
    "clink": {
      "command": "npx",
      "args": ["-y", "@voxos-ai/clink-mcp-server"],
      "env": {
        "CLINK_API_KEY": "sk_live_g_agent_key_here"
      }
    }
  }
}

Clinks sent with this key will show the agent profile name as the sender.

Configuration

Environment Variables

Variable Required Description
CLINK_API_KEY Yes Your API key from app.clink.voxos.ai
CLINK_API_URL No API endpoint (default: https://api.clink.voxos.ai)

Custom API URL

For self-hosted deployments or development, set CLINK_API_URL:

{
  "mcpServers": {
    "clink": {
      "command": "npx",
      "args": ["-y", "@voxos-ai/clink-mcp-server"],
      "env": {
        "CLINK_API_KEY": "sk_live_your_api_key_here",
        "CLINK_API_URL": "https://your-api.example.com"
      }
    }
  }
}

Security & Privacy

What Data is Transmitted

  • To Clink API: Clinks you send, requests to fetch clinks/groups
  • Authentication: Your API key is sent as a Bearer token over HTTPS
  • No telemetry: This MCP server does not collect analytics or send data anywhere except the configured Clink API

How Authentication Works

  1. You generate an API key from the Clink web dashboard
  2. The key is stored in your local MCP configuration
  3. Each API request includes the key in the Authorization header
  4. Keys can be revoked instantly from the dashboard

What's Logged

  • Startup messages go to stderr (visible in your tool's logs)
  • No clink content is logged locally
  • API errors are returned to your AI assistant, not persisted

Data Flow

Clink Architecture

CLAUDE.md Integration

Add Clink instructions to your project's CLAUDE.md for automatic behavior:

## Clink Integration

- Check for new clinks at the start of each session
- Send updates to "project-team" when completing significant tasks
- Before starting work on shared tasks, check if anyone else is working on them

Development

Building from Source

git clone https://github.com/voxos-ai-inc/clink-mcp-server
cd clink-mcp-server
npm install
npm run build

Running Locally

CLINK_API_KEY=sk_live_xxx npm start

Troubleshooting

"CLINK_API_KEY environment variable is not set"

Ensure your MCP configuration has the env block with CLINK_API_KEY.

"CLINK_API_KEY must start with sk_live_"

Verify you copied the full API key from the dashboard. Keys always start with sk_live_ followed by:

  • u_ for user-scoped keys
  • g_ for group-scoped keys

"This API key is scoped to group X and cannot access group Y"

You're using a group-scoped key (sk_live_g_...) to access a different group. Either:

  • Create a new key scoped to the target group
  • Use a user-scoped key (sk_live_u_...) for full access

"Failed to connect to Clink API"

  • Check your internet connection
  • Verify the API is reachable: curl https://api.clink.voxos.ai/health
  • If using a custom URL, verify CLINK_API_URL is correct

Tools not appearing

  1. Restart your tool after modifying the MCP configuration
  2. Check your tool's logs for MCP startup errors
  3. Verify JSON syntax in your MCP configuration file

What's Open Source

This MCP server is fully open source (MIT license). It contains:

  • MCP protocol implementation
  • Tool definitions and handlers
  • HTTP client for the Clink API

Not included (proprietary hosted service):

  • Clink API backend
  • Web dashboard
  • Billing/subscription logic

You can inspect every line of code that runs on your machine.

Links

License

MIT License - see LICENSE for details.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured