About LamaTok
LamaTok is an MCP server that exposes the LamaTok TikTok data API to AI assistants. Its tools are generated from the OpenAPI spec at startup, with a curated core set or all non-deprecated endpoints available.
Key features
- 01Look up profiles and followers
- 02Read videos and comments
- 03Retrieve video and music download links
- 04Search hashtags and content
- 05Generate tools from the OpenAPI spec
Use cases
- 01Inspect a TikTok profile and its audience
- 02Find recent videos by a user
- 03Search content associated with a hashtag
MCP support
It provides MCP clients with read-only tools for the LamaTok API. The default is a curated core set, with an option to expose all non-deprecated endpoints.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y lamatok-mcpLAMATOK_KEYSecretLamaTok access key — get one at https://lamatok.com (100 free requests on signup)LAMATOK_TOOLScore (default): 23 curated tools, one per task. all: every endpoint.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMElamatok-mcp
MCP server for LamaTok — TikTok data API. Available on npm: lamatok-mcp.
Generates MCP tools from the LamaTok OpenAPI spec at startup. Tools map 1:1 to REST endpoints (GET /v1/user/by/username → get_v1_user_by_username). By default you get a core set of ~23 tools, one per task, each with a description that tells the assistant when to use it; LAMATOK_TOOLS=all exposes every non-deprecated endpoint.
Get 100 Free API Requests
Sign up with this link and get 100 free LamaTok requests — no credit card required. Enough to wire up the MCP server, try a few prompts in Claude/Cursor/Codex, and evaluate the data quality before committing.
Quick start
- Get an API key at lamatok.com.
- Add the server to your AI assistant.
- Ask your assistant something like:
- "Get the TikTok profile for @nasa."
- "List the last 10 videos by user_id 6707206320333226502."
- "Find recent TikTok videos for the hashtag
photography."
Claude Code
claude mcp add lamatok -e LAMATOK_KEY=your-api-key -- npx -y lamatok-mcp
Claude Desktop
Add to claude_desktop_config.json:
{
"mcpServers": {
"lamatok": {
"command": "npx",
"args": ["-y", "lamatok-mcp"],
"env": {
"LAMATOK_KEY": "your-api-key"
}
}
}
}
Cursor / Windsurf
Same shape as Claude Desktop — put the block under mcpServers in the app's MCP config file.
Zed
Add to ~/.config/zed/settings.json:
{
"context_servers": {
"lamatok": {
"command": "npx",
"args": ["-y", "lamatok-mcp"],
"env": {
"LAMATOK_KEY": "your-api-key"
}
}
}
}
OpenAI Codex
Append to ~/.codex/config.toml:
[mcp_servers.lamatok]
command = "npx"
args = ["-y", "lamatok-mcp"]
[mcp_servers.lamatok.env]
LAMATOK_KEY = "your-api-key"
Tools
Tools are generated at startup from the live LamaTok OpenAPI spec. The default core set keeps one endpoint per task and drops version duplicates:
| Group | Tools | Examples |
|---|---|---|
| Profiles and audience | 12 | get_v1_user_by_username, get_v2_user_medias_by_secUid, get_v1_user_followers_by_username |
| Videos and comments | 4 | get_v1_media_by_url, get_v1_media_by_id, get_v1_media_comments_by_id |
| Download links | 4 | get_v1_media_video_download_by_url, get_v1_media_music_download_by_id |
| Hashtags and search | 3 | get_v1_hashtag_info, get_v1_hashtag_medias, get_v2_search |
Core tools carry hand-written descriptions (what the tool does, when to prefer a sibling, pagination, billing) and every tool is annotated read-only. The list lives in src/curated.ts.
Set LAMATOK_TOOLS=all to expose every non-deprecated endpoint instead — same tool names as before, so existing prompts keep working. Tool names mirror their endpoint (GET /v1/user/by/username → get_v1_user_by_username); call tools/list over MCP for the current list with parameter schemas. /sys, Legacy, and System tag groups are excluded in both modes.
Configuration
| Variable | Description | Required |
|---|---|---|
LAMATOK_KEY | Your LamaTok access key (sent as x-access-key header) | yes |
LAMATOK_URL | Base URL. Default: https://api.lamatok.com | no |
LAMATOK_SPEC_URL | OpenAPI spec URL. Default: ${LAMATOK_URL}/openapi.json | no |
LAMATOK_TOOLS | core (default): curated set, one tool per task. all: every non-deprecated endpoint | no |
LAMATOK_TAGS | Whitelist: only include operations with these tags (comma-separated) | no |
LAMATOK_EXCLUDE_TAGS | Blacklist: additional tags to exclude (on top of Legacy, System, /sys) | no |
LAMATOK_TIMEOUT_MS | Per-request timeout for API calls. Default: 30000 | no |
LAMATOK_SPEC_TIMEOUT_MS | Timeout for the startup spec fetch. Default: 60000 | no |
LAMATOK_SPEC_RETRY_DELAY_MS | Base delay between the 3 startup spec fetch attempts. Default: 2000 | no |
LAMATOK_MAX_RESPONSE_BYTES | Max bytes read from each API response. Default: 10485760 (10 MB) | no |
LAMATOK_MAX_SPEC_BYTES | Max bytes read from the OpenAPI spec. Default: 8388608 (8 MB) | no |
Legacy, System, and /sys tags are excluded by default. Deprecated operations are also skipped.
If LAMATOK_URL points to a host other than api.lamatok.com, the server prints a warning on startup — your key will be sent there, so only use it for a self-hosted or proxied LamaTok.
Requests are sent with User-Agent: lamatok-mcp/<version>.
How it works
AI Assistant ←stdio→ lamatok-mcp ──https──> api.lamatok.com
│
└─ fetches /openapi.json once on startup,
builds one MCP tool per GET endpoint
(core set by default)
Tool arguments map to the endpoint's query and path parameters. The response body is returned as-is (JSON text). Non-2xx responses are surfaced as tool errors with the HTTP status and body.
Development
git clone https://github.com/subzeroid/lamatok-mcp.git
cd lamatok-mcp
npm install
npm run build
LAMATOK_KEY=your-key node dist/index.js
Run in watch mode:
LAMATOK_KEY=your-key npm run dev
Run tests (unit + stdio smoke tests against a local mock server, no network/API key required):
npm test
License
MIT
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.