Bitly MCP server for AI agents and assistants

Securely connect your AI agents and chatbots (Claude, ChatGPT, Cursor, etc) with Bitly MCP or direct API to create short links, manage branded links, generate QR codes, and track click analytics through natural language.

Bitly logoBitly
Api KeyOauth2

Bitly is a link management platform for shortening, customizing, sharing, and tracking links and QR codes. It helps teams create branded links and measure engagement across campaigns.

85 Tools

Try Bitly now

Type what you want done — sign in and watch it run live in the Tool Router playground.

TOOL ROUTER PLAYGROUND
Bitly
Try asking
TOOLS

Supported Tools

Every Bitly action and event your agent gets out of the box.

Add Channel Bitlinks

Add 1-100 Bitlinks to an existing Bitly channel under a single campaign, without replacing existing channel membership.

Add Custom Bitlink

Add a custom back-half to an existing Bitlink on an available short domain, or set its initial custom redirect.

Add Custom Domain

Add a domain you already own to a Bitly organization and queue DNS verification, or set prevalidate=true to check it without adding it.

Apply Site Template

Apply a template's appearance and, where applicable, sample content to an existing Bitly Site.

Bulk Update Bitlinks

Add or remove tags, or archive/unarchive up to 100 Bitlinks in a Bitly group.

Bulk Update QR Codes

Add or remove tags, or archive/unarchive up to 100 Bitly QR codes in a group.

Clone Site

Create a new Bitly Site by cloning the content and appearance of an existing site.

Create Bitlink

Create a Bitly short link with a title, tags, deep links, expiration, and dynamic routing, or add a keyword override to an existing bitlink_id.

Create Campaign

Create a Bitly campaign in a group, optionally associating channel GUIDs.

Create Channel

Create a Bitly channel in a group, optionally associating campaign bitlinks.

Create Group Export

Build a synchronous CSV export of group link engagements, links, or QR codes.

Create QR Code

Create a QR code in a Bitly group for an existing Bitlink, Link-in-Bio site, or a stand-alone long URL.

Create Site

Create an empty Bitly Site in a group with default appearance settings.

Create Site Block

Create a Bitlink, social, YouTube video, image, digital business card, or text block on a Bitly Site.

Create Site Container

Create a carousel or grid container for a set of content on a Bitly Site.

Create Site Image

Attach a previously uploaded image to a Bitly Site and return its URL and GUID.

Create Static QR Code

Generate a static QR image for raw content without creating or saving a Bitly QR resource.

Create Webhook

Create a Bitly webhook for an organization, optionally associated with a group.

Delete Bitlink

Permanently delete an eligible unedited hash Bitlink.

Delete QR Code

Permanently delete a QR code that has not been redirected and is not for a custom link.

Delete Site

Delete an existing Bitly Site by its GUID.

Delete Site Block

Delete a block of any type from a Bitly Site, rather than deactivate it.

Delete Site Redirect

Delete a redirect for a Bitly Site by its site ID, custom domain, and keyword (back-half).

Delete Webhook

Delete a Bitly webhook by GUID to stop its event deliveries, returning an empty object on success.

Discard Site Draft

Discard a Bitly Site's in-progress draft by its site GUID.

Expand Link

Resolve a Bitlink to its current destination and destination history, when available.

Get Account Context

Return the authenticated Bitly user together with accessible groups and organizations needed by other tools.

Get Aggregate Site Analytics

Retrieve aggregate analytics for Bitly Sites: overview, views over time or by city/country/device/referrer, button clicks over time or by city/country/device, top clicked buttons, or digital business card downloads over time.

Get Bitlink

Retrieve Bitlink metadata, including destination, title, tags, archive or deletion state, and associated QR code IDs.

Get Bitlink Activity

Return paid-plan click or engagement analytics for a Bitlink as a timeline or summary.

Get Bitlink Referrer Analytics

Get Bitlink click analytics by AI agent, referrer name, or referrers grouped by domain.

