A side-by-side look at the Verified Handles and Vk MCP Server MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Verified Handles for social media work; choose Vk MCP Server for social media as a local process. You can also run both side by side in one mcpServers block.
get_entry, search_entries, find_by_handle.VK_ACCESS_TOKEN, VK_TIMEOUT_MS, VK_API_BASE.vk_users_get, vk_users_search, vk_wall_get.Rows where the two servers differ are marked.
| Spec | V Verified Handles | |
|---|---|---|
| Category | Social Media | Social Media |
| Quality signal | 55/100 · Good | 65/100 · Great |
| Install command | Not confirmed yet | Confirmed |
| Transport | — | Local subprocess (stdio) |
| Auth | Not declared | API key required |
| Pricing | Free | Free |
| Required env vars | None listed | VK_ACCESS_TOKENVK_TIMEOUT_MSVK_API_BASE |
| Verified owner | Community listing | Community listing |
| GitHub stars | 31 | 14 |
| Directory activity | 0 views 0 installs 0 upvotes | 5 views 0 installs 0 upvotes |
| Tools | 5 | 19 |
| Full listing | View Verified Handles | View Vk MCP Server |
get_entryOne entry, by VHID, short name or Wikidata QID: its public record (title, description, handles, image, URL) and, as `editing`, what the editor would load for this key — the current revision, the editable fields, every handle with who manages it (the Wikidata sync or the site), which fields the sync manages, and whether this key may edit it live. Without an API key, the public record alone.search_entriesSearch the entries as the site search does: words match titles, subtitles and descriptions; a Wikidata QID finds the entries linked to it; a VHID finds that entry and the entries that link to it.find_by_handleWhich public entries list a handle: “is x.com/someone an official account, and whose?”. Give a profile’s address as url (https://x.com/someone), or platform (its catalog id: twitter, instagram, youtube, …) and value (someone or @someone). Answers each entry’s VHID, title and URL, the handle as the entry lists it, and whether that handle is verified; an empty list when no entry lists it. Case is ignored where the platform ignores it. Email addresses are not looked up.get_entry_historyAn entry’s public edit history, newest first (`next_offset` pages on). A merged entry’s key gives its own history.get_entriesUp to 50 entries’ public records in one call, by VHID or short name (not a Wikidata QID: get_entry or search_entries finds an entry by its item), each answered as get_entry answers it signed out — the entry, or not_found — in the order given. A name given twice is answered once.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.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.
No confirmed install command for Verified Handles yet — follow the setup steps linked from its listing page rather than a guessed package name.
{
"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"
}
}
}
}