Let an AI assistant read and manage the TikTok, Instagram Reels and YouTube Shorts accounts and videos you track in Shortimize: views, growth over time and account analytics. The server exposes the same operations as the Shortimize API as MCP tools.
Server URL
Signed out? The app asks you to sign in first. After signing in, open Settings > API & Automation.
Transport: Streamable HTTP (JSON-RPC 2.0 over POST). Registry name: com.shortimize/mcp.
Requirements
- A Shortimize account with an API key. See Get an API key.
- An MCP client that supports remote (HTTP) servers.
Quickstart
- Get an API key. Sign in at app.shortimize.com and copy it from your settings. Details in Get an API key.
- Add the server. Pick your client under Connect your client and paste the key where the snippet says
<YOUR_API_KEY>. - Try a prompt. Ask: "How many accounts and videos am I tracking right now?" The assistant calls
total_accountsandtotal_videos.
Get an API key
Sign in at app.shortimize.com and open your settings (Settings > API & Automation). The API key is shown there (see also Obtaining API Access).
Open API settingsTreat the key like a password and never commit it to a repository.
Connect your client
Replace <YOUR_API_KEY> with your key in every example. Every snippet has a copy button.
Claude Code
Terminal
Claude
- Open Settings > Connectors.
- Choose Add custom connector.
- Name it
Shortimizeand use this URL, which carries the key as a query parameter:
Connector URL
Because the key is part of the URL, keep that connector private to your own account.
Cursor
Add this to your mcp.json:
mcp.json
JSON
Clients that read an mcp.json-style config and support remote servers with headers can use the same JSON:
mcp.json
If a client cannot set headers, use the ?apiKey= URL instead. Exact config keys differ between clients, so check your client's remote MCP documentation.
Authentication
Send the key in one of two ways:
| Method | Format |
|---|---|
| Header | Authorization: Bearer <YOUR_API_KEY> |
| Query parameter | https://api.shortimize.com/mcp?apiKey=<YOUR_API_KEY> |
Prefer the header. The query parameter puts your key inside the URL. Use the header whenever your client can set one, and treat any URL that contains the key as a secret.
The MCP handshake (initialize, tools/list) does not need a key, so clients can list tools before you sign in. Calling a tool without a key returns:
Error without a key
Use the authenticate tool to check that a key works; it returns your organisation name.
Tools
The server exposes 32 tools, grouped by what they work on.
Some tools change your data. track_*, stop_tracking_*, the bulk variants, and the collection create, update, delete, add and remove tools change your data. Review what your assistant is about to run before approving those calls.
Accounts
| Tool | What it does |
|---|---|
get_all_accounts | Lists every account you track, with follower counts and view totals. Try: "List my tracked accounts by followers." |
get_account | Gets one tracked account with its current numbers. Try: "Show me the stats for this account: [profile URL]" |
get_account_history | Daily metrics for one account over a date range. Try: "How did this account's views change over the last 30 days?" |
get_videos_linked_to_account | Lists the tracked videos that belong to one account. Try: "Which videos from this account are tracked?" |
track_account | Starts tracking an account. Try: "Start tracking this TikTok account: [profile URL]" |
bulk_track_accounts | Starts tracking up to 500 accounts in one request. Try: "Track all of these account links." |
stop_tracking_account | Stops tracking an account. Try: "Stop tracking this account: [profile URL]" |
bulk_stop_tracking_accounts | Stops tracking up to 500 accounts in one request. Try: "Stop tracking these accounts." |
refresh_account_data | Refreshes an account if it was not updated in the last 4 hours. Try: "Refresh this account's data." |
total_accounts | Counts the accounts you track. Try: "How many accounts am I tracking?" |
Videos
| Tool | What it does |
|---|---|
get_all_videos | Lists the videos you track, with latest views and growth. Try: "Show my tracked videos with the most views." |
get_video | Gets one tracked video with its current numbers. Try: "Show me the stats for this video: [video URL]" |
get_video_history | Daily metrics for one video over a date range. Try: "Show this Reel's view history for the last two weeks." |
track_video | Starts tracking a video. Try: "Track this YouTube Short: [video URL]" |
bulk_track_videos | Starts tracking up to 500 videos in one request. Try: "Track all of these video links." |
stop_tracking_video | Stops tracking a video. Try: "Stop tracking this video: [video URL]" |
bulk_stop_tracking_videos | Stops tracking up to 500 videos in one request. Try: "Stop tracking these videos." |
refresh_video_data | Refreshes a video if it was not updated in the last 4 hours. Try: "Refresh this video's data." |
total_videos | Counts the videos you track. Try: "How many videos am I tracking?" |
Collections
| Tool | What it does |
|---|---|
get_all_collections | Lists your collections. Try: "List my collections." |
get_collection | Gets one collection, optionally with video and account counts. Try: "Show the Creators collection with counts." |
get_collection_accounts | Lists the accounts in a collection. Try: "Which accounts are in my Creators collection?" |
get_collection_videos | Lists the videos in a collection. Try: "List the videos in my October campaign collection." |
create_collection | Creates a collection. Try: "Create a collection called October campaign." |
update_collection | Changes a collection's name, parent, access or display settings. Try: "Rename the October campaign collection." |
delete_collection | Deletes a collection and its links to accounts and videos. Try: "Delete the October campaign collection." |
add_accounts_to_collection | Adds accounts to a collection. Try: "Add these accounts to my Creators collection." |
remove_accounts_from_collection | Removes accounts from a collection. Try: "Remove this account from my Creators collection." |
add_videos_to_collection | Adds videos to a collection. Try: "Add these videos to my October campaign collection." |
remove_videos_from_collection | Removes videos from a collection. Try: "Remove this video from the October campaign collection." |
Organisation
| Tool | What it does |
|---|---|
authenticate | Checks your API key and returns your organisation name. Try: "Check that my Shortimize connection works." |
get_organisation_history | Daily metrics across everything your organisation tracks. Try: "Show my organisation's daily views for the last 30 days." |
Example prompts
- "Which of my tracked accounts gained the most views in the last 30 days?"
- "Start tracking this TikTok account and add it to my
Creatorscollection: [profile URL]" - "Show the view history for this Instagram Reel over the last two weeks."
- "How many accounts and videos am I tracking right now?"
- "Create a collection called
October campaignand add these YouTube Shorts videos to it."
Plans and rate limits
MCP calls use the same plan limits as the REST API. Some tools return masked metrics on lower plans. See the API reference for per-endpoint details.
| Plan | Requests per minute (standard endpoints) |
|---|---|
| Limited (trial) | 5 |
| Basic | 15 |
| Premium | 30 |
What works without a key
| Request | Without a key | With a key |
|---|---|---|
initialize, tools/list | Works | Works |
| Any tool call | Returns Missing API key | Runs against your organisation |
Security and access
- Treat the API key like a password and never commit it to a repository.
- Prefer the
Authorization: Bearerheader. If you must use the?apiKey=URL, treat that URL as a secret. - Review write operations (tracking, stopping, collection changes) before your assistant runs them.
Data handling
Tool calls run against the data in your Shortimize organisation, using the permissions of the API key you supply. See the Privacy Policy and Terms for how Shortimize handles data.
Support
Questions or problems: [email protected].