Get Bitlink Traffic Sources

Break down paid-plan Bitlink click analytics by country, city, device, referrer, or referring domain.

Get Campaign

Retrieve a Bitly campaign by GUID to inspect its name, description, owning group, creator, timestamps, and resource references.

Get Channel

Retrieve a Bitly channel by GUID to inspect its name, owning group, creation and modification timestamps, and resource references.

Get Custom Bitlink

Retrieve a Custom Bitlink's details, current destination Bitlink, and redirect history.

Get Custom Bitlink Analytics

Retrieve time-bucketed clicks across a Custom Bitlink's entire history or click counts grouped by its historical destinations.

Get Custom Domain

Retrieve a Bitly custom domain's verification state, group assignments, redirects, deep-link applications, and SSL configuration.

Get Custom Domain DNS

Inspect a Bitly custom domain's current DNS records, detected DNS provider, required registrar records, and whether the records match a valid configuration.

Get Domain Agreements

Retrieve the registrar agreements a user must accept before Bitly registers a domain.

Get Group

Retrieve a Bitly group by GUID, including its organization, your role, branded short domains, timestamps, and resource references.

Get Group Analytics

Retrieve one group analytics report: shorten counts, geography/devices/referrers, engagement rankings or timeline, link clicks, QR scans, historical usage, or agentic traffic rollup.

Get Group Preferences

Retrieve a Bitly group's preferences, including its preferred domain for shortened links.

Get Group Tags

Retrieve tags currently used in a Bitly group for Bitlinks or QR codes.

Get OAuth App

Retrieve a Bitly OAuth app by client ID to inspect its name, description, link, PKCE requirement, and first-party status.

Get Organization

Retrieve a Bitly organization by GUID, including its subscription tier, your role, branded short domains, authentication requirements, timestamps, and resource references.

Get Organization Shorten Counts

Read an organization's shorten counts over a specified time window, supplying unit and units.

Get QR Code

Retrieve a Bitly QR code by ID to inspect its destination, appearance, GS1 metadata, tags, expiration, and dynamic routing.

Get QR Code Analytics

Get a QR Code's scan timeline, total, or country, city, device OS or browser breakdown for a time window.

Get QR Code Image

Retrieve an existing Bitly QR code's image as a base64 data URI in qr_code_image, suitable for an HTML image src.

Get Site

Retrieve a Bitly Site by its GUID, including content, appearance, and publication settings.

Get Site Analytics

Retrieve one Bitly Site analytics report: country, city, device, or referrer views, link performance, a views timeline, or a views summary.

Get Top Group Engagements

Retrieve a group's top Bitlinks and decoupled QR codes ranked together by engagement count over a time window.

Get Usage and Limits

Inspect monthly plan quotas, hourly endpoint budgets, and optional group feature usage before performing quota-consuming work.

Get Webhook

Retrieve a Bitly webhook by GUID to inspect its delivery configuration, subscribed event, status, owning organization and group, and lifecycle timestamps.

List Bitlinks

List or search Bitlinks owned by a group, one cursor-controlled page at a time.

List Branded Short Domains

List verified custom domains the authenticated user can shorten links with, across all their organizations and groups.

List Campaigns

List campaigns for the authenticated Bitly user, optionally filtered by group GUID.

List Channels

List channels available to the authenticated Bitly user, optionally filtered by group GUID and campaign GUID.

List Custom Domains

List custom domains with verification states, group assignments, HTTPS settings, deep-link applications, and SSL certificate details.

List QR Codes

List one page of QR codes in a Bitly group in reverse chronological order, optionally filtering by search text, destination, creation time, creator, tags, QR type, customization, GS1, archive, expiration, or dynamic routing status.

List Sites

List one page of active Bitly Sites owned by a group, optionally filtered by site URL.

List Site Templates

List available Bitly Site templates, optionally by onboarding category.

List Sorted Bitlinks

Retrieve a group's Bitlinks ranked by clicks for a time window.

List Webhooks

