Bitly integration for AI agents.
Bitly integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Bitly tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.
Real Bitly actions, managed and audited.
Your user connects Bitly once; your agent can then use the Bitly API to shorten links, manage bitlinks, inspect click metrics, groups, organizations, QR codes, campaigns, and webhooks — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.
- 1
Your user grants Bitly access once (OAuth) — the token lands in the vault.
- 2
Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.
- 3
Every routed call appends a hash-chained audit record — nothing leaves your infra.
Supported Bitly tools.
91 tools are generated from the published Bitly catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.
Showing 91 tools. All published catalog entries are included in this page's server-rendered HTML.
- Add Custom Bitlink
- Add a keyword (or "custom back-half") to a Bitlink with a Custom Domain (domains must match). This endpoint can also be used for initial redirects to a link.
- Custom Bitlinks
- Shorten a Link
- Converts a long url to a Bitlink. You may see errors returned from this endpoint - "BRANDED_LINK_MONTHLY_LIMIT_EXCEEDED" occurs if you have shortened more links than your account is configured for for the month, and "DNS_CONFIGURATION_ERROR" occurs if you are attempting to shorten links against a custom domain which doesn't have DNS properly configured.
- Bitlinks
- Create Campaign
- Creates a new campaign.
- Campaigns
- Create Channel
- Creates a new channel.
- Campaigns
- Create a Bitlink
- Converts a long url to a Bitlink and sets additional parameters. You may see errors returned from this endpoint - "BRANDED_LINK_MONTHLY_LIMIT_EXCEEDED" occurs if you have shortened more links than your account is configured for for the month, and "DNS_CONFIGURATION_ERROR" occurs if you are attempting to shorten links against a custom domain which doesn't have DNS properly configured.
- Bitlinks
- Create a QR Code
- Create a new QR Code and return its metadata
- QR Codes
- Generate a static QR Code image
- Generate a static QR code image without creating or saving a QR code resource. SVG and PNG output are supported via the Accept header Contact your Account Manager to discuss enabling this feature for your account. The `render_customizations` field supports basic appearance options. Customizations that require the rasterize API are not supported: `gradient`, `background_gradient`, `frame`, `text`, and `logo`. The Accept header controls the response format: - `application/json` (default): Returns a JSON object with the image as a base64-encoded byte string. - `image/svg+xml`: Returns the raw SVG image. - `image/png`: Returns the raw PNG image.
- QR Codes
- Create Webhook
- Creates a webhook.
- Webhooks
- Delete a Bitlink
- Delete an unedited hash Bitlink.
- Bitlinks
- Delete a QR Code
- Delete a QR Code that has not been redirected and is not for a custom link. Also deletes the associated link (if applicable).
- QR Codes
- Delete Webhook
- Deletes a webhook.
- Webhooks
- Expand a Bitlink
- Returns the short link and long URL for the specified link.
- Bitlinks
- Retrieve a Bitlink
- Returns information for the specified link.
- Bitlinks
- Retrieve Bitlinks by Group
- Returns a paginated collection of Bitlinks for a group. The list of custom bitlinks has newest entries first.
- Bitlinks
- Get BSDs
- Fetch all Branded Short Domains
- BSDs
- Retrieve a Campaign
- Returns details for a campaign.
- Campaigns
- Retrieve Campaigns
- Returns the campaigns for the current authenticated user.
- Campaigns
- Get a Channel
- Returns a channel's details.
- Campaigns
- Retrieve Channels
- Returns the channels available to a user.
- Campaigns
- Get Clicks for a Bitlink
- Returns the click counts for the specified link in an array based on a date.
- Bitlinks
- Get Clicks for a Custom Bitlink's Entire History
- Returns the click counts for the specified link. This returns an array with clicks based on a date.
- Custom Bitlinks
- Get a Clicks Summary for a Bitlink
- Returns the click counts for the specified link rolled up into a single field.
- Bitlinks
- Retrieve Custom Bitlink
- Returns the details and history of the specified link.
- Custom Bitlinks
- Get Metrics for a Custom Bitlink by Destination
- Returns click metrics for the specified link by its historical destinations.
- Custom Bitlinks
- Get Engagement Counts for a Bitlink
- Returns an array of engagement counts for the specified link. The array is comprised of button click, click and scan counts for each time window, where the window is based on the provided unit.
- Bitlinks
- Get an Engagement Count Summary for a Bitlink
- Returns the engagement counts for the specified link rolled up into a single field.
- Bitlinks
- Retrieve a Group
- Returns details for a group.
- Groups
- Get clicks by group
- get number of clicks on bitlinks in a group
- Groups
- Get Scan Metrics for a Group by City
- Get QR code scan metrics for a group broken down by city.
- Groups
- Get Scan Metrics for a Group by Country
- Get QR code scan metrics for a group broken down by country.
- Groups
- Get Scan Metrics for a Group Over Time
- Get QR code scan metrics over time for a group.
- Groups
- Get limit usage for a group
- Get a group's current feature limit usage, optionally provide limit name(s) for usage on specific limit(s)
- Groups
- Get historical usage for a group
- Get a group's historical usage for specific limit(s) and date range. Refer to GET /v4/groups/{group_guid}/feature_usage endpoint response for available limit names.
- Groups
- Get Group Link Clicks by City
- Get link clicks by city for all links in a group.
- Groups
- Get Group Link Clicks by Country
- Get link clicks by country for all links in a group.
- Groups
- Get Group Link Clicks by Device
- Get link clicks by device for all links in a group.
- Groups
- Get Group Link Clicks by Referrer
- Get link clicks by referrer for all links in a group.
- Groups
- Get Group Link Clicks Over Time
- Get link clicks over time for all links in a group.
- Groups
- Get Click Metrics for a Group by City
- Returns the geographic origins of click traffic by city for the specified group.
- Groups
- Get Click Metrics for a Group by Country
- Returns the geographic origins of click traffic by country for the specified group.
- Groups
- Get Click Metrics for a Group by Device Type
- Returns the device types generating click traffic to the specified group's links.
- Groups
- Get Click Metrics for a Group by Referrer
- Returns metrics by referrer for the specified group's links.
- Groups
- Get Click Metrics for a Group by Referring Networks
- Returns metrics by referring networks for the specified group's links.
- Groups
- Get Group Metrics Over Time
- Get group engagement metrics over time for all links in a group.
- Groups
- Retrieve Group Preferences
- Returns preferences for the specified group.
- Groups
- Retrieve Group Shorten Counts
- Returns all the shorten counts for a group.
- Groups
- Retrieve Tags by Group
- Returns the tags currently used in the specified group. Maximum 1000.
- Groups
- Get Top Performing QR Codes for a Group
- Get top performing QR codes by scan count for all codes in a group.
- Groups
- Get Group Top Performing Links by Click
- Get top performing links by click for all links in a group.
- Groups
- Get Group Top Performing Links by Engagement
- Get top performing links by engagement for all links in a group.
- Groups
- Retrieve Groups
- Returns a list of groups in the organization.
- Groups
- Get Metrics for a Bitlink by City
- Returns the city origins of click traffic for the specified link.
- Bitlinks
- Get Metrics for a Bitlink by Country
- Returns the country origins of click traffic for the specified link.
- Bitlinks
- Get Metrics for a Bitlink by Device Type
- Returns the device types generating click traffic to the specified link.
- Bitlinks
- Get Metrics for a Bitlink by Referrer Name
- Returns referrer click counts for the specified link.
- Bitlinks
- Get Metrics for a Bitlink by Referrers
- Returns referrer click counts for the specified link.
- Bitlinks
- Get Metrics for a Bitlink by Referrers by Domain
- Returns click metrics grouped by referrers for the specified link.
- Bitlinks
- Get Metrics for a Bitlink by Referring Domains
- Returns the referring domain click counts for the specified link.
- Bitlinks
- Retrieve OAuth App
- Retrieve the details for the provided OAuth App client ID
- getoauthapp
- Retrieve an Organization
- Retrive details for the specified organization.
- Organizations
- Get Shorten Counts for an Organization
- Returns the shorten counts for a specific organization over a specified time period.
- Organizations
- Get Shorten Counts for an Organization by Group
- Returns the shorten counts for a specific organization by group for the current month.
- Organizations
- Retrieve Organizations
- Retrieve a list of organizations for the authenticated user. By default, only organizations permitted by the token's allowed_orgs are returned. Use include_all=true to return all organizations regardless of token restrictions. Each organization is annotated with its authentication requirements (require_sso, require_2fa) when configured.
- Organizations
- Get Plan Limits
- Returns all plan limits and counts available for an organization.
- Organizations
- Get Platform Limits
- Fetch all platform limits and counts available for an organization
- User
- Retrieve a QR Code
- Gets the QR code with a matching id.
- QR Codes
- Retrieve a QR Code image
- Get the image of a given QR Code. The Accept header controls how this is returned (options are "application/json", "image/svg+xml", and "image/png"). If the Accept header is "application/json" the format query parameter will determine the image format inside of the json (which will be base64 encoded and prefixed with its mime type as would be suitable for a HTML image src tag). To Return the QR Code image itself, set the Accept header to "image/svg+xml" or "image/png", or remove the Accept header and set the format query parameter to “svg” or “png” (if no format is specified the default will be “svg”).
- QR Codes
- Get Scans for a QR Code
- Returns an array of scan counts for the specified QR code. The array is comprised of scan counts for each time window, where the window is based on the provided unit.
- QR Codes
- Get Scans for a QR Code by Browser
- Returns the browsers generating scan traffic to the specified QR Code.
- QR Codes
- Get Metrics for a QR Code by City
- Returns the city origins of scan traffic for the specified QR Code.
- QR Codes
- Get Scans for a QR Code by Country
- Returns the country origins of scan traffic for the specified QR Code.
- QR Codes
- Get Scans for a QR Code by Device OS
- Returns the device os generating scan traffic for the specified QR Code.
- QR Codes
- Get Scans Summary for a QR Code
- Returns the scan counts for a QR Code rolled up into a single field for a specified time window, where the window is based on the provided unit.
- QR Codes
- Retrieve Sorted Bitlinks for Group
- Returns a list of Bitlinks sorted by group. The list of custom bitlinks has newest entries first.
- Bitlinks
- Retrieve Top Links and Decoupled QR Codes by Engagements
- Returns the bitlinks and decoupled QR codes in a group with the most engagements over the requested time window, ranked together in descending order by engagement count. Bitlinks and decoupled QR codes are returned in separate lists; `sorted_links` preserves the unified descending-by-count ordering across both, with each entry's id referencing either a bitlink or a QR code guid.
- Bitlinks
- Retrieve a User
- Returns information for the current authenticated user.
- User
- Retrieve Webhook
- Returns a webhook.
- Webhooks
- Get Webhooks
- Fetch all webhooks available for an Organization
- Webhooks
- Retrieve QR Codes by Group
- Retrieves a list of QR codes matching the filter settings. Values are in reverse chronological order. The pagination occurs by calling the next link in the pagination response object.
- QR Codes
- Create an inline CSV export for a group
- Build a CSV export synchronously and return it inline as a base64 data URI plus metadata. The export_type field selects the CSV shape: link_engagements_batch (engagement metrics for explicit bitlinks or a filter), links_list (link metadata roster), or qr_codes_list (QR code metadata roster). Row caps apply per request: 200 rows when metrics are included (link_engagements_batch, or include_metrics on a list export); 1000 rows for metadata-only list exports. When the match set exceeds the cap, truncated is true and only the first cap rows are returned; row_count reports how many data rows are in the CSV.
- Groups
- Update a Bitlink
- Updates fields in the specified link. To redirect the link (i.e. to update the Long URL), use the long_url parameter. This will always charge an encode limit.
- Bitlinks
- Bulk update bitlinks
- Bulk update can add or remove tags or archive up to 100 links at a time; The response includes a list of bitlink ids that were updated.
- Bitlinks
- Update Campaign
- Updates a campaign's details.
- Campaigns
- Update a Channel
- Updates an existing channel.
- Campaigns
- Update Custom Bitlink
- Move a keyword (or custom back-half) to a different Bitlink (domains must match).
- Custom Bitlinks
- Update a Group
- Updates the details of a group.
- Groups
- Update Group Preferences
- Updates preferences for a group.
- Groups
- Update a QR Code
- Updates the QR code with a matching id and returns it.
- QR Codes
- Update a User
- Update fields in the user
- User
- Update Webhook
- Update a webhook
- Webhooks
- Verify Webhook
- Sends ping event to test webhook configuration.
- Webhooks
Bitly integration, answered
- How do AI agents use Bitly through Open Connector?
- Your user connects Bitly once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Bitly tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
- Is this a Bitly MCP server?
- Yes. Open Connector can serve Bitly as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Bitly actions with credentials injected server-side.
- Where do Bitly credentials live?
- In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.
Give your agents Bitly — keep the keys.
Open source, self-hostable, with Bitly credentials that never leave your infrastructure. Run it from source today.