npm tokportal-mcpstreamable-httpMITupdated 8d ago
TokPortal is the managed social infrastructure API: real TikTok, Instagram and YouTube accounts created, warmed and operated by human account managers in 16+ countries — exposed as a REST API and an MCP server. No OAuth per account, no 25-posts/day cap, no app review.
O que dá para fazer com TokPortal?
tokportal-mcp
TokPortal is the managed social infrastructure API: real TikTok, Instagram and YouTube accounts created, warmed and operated by human account managers in 16+ countries — exposed as a REST API and an MCP server. No OAuth per account, no 25-posts/day cap, no app review.
Docs https://developers.tokportal.com · API base https://app.tokportal.com/api/ext · OpenAPI https://developers.tokportal.com/openapi.json · MCP remote https://app.tokportal.com/api/ext/mcp · Get an API key https://app.tokportal.com/developer/api-keys?utm_source=npm&utm_medium=readme&utm_campaign=tokportal-mcp · llms.txt https://developers.tokportal.com/llms.txt
tokportal-mcp is the official Model Context Protocol server for the TokPortal API. It exposes every public API operation (91 tools) to Claude, Cursor, VS Code, Windsurf, Codex, Gemini CLI and any other MCP client — create bundles, upload videos, configure and publish accounts, read analytics, manage webhooks.
Two ways to use it:
| Mode | Transport | When to use |
|---|---|---|
Local (npx tokportal-mcp) |
stdio | Desktop clients, local agents, file uploads from disk |
Remote (https://app.tokportal.com/api/ext/mcp) |
Streamable HTTP | Hosted agents, no install; same tool catalogue |
Requires Node.js 20 or newer. The local server runs on it directly. Get an API key at https://app.tokportal.com/developer/api-keys?utm_source=npm&utm_medium=readme&utm_campaign=tokportal-mcp (format sk_ + 64 hex chars).
30-second quickstart
npm install -g tokportal-mcp
TOKPORTAL_API_KEY=sk_your_key_here tokportal-mcp
The server speaks MCP over stdio. Point any MCP client at it and ask, for example:
"Create a TikTok bundle in the USA with 5 videos, upload
./launch.mp4as video 1 with the caption 'Day 1', then publish the bundle."
That call chain uses tokportal_create_bundle → tokportal_upload_video_direct → tokportal_configure_bundle_video → tokportal_publish_bundle.
Programmatic smoke test with the MCP SDK:
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
const client = new Client({ name: "demo", version: "1.0.0" });
await client.connect(
new StdioClientTransport({
command: "npx",
args: ["-y", "tokportal-mcp"],
env: { ...process.env, TOKPORTAL_API_KEY: process.env.TOKPORTAL_API_KEY },
}),
);
const { tools } = await client.listTools(); // 91 tools
const me = await client.callTool({ name: "tokportal_get_current_user", arguments: {} });
console.log(tools.length, me.content[0].text);
Client configuration
Replace sk_your_key_here with your key. Every snippet below is the local stdio server; the remote URL variant is listed at the end.
Cursor
~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"tokportal": {
"command": "npx",
"args": ["-y", "tokportal-mcp"],
"env": { "TOKPORTAL_API_KEY": "sk_your_key_here" }
}
}
}
Claude Desktop
claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{
"mcpServers": {
"tokportal": {
"command": "npx",
"args": ["-y", "tokportal-mcp"],
"env": { "TOKPORTAL_API_KEY": "sk_your_key_here" }
}
}
}
Claude Code
claude mcp add tokportal -e TOKPORTAL_API_KEY=sk_your_key_here -- npx -y tokportal-mcp
# or the remote server:
claude mcp add --transport http tokportal https://app.tokportal.com/api/ext/mcp --header "X-API-Key: sk_your_key_here"
VS Code (GitHub Copilot agent mode)
.vscode/mcp.json:
{
"servers": {
"tokportal": {
"type": "stdio",
"command": "npx",
"args": ["-y", "tokportal-mcp"],
"env": { "TOKPORTAL_API_KEY": "sk_your_key_here" }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"tokportal": {
"command": "npx",
"args": ["-y", "tokportal-mcp"],
"env": { "TOKPORTAL_API_KEY": "sk_your_key_here" }
}
}
}
OpenAI Codex CLI
~/.codex/config.toml:
[mcp_servers.tokportal]
command = "npx"
args = ["-y", "tokportal-mcp"]
env = { TOKPORTAL_API_KEY = "sk_your_key_here" }
Gemini CLI
~/.gemini/settings.json:
{
"mcpServers": {
"tokportal": {
"command": "npx",
"args": ["-y", "tokportal-mcp"],
"env": { "TOKPORTAL_API_KEY": "sk_your_key_here" }
}
}
}
Remote server (Streamable HTTP)
Any client that supports remote MCP servers can connect to
https://app.tokportal.com/api/ext/mcp with either an X-API-Key: sk_... header
or Authorization: Bearer sk_.... Example for clients using the url form:
{
"mcpServers": {
"tokportal": {
"url": "https://app.tokportal.com/api/ext/mcp",
"headers": { "X-API-Key": "sk_your_key_here" }
}
}
}
Environment variables
| Variable | Required | Description |
|---|---|---|
TOKPORTAL_API_KEY |
yes | API key (sk_ + 64 hex). Only a SHA-256 hash is stored server-side. |
TOKPORTAL_BASE_URL |
no | Defaults to https://app.tokportal.com/api/ext. |
How the tools work
The server exposes TokPortal API actions as MCP tools over stdio. It is generated from the public API schema and uses the same X-API-Key authentication as the HTTP API.
- Tool names are
tokportal_<operation_id_snake_case>(tokportal_create_bundle,tokportal_list_accounts, ...). Path and query parameters are top-level inputs; JSON bodies go inbody. - Every tool carries MCP annotations:
title,readOnlyHint(GET),destructiveHint(DELETE / cancel / unpublish / reset / unschedule / revoke),idempotentHint(GET/PUT/DELETE) andopenWorldHint: false, so clients can ask for confirmation on destructive calls. - Multipart upload tools are generated from OpenAPI too. Binary fields are exposed as local path inputs such as
file_path, with the remaining form fields exposed by their schema names. - Mutations accept an optional
idempotency_key(sent asIdempotency-Key) except for secret-bearing operations (credential reveal, verification codes, webhook creation, signed upload URLs, report creation) which are never replayed.
The MCP server sends X-TokPortal-Client: tokportal-mcp/1.14.2 on API requests for observability and support diagnostics.
Failed tool calls return an error result with a diagnostics object containing request_id, retry_after_seconds, and rate_limit when those headers are available.
Legacy config using the globally installed binary still works:
{
"mcpServers": {
"tokportal": {
"command": "tokportal-mcp",
"env": {
"TOKPORTAL_API_KEY": "sk_your_key_here"
}
}
}
}
Source of truth
This package is generated from the TokPortal public OpenAPI schema
(https://developers.tokportal.com/openapi.json) in the private TokPortal
monorepo. src/generated.ts is regenerated on every release — do not edit it by
hand. See CONTRIBUTING.md for what we accept as PRs and
SECURITY.md for vulnerability reporting.
Links
- Documentation: https://developers.tokportal.com
- MCP guide: https://developers.tokportal.com/mcp
- SDKs & CLI: https://developers.tokportal.com/sdks-cli
- API reference (OpenAPI): https://developers.tokportal.com/openapi.json
- Other packages:
@tokportal/node·@tokportal/cli·tokportal(PyPI) ·github.com/tokportal/tokportal-go
MIT © TokPortal
Instalação
Adicione TokPortal ao seu cliente. Escolha o que você usa.
{
"servers": {
"tokportal-mcp": {
"type": "http",
"url": "https://app.tokportal.com/api/ext/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
claude mcp add tokportal-mcp -- npx -y tokportal-mcpcodex mcp add tokportal-mcp -- npx -y tokportal-mcpamp mcp add tokportal-mcp -- npx -y tokportal-mcp{
"mcpServers": {
"tokportal-mcp": {
"command": "npx",
"args": [
"-y",
"tokportal-mcp"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"tokportal-mcp": {
"command": "npx",
"args": [
"-y",
"tokportal-mcp"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"mcpServers": {
"tokportal-mcp": {
"command": "npx",
"args": [
"-y",
"tokportal-mcp"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"tokportal-mcp": {
"command": "npx",
"args": [
"-y",
"tokportal-mcp"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"tokportal-mcp": {
"command": "npx",
"args": [
"-y",
"tokportal-mcp"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"tokportal-mcp": {
"type": "local",
"command": "npx",
"args": [
"-y",
"tokportal-mcp"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"tokportal-mcp": {
"command": {
"path": "npx",
"args": [
"-y",
"tokportal-mcp"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y tokportal-mcpRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
Pontuação
39 / 100
Incompleta
- Documentação25/25
- Manutenção25/25
- Confiança16/20
- Capacidade0/15
- Instalação15/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 0 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 18 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Histórico de versões
| Versões | Publicada |
|---|---|
| 1.14.2Mais recente | 31 de ago. de 2026 |
| 1.14.1 | 31 de ago. de 2026 |
| 1.14.0 | 27 de ago. de 2026 |
| 1.13.1 | 22 de ago. de 2026 |
| 1.13.0 | 22 de ago. de 2026 |
| 1.12.2 | 20 de ago. de 2026 |
| 1.12.1 | 18 de ago. de 2026 |