A side-by-side look at the Vk MCP Server and SpeedContent Social MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Vk MCP Server for social media work as a local process; choose SpeedContent Social for social media. You can also run both side by side in one mcpServers block.
VK_ACCESS_TOKEN, VK_TIMEOUT_MS, VK_API_BASE.vk_users_get, vk_users_search, vk_wall_get.SPEEDCONTENT_API_KEY.generate_social_post, score_text, humanize_text.Rows where the two servers differ are marked.
| Spec | S SpeedContent Social | |
|---|---|---|
| Category | Social Media | Social Media |
| Quality signal | 65/100 · Great | 53/100 · Good |
| Install command | Confirmed | Not confirmed yet |
| Transport | Local subprocess (stdio) | — |
| Auth | API key required | API key required |
| Pricing | Free | Not declared |
| Required env vars | VK_ACCESS_TOKENVK_TIMEOUT_MSVK_API_BASE | SPEEDCONTENT_API_KEY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 14 | 0 |
| Directory activity | 5 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 19 | 5 |
| Full listing | View Vk MCP Server | View SpeedContent Social |
vk_users_getLook up VK users by numeric ID or short name (e.g. durov). Use this to resolve a name to an ID before calling other tools, or to check whether a profile is closed.vk_users_searchFind VK users by name, optionally narrowed by city, country, sex or age. Returns matches with a total count; page through them with offset.vk_wall_getRead posts from a user or community wall, newest first. Pass domain for a short address (durov) or owner_id for a numeric one — negative for a community, positive for a person. Each post carries its likes, reposts, comments and views.vk_wall_postPublish a post on a wall. To post in a community, set owner_id to the community ID with a minus sign (-123) and from_group true, otherwise it appears as your personal post on the community wall. Attach media with the attachment string that vk_photos_upload_wall returns. Returns the new post_id.vk_wall_create_commentAdd a comment to a post. owner_id is negative for a community. Returns the new comment_id.vk_wall_get_by_idFetch particular posts by their full IDs in {owner_id}_{post_id} form, e.g. -1_340393. Use it to re-read a post you already know about, such as one you just published.vk_wall_editReplace the text or attachments of an existing post. owner_id is negative for a community. Editing overwrites the previous content, so pass the full new text rather than an addition.vk_wall_deleteDelete a post from a wall. owner_id is negative for a community. This cannot be undone.vk_photos_upload_wallUpload a photo so it can be attached to a post. Takes a URL or a local file path, runs VK's three-step upload, and returns an attachment string like photo-1_2 to pass to vk_wall_post or vk_wall_edit. group_id is positive here, without the minus sign.vk_groups_searchFind communities by keyword, optionally narrowed by type, country, city or sort order. Returns matches with a total count.vk_groups_get_membersList the members of a community. Returns bare user IDs unless you ask for fields, in which case it returns profiles. Many communities hide their member list, which comes back as an access error rather than an empty list.vk_groups_joinJoin a community as the token owner, or send a join request if it is closed. group_id is positive here, without the minus sign.generate_social_postWrite a social media post from scratch for a given platform and topic. Use this when you do not already have a draft — for example to produce several variations at once, or for platforms whose conventions you are unsure of. If you have already written the post yourself, prefer score_text and humanize_text, which check and fix your own wording instead of replacing it. Returns a job id immediately — poll it with check_social_job, which usually completes in 20-90 seconds. Costs credits.score_textCheck how machine-written a piece of text reads, using an external AI detector. Returns a score from 0 to 65 where 0 reads as human and anything above 30 is likely to be flagged. Use this on text you have already written to find out whether it will pass before it is published — it is a measurement you cannot make yourself. Costs 8 credits per call.humanize_textRewrite text so it no longer reads as machine-written, using an external humanizing service. Use this on your own writing when score_text says it would be flagged. Brand names, domains and any lines listed in `preserve` are restored verbatim afterwards, because the humanizer rewrites whole sentences and splits names. Costs 1 credit per 20 words.check_social_jobLook up a social post generation job by id. Returns the finished posts once the job completes, or its current progress while it runs. Costs nothing.list_social_platformsList the platforms generate_social_post supports, with each one's default post length and emoji policy. Costs nothing and makes no network call.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"bulatko-vk-mcp-server": {
"command": "npx",
"args": [
"-y",
"vk-mcp-server"
],
"env": {
"VK_ACCESS_TOKEN": "YOUR_VK_ACCESS_TOKEN_HERE",
"VK_TIMEOUT_MS": "YOUR_VK_TIMEOUT_MS_HERE",
"VK_API_BASE": "YOUR_VK_API_BASE_HERE"
}
}
}
}
No confirmed install command for SpeedContent Social yet — follow the setup steps linked from its listing page rather than a guessed package name.