List all webhooks available for a Bitly organization by organization GUID.

Prevalidate Site YouTube Video

Validate a YouTube video ID and construct the content needed for a Bitly Site YouTube video button without creating the button.

Publish Site

Publish a Bitly Site's draft, replacing the production site when changes have been made.

Redirect QR Code

Change the destination URL of a stand-alone Bitly QR code by QR code ID.

Register Domain

Register (purchase) a domain for a Bitly organization and configure its DNS.

Search Domains

Search domains Bitly can register for an organization.

Shorten Link

Create an ordinary Bitly short link for a long URL in a specific group.

Update Bitlink

Update safe metadata or archive state for a Bitlink; this tool does not redirect destinations or configure advanced routing.

Update Campaign

Update a Bitly campaign's name, description, associated group, or channels.

Update Channel

Update a Bitly channel's name, group, or Bitlink campaign associations and return its updated details; supplying Bitlinks replaces the channel's entire Bitlink membership.

Update Custom Bitlink

Move an existing custom keyword (back-half) to a different Bitlink.

Update Custom Domain

Change a verified Bitly custom domain's redirects and HTTPS/HSTS settings.

Update Group

Update a Bitly group's name, associated organization, or branded short domains.

Update Group Preferences

Update a Bitly group's preferred short domain.

Update QR Code

Update an existing Bitly QR code's title, appearance, archive status, expiration, tags, or dynamic routing rules by QR code ID.

Update Site

Update a Bitly Site's URI, display name, description, or attached QR code.

Update Site Appearance

Update a Bitly Site's theme, layout, fonts, colors, images, header, buttons, and social icon appearance.

Update Site Block

Update an existing Bitly Site block's content, appearance, schedule, active or pinned state, or parent container.

Update User

Update the authenticated Bitly user's display name or default group.

Update Webhook

Update an existing Bitly webhook's delivery destination, event, activity, organization, group, or OAuth settings.

Upgrade QR Code to Bitlink

Upgrade a standalone (decoupled) QR code to a coupled QR code by associating it with its underlying Bitly short link.

Verify Webhook

Test an existing Bitly webhook's configuration by sending a ping event to its configured webhook URL.

SETUP GUIDE

Connect Bitly MCP Tool with your Agent

1

Install Composio

typescript
npm install @composio/core ai @ai-sdk/mcp @ai-sdk/openai
Install the Composio SDK and your agent framework
2

Create a session with MCP enabled

typescript
import { Composio } from "@composio/core";

const composio = new Composio();
const { mcp } = await composio.create("your-user-id", {
  toolkits: ["bitly"],
  mcp: true,
});
Create a session scoped to Bitly and read its MCP URL and headers
3

Connect your agent to the MCP server

typescript
import { createMCPClient } from "@ai-sdk/mcp";
import { openai } from "@ai-sdk/openai";
import { generateText, stepCountIs } from "ai";

const client = await createMCPClient({
  transport: { type: "http", url: mcp.url, headers: mcp.headers },
});

const { text } = await generateText({
  model: openai("gpt-5.6-sol"),
  tools: await client.tools(),
  prompt: "Shorten https://example.com/summer-sale using Bitly and return the short link",
  stopWhen: stepCountIs(10),
});

console.log(text);
await client.close();
Pass the session's MCP URL and headers to your agent and run a Bitly request
SETUP GUIDE

Connect Bitly API Tool with your Agent

1

Install Composio

typescript
npm install @composio/core @composio/openai openai
Install the Composio SDK, the OpenAI provider, and the OpenAI SDK
2

Create a Composio session

typescript
import OpenAI from "openai";
import { Composio } from "@composio/core";
import { OpenAIResponsesProvider } from "@composio/openai";

const composio = new Composio({ provider: new OpenAIResponsesProvider() });
const client = new OpenAI();

const session = await composio.create("your-user-id", { toolkits: ["bitly"] });
const tools = await session.tools();
Initialize Composio with the OpenAI Responses provider and create a session scoped to Bitly
3

