MCP Server
Let AI agents manage your s.id account through the Model Context Protocol.
Overview
s.id runs a hosted MCP (Model Context Protocol) server so AI agents and MCP-compatible clients — like Claude — can create links, manage microsites, and read analytics on your behalf. It speaks JSON-RPC 2.0 over a single endpoint and authenticates with the same API key or OAuth 2.0 credentials as the REST API.
Connect
Point your MCP client at the endpoint below and authenticate with an API key or an OAuth 2.0 Bearer token — the server auto-discovers your authorization server via RFC 9728.
Endpoint: https://mcp.s.id/mcp
{
"mcpServers": {
"sid": {
"url": "https://mcp.s.id/mcp",
"headers": {
"Authorization": "Bearer sk_live_..."
}
}
}
}Tools
28 tools are available, covering links, microsites, QR codes, and account data. Each tool requires the same scope as its REST equivalent.
Links
| Tool | Description | Scope |
|---|---|---|
| create_link | Create a short link | links:write |
| bulk_create_links | Create multiple short links in one call | links:write |
| get_link | Get a link by ID | links:read |
| list_links | List links | links:read |
| update_link | Update a link | links:write |
| delete_link | Archive a link | links:archive |
| unarchive_link | Restore an archived link | links:write |
| check_short_availability | Check if a custom slug is available | links:read |
| get_link_stats | Get a link's click timeline | links:analytics |
| get_link_lifetime_stats | Get a link's lifetime click count | links:analytics |
| get_account_stats | Get account-level click analytics | links:analytics |
Microsites
| Tool | Description | Scope |
|---|---|---|
| create_microsite | Create a microsite | microsites:write |
| get_microsite | Get a microsite by slug | microsites:read |
| list_microsites | List microsites | microsites:read |
| update_microsite | Update a microsite | microsites:write |
| delete_microsite | Delete a microsite | microsites:delete |
| check_microsite_slug | Check if a microsite slug is available | microsites:read |
| create_microsite_component | Add a component to a microsite | microsites:write |
| list_microsite_components | List a microsite's components | microsites:read |
| update_microsite_component | Update a microsite component | microsites:write |
| delete_microsite_component | Delete a microsite component | microsites:delete |
| order_microsite_components | Reorder a microsite's components | microsites:write |
QR
| Tool | Description | Scope |
|---|---|---|
| get_link_qr | Get a link's QR code settings | qr:read |
| set_link_qr | Customize a link's QR code | qr:write |
| get_global_qr | Get global QR code settings | qr:read |
| set_global_qr | Customize global QR code settings | qr:write |
Account
| Tool | Description | Scope |
|---|---|---|
| get_user_info | Get the authenticated user's profile | user:read |
| get_quota | Get the authenticated user's account quota | user:read |
Quota
A separate quota pool
MCP tool calls draw from their own daily quota, separate from your REST API call quota — using the MCP server does not consume your /v2 API allowance. Only tools/call requests count against it; tools/list and initialize are free.
View your usageAuthentication
API key or OAuth 2.0
Authenticate with the same sk_live_ API key or OAuth 2.0 Bearer token you use for the REST API — s.id is its own OAuth 2.0 authorization server, so a client can complete the full authorization flow and use the resulting token here.
OAuth 2.0 guide