Skip to main content
Glama
billkinddev

whamlink-mcp

by billkinddev

whamlink-mcp

An MCP server for whamlink — let any MCP client (Claude Desktop, IDEs, agents) publish a single file to a permanent, shareable link.

Setup

  1. Get an API key: register at https://whamlink.com/app, then create a key under Keys.

  2. Add the server to your MCP client config, passing the key via WHAMLINK_API_KEY.

Claude Desktop (claude_desktop_config.json)

{
  "mcpServers": {
    "whamlink": {
      "command": "npx",
      "args": ["-y", "whamlink-mcp"],
      "env": { "WHAMLINK_API_KEY": "wl_your_key_here" }
    }
  }
}

Running from source instead of npm: "command": "node", "args": ["/path/to/whamlink/mcp/dist/index.js"] (after npm install && npm run build in mcp/).

Environment

  • WHAMLINK_API_KEY (optional) — your whamlink API key. If unset, the server still starts; the agent can register to create an account in-session (save the returned key here to persist).

  • WHAMLINK_BASE_URL (optional) — defaults to https://whamlink.com.

Related MCP server: @dropthis/mcp

Tools

Tool

What it does

register

Create an account on the user's behalf (consent + real email). Lets a new user go zero-to-published without setting a key first.

publish_link

Publish HTML / Markdown / PDF / image / text → a permanent URL. Public by default; set visibility to private / password / email to gate it.

list_links

List your published links (id, slug, mode, visibility, URL).

set_link_access

Change a link's visibility, password, shared-email list, allowNetwork, or title.

replace_link_content

Replace a link's content in place — the URL stays the same.

delete_link

Permanently delete a link.

PDF and image files aren't supported over MCP (tool args are JSON, which can't carry binary) — use the whamlink dashboard or the multipart API for those.

Never publish secrets, API keys, or private data. Public links are unlisted but anyone with the URL can view them; use private/password/email visibility for anything sensitive.

Develop

npm install
npm run build
npm test

Available Tools

6 tools
registerA

Create a whamlink account on the USER'S behalf. Only call this with the user's explicit consent and their REAL email — a verification link is sent there. Returns an API key used for the rest of this session; tell the user to set it as WHAMLINK_API_KEY in their MCP config to keep it across restarts.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYes
emailYesthe user's real email

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It discloses email verification, API key return, and persistence advice, but does not mention potential error cases like duplicate accounts or rate limits, which would be helpful.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences with no fluff. The first sentence states the core purpose, the second covers consent, verification, API key, and persistence. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only 2 parameters and no output schema, the description covers key aspects: consent, email verification, API key handling, and setup advice. Missing minor details like duplicate handling, but overall complete for a registration tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50% (only email has description). The description adds emphasis on 'REAL email' and consent context, but doesn't describe the 'name' parameter beyond its required status. Additional clarity on name would improve semantics.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Create a whamlink account') and the resource ('on the USER'S behalf'), distinguishing it from sibling tools that manage links. The verb-resource pair is specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly requires user consent and a real email, and provides guidance on persisting the API key. No explicit alternatives are given, but sibling tools are unrelated, so the guidance is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 6 tool updatesv0.1.3
    • First observeddelete_link
    • First observedlist_links
    • First observedpublish_link
    • First observedregister
    • First observedreplace_link_content
    • First observedset_link_access

TDQS

A3.6/5.0
Disambiguation5/5

Each tool targets a distinct operation: account registration, link creation, listing, deletion, content replacement, and access control. There is no overlap in functionality.

Naming Consistency4/5

All tools use snake_case and generally follow verb_noun pattern (delete_link, list_links, publish_link, replace_link_content, set_link_access). However, 'register' is a single verb without a noun, breaking the pattern slightly.

Tool Count5/5

With 6 tools, the server provides a focused set covering the core lifecycle of links (create, read, update, delete, access management) plus account setup. This is well-scoped.

Completeness4/5

The set covers CRUD and access control for text links. A minor gap is the lack of a tool to retrieve a single link's full details (list_links returns all, but may not include all fields). The file upload limitation is noted, but that's a domain constraint.

Maintenance

ActivityStale
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/billkinddev/whamlink-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server