Run Bitly tools with your agent

typescript
let response = await client.responses.create({
  model: "gpt-5.6-sol",
  tools,
  input: [{ role: "user", content: "Shorten https://example.com/summer-sale using Bitly and return the short link" }],
});

while (response.output.some((o) => o.type === "function_call")) {
  const outputs = await composio.provider.handleToolCalls(session, response.output);
  response = await client.responses.create({
    model: "gpt-5.6-sol",
    tools,
    previous_response_id: response.id,
    input: outputs,
  });
}

console.log(response.output_text);
Send a request, execute the Bitly tool calls through the session, and print the final answer

Why Use Composio?

AI Native Bitly Integration

  • Supports both Bitly MCP and direct API based integrations
  • Structured, LLM-friendly schemas for reliable link and QR code actions
  • Rich coverage for creating, reading, and analyzing your Bitly links

Managed Auth

  • Built-in credential handling for Bitly API keys and OAuth connections
  • Central place to manage, scope, and revoke Bitly access
  • Per user and per environment credentials instead of hard-coded keys

Agent Optimized Design

  • Tools are tuned using real error and success rates to improve reliability over time
  • Comprehensive execution logs so you always know which Bitly links were created, updated, or analyzed

Enterprise Grade Security

  • Fine-grained RBAC so you control which agents and users can access Bitly
  • Scoped, least privilege access to Bitly links, groups, and analytics
  • Full audit trail of agent actions to support review and compliance
FAQ

Frequently asked questions

Bitly requires connections to go through your own OAuth app. You register it once with Bitly, add its client ID and secret in the Composio dashboard, and from then on everyone connects by signing in to Bitly as usual. Composio handles the rest of the flow and the token refresh.

Yes! Composio's Tool Router enables agents to use multiple toolkits. Learn more.

Yes. Composio is SOC 2 Type II compliant and is built to keep your Bitly connection and credentials secure. OAuth tokens and API keys are encrypted, and sensitive customer data is protected at rest and in transit.

Composio also undergoes independent security testing and continuously monitors its systems for security threats. You can review the latest reports and policies in the Composio Trust Center.

Composio maintains and updates all toolkit integrations automatically, so your agents always work with the latest API versions.

When you connect a Bitly account through Composio, every action runs under that account, so anything the agent creates, sends, or changes shows up in Bitly as done by you. Keep an approval step in your prompt for actions with side effects, such as sending or deleting, and have the agent draft first.

Exactly the ones Bitly lists on its consent screen when you connect. Review that screen before approving. If you connect a work account, your Bitly administrator may need to approve the app first, and you can revoke the access inside Bitly whenever you want.

Yes. Composio supports multiple connected accounts for the same app, and that works in Claude, ChatGPT, or any other assistant you connect through Composio. Give each Bitly connection a name such as work or personal, and the assistant uses the one you mention in the request. Each account keeps its own credentials and nothing is merged.

Composio refreshes Bitly tokens automatically, so day to day you do nothing. If you revoke access inside Bitly, or Bitly invalidates the session, the connection shows as expired in Composio and the agent stops acting on that account until you reconnect it, which is a single sign-in.

Composio's free Hobby plan includes 100,000 tool calls per month with no credit card, which covers most personal Bitly use. Paid plans add higher limits and team features. Your Bitly plan and its API limits still apply as usual.

Built-in connectors usually give one AI access to a limited set of apps. Many people use Composio because it lets their AI connect to more apps than it normally supports, or connect to multiple accounts for the same app (e.g. connect Claude to multiple Bitly accounts).

With Composio, you connect Bitly once and then use it across different AI assistants without setting it up separately in each one. Connect your apps to Composio once, then connect Composio to whichever AI you use, whether that's Claude, ChatGPT, Hermes, or your own custom assistant.

Start with Bitly.It takes 30 seconds.

Managed auth, hosted MCP servers, and every Bitly tool your agent needs.Free to start.

Start building