Skip to main content
ClaudeWave

Model Context Protocol (MCP) server for VK (VKontakte) social network API

MCP ServersRegistry oficial12 estrellas5 forks● JavaScriptMITActualizado today
ClaudeWave Trust Score
95/100
✓ Verified
Passed
  • ✓Open-source license (MIT)
  • ✓Actively maintained (<30d)
  • ✓Clear description
  • ✓Topics declared
  • ✓Documented (README)
Last scanned: 10/2/2026
Install in Claude Code / Claude Desktop
Method: NPX · vk-mcp-server
Claude Code CLI
claude mcp add vk -- npx -y vk-mcp-server
claude_desktop_config.json (Claude Desktop)
{
  "mcpServers": {
    "vk": {
      "command": "npx",
      "args": ["-y", "vk-mcp-server"],
      "env": {
        "VK_ACCESS_TOKEN": "<vk_access_token>"
      }
    }
  }
}
1. Run the command above in your terminal (Claude Code), or paste the JSON config into claude_desktop_config.json (Claude Desktop).
2. Replace any <placeholder> values with your API keys or paths.
3. Restart Claude. The MCP server and its tools appear automatically.
Detected environment variables
VK_ACCESS_TOKEN
Casos de uso

Resumen de MCP Servers

# VK MCP Server

<p align="center">
  <img src="https://upload.wikimedia.org/wikipedia/commons/2/21/VK.com-logo.svg" width="100" alt="VK Logo">
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/vk-mcp-server"><img src="https://img.shields.io/npm/v/vk-mcp-server.svg" alt="npm version"></a>
  <a href="https://www.npmjs.com/package/vk-mcp-server"><img src="https://img.shields.io/npm/dm/vk-mcp-server.svg" alt="npm downloads"></a>
  <a href="https://github.com/bulatko/vk-mcp-server/actions"><img src="https://github.com/bulatko/vk-mcp-server/workflows/CI/badge.svg" alt="CI"></a>
  <a href="https://github.com/bulatko/vk-mcp-server/blob/master/LICENSE"><img src="https://img.shields.io/npm/l/vk-mcp-server.svg" alt="license"></a>
</p>

<p align="center">
  <strong>Model Context Protocol (MCP) server for VK (VKontakte) social network API</strong>
</p>

<p align="center">
  <strong>English</strong> · <a href="README.ru.md">Русский</a> · <a href="https://bulatko.github.io/vk-mcp-server/">Сайт (RU)</a>
</p>

<p align="center">
  Enables AI assistants like Claude to interact with VK through a standardized interface.
</p>


<p align="center">
<a href="https://glama.ai/mcp/servers/bulatko/vk-mcp-server">
  <img width="380" height="200" src="https://glama.ai/mcp/servers/bulatko/vk-mcp-server/badge" alt="vk-mcp-server MCP server" />
</a>
</p>

---

<p align="center">
  <img src="docs/img/wall-card.jpg" width="420" alt="A VK wall rendered as a card in the chat: posts with their photos, clip previews and counters" />
</p>

<p align="center">
  <img src="docs/img/entity-cards.jpg" width="720" alt="A community and a profile rendered as cards: banner, avatar, size and description on one; avatar, location and following on the other" />
</p>

<p align="center">
  <em>Walls, communities and profiles on a host that supports MCP Apps. The
  model gets the same structured data either way — this is what the person
  sees.</em>
</p>

---

## Features

- **25 tools** across users, walls, communities, photos, stories, community
  messages, likes and statistics
- **Your community's inbox**: list unread conversations, read them, and reply
  as the community — the assistant drafts, you approve, it sends
- **Read and write as a community**: with a community token and a service key
  together, the assistant reads walls, profiles and communities and posts,
  comments, publishes stories and answers messages as your community. Writes are marked as such
  so your client can ask first. Some tools (search, likes, statistics, editing)
  need a full user token, which VK no longer issues to new apps — the
  [setup guide](docs/SETUP.md) lists exactly what each token reaches
- **Structured output**: every tool declares an output schema, so the model gets
  typed data instead of a JSON blob it has to parse out of text
- **Pagination that explains itself**: list results say how many matches exist
  and which offset continues from here, so the model can page through a wall
  instead of stopping at the first twenty posts
- **Things you can look at**: on hosts that support [MCP Apps](https://modelcontextprotocol.io/extensions/apps/overview)
  — Claude, Claude Desktop, VS Code Copilot, Goose — walls, communities and
  profiles render as cards: posts with their photos and clip previews,
  communities with their banner and size, profiles with avatar and following.
  Everywhere else it behaves exactly as before
- **Prompts**: ready-made workflows — community digest, engagement report,
  audience snapshot, community search, community inbox
- **Resilient**: request timeouts, automatic backoff when VK rate-limits, and
  clear messages for captchas and HTTP failures
- **Honest about tokens**: VK has three kinds and they differ enormously in
  reach. `--check` names which one you hold and probes what it can actually do,
  `--login` walks the VK ID flow for the reading kind, and every VK error
  carries the fix rather than the code alone
- **Tested**: 84 tests driving the real server over the MCP protocol

## Quick Start

### Claude Desktop — one click

Download the latest `.mcpb` bundle from the
[releases page](https://github.com/bulatko/vk-mcp-server/releases/latest) and
open it. It installs the server, asks for your VK token in a form field, and
stores it securely — no Node.js, no config files, no terminal.

### VS Code — one click

[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_VK_MCP-0098FF?logo=visualstudiocode&logoColor=white)](vscode:mcp/install?%7B%22name%22%3A%22vk%22%2C%22type%22%3A%22stdio%22%2C%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22vk-mcp-server%22%5D%2C%22env%22%3A%7B%22VK_ACCESS_TOKEN%22%3A%22%24%7Binput%3Avk_token%7D%22%7D%2C%22inputs%22%3A%5B%7B%22type%22%3A%22promptString%22%2C%22id%22%3A%22vk_token%22%2C%22description%22%3A%22VK%20access%20token%22%2C%22password%22%3Atrue%7D%5D%7D)

VS Code prompts for your VK token and keeps it out of the config file. From a
terminal instead:

```bash
code --add-mcp '{"name":"vk","command":"npx","args":["-y","vk-mcp-server"],"env":{"VK_ACCESS_TOKEN":"your_token"}}'
```

### npm

```bash
npx vk-mcp-server
```

Or install globally with `npm install -g vk-mcp-server`.

### MCP Registry

Also available in the official MCP Registry:
```
io.github.bulatko/vk
```

## Getting VK Access Token

**To let the assistant post, you need a community token.** Open a community you
manage → **Manage** → **API usage** → **Access tokens** → **Create token**,
ticking `wall`, `photos`, `stories`, `messages` and `manage`. Three clicks, no
app, never expires, tied to no browser or IP. It posts, comments and publishes
stories as the community.

**Add a service key next to it, and the assistant reads walls too.** VK refuses
a community token wall reads (error 27). Set the service key from your VK app's
settings page as `VK_SERVICE_KEY`, and the server makes every read the token is
refused with the key instead — writes never go to it:

```json
"env": {
  "VK_ACCESS_TOKEN": "vk1.a...community token",
  "VK_SERVICE_KEY": "...service key"
}
```

What no token VK issues to a new app can do, checked against the live API in
October 2026: edit or delete posts, upload wall photos, read statistics, likes,
photo albums, search or the newsfeed. VK keeps those for full user tokens, which
it no longer grants.

For public reads alone, the service key on its own is enough (as
`VK_SERVICE_KEY` or `VK_ACCESS_TOKEN`), or sign in as yourself:

```bash
npx vk-mcp-server --login <YOUR_APP_ID>
```

**Worth knowing before you spend an evening on it:** `--login` returns a VK ID
token (`vk2.a…`), which VK issues for signing in rather than for the API. It
reads public profiles, walls and community info; posting, photos, friends,
feeds and statistics all answer `error 1051`, whatever scopes you request. The
older flow that granted full user tokens now refuses newly created apps
outright. `npx vk-mcp-server --check` names which kind you hold and what it
reaches.

Use your own app rather than an App ID from somewhere else: a token dies with
the app that issued it, and the error gives no hint that this is what happened.

📖 **[Full setup guide](docs/SETUP.md)** — every step with the exact screens,
what the scopes unlock, remote installs, and what each error means.

## Configuration

### Claude Desktop

Add to `~/Library/Application Support/Claude/claude_desktop_config.json` (macOS) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):

```json
{
  "mcpServers": {
    "vk": {
      "command": "npx",
      "args": ["-y", "vk-mcp-server"],
      "env": {
        "VK_ACCESS_TOKEN": "your_access_token_here"
      }
    }
  }
}
```

### Claude Code

Add to your project's `.mcp.json`:

```json
{
  "mcpServers": {
    "vk": {
      "command": "npx",
      "args": ["-y", "vk-mcp-server"],
      "env": {
        "VK_ACCESS_TOKEN": "your_access_token_here"
      }
    }
  }
}
```

### Environment variables

| Variable | Required | Default | Purpose |
|----------|----------|---------|---------|
| `VK_ACCESS_TOKEN` | for tool calls | — | The token tools act with, usually a community token. The server starts and lists its tools without one; calling a tool then returns an error saying so |
| `VK_SERVICE_KEY` | no | — | Service key from your VK app. Reads the access token is refused (a wall, under a community token) are made with it; never used for writes. On its own, it is enough for public reads |
| `VK_TIMEOUT_MS` | no | `30000` | Abort a VK request that hangs longer than this |
| `VK_API_BASE` | no | `https://api.vk.com/method` | Point the server at an API mirror or proxy |

VK rate-limits user tokens to a few calls per second. When it answers with
error 6 (*too many requests*), the server backs off and retries up to three
times before giving up, so short bursts of tool calls do not fail outright.

## Command line

| Command | What it does |
|---------|--------------|
| `npx vk-mcp-server` | Runs the MCP server (this is what your client calls) |
| `npx vk-mcp-server --login <APP_ID>` | Gets a token through VK ID in your browser |
| `npx vk-mcp-server --check` | Reports what your token is and which tools it can use |
| `npx vk-mcp-server --help` | Lists the commands and environment variables |

## Troubleshooting

Start with:

```bash
VK_ACCESS_TOKEN=your_token npx vk-mcp-server --check
```

It identifies which of the three token types you have — user, community or
service — and probes what that token can actually reach, so you find out up
front instead of discovering it tool by tool. It never calls a write method.

Common cases:

| What you see | What it means |
|--------------|---------------|
| `error 8: Application is blocked` | The VK app that issued the token is blocked. Every token from it fails this way, however valid the token looks. Create your own app and issue a fresh token. |
| `error 5: User authorization failed` | The token expired or was revoked — run `--login` again. |
| `error 27: Group authorization failed` | 
aianthropicclaudellmmcpmcp-servermodel-context-protocolnodejssocial-mediavkvk-apivkontakte

Lo que la gente pregunta sobre vk-mcp-server

¿Qué es bulatko/vk-mcp-server?

+

bulatko/vk-mcp-server es mcp servers para el ecosistema de Claude AI. Model Context Protocol (MCP) server for VK (VKontakte) social network API Tiene 12 estrellas en GitHub y su última actualización registrada es del 2026-10-01.

¿Cómo se instala vk-mcp-server?

+

Puedes instalar vk-mcp-server clonando el repositorio (https://github.com/bulatko/vk-mcp-server) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.

¿Es seguro usar bulatko/vk-mcp-server?

+

Nuestro agente de seguridad ha analizado bulatko/vk-mcp-server y le ha asignado un Trust Score de 95/100 (tier: Verified). Revisa el desglose completo de comprobaciones superadas y flags en esta página.

¿Quién mantiene bulatko/vk-mcp-server?

+

bulatko/vk-mcp-server es mantenido por bulatko. La última actividad registrada en GitHub es del 2026-10-01, con 0 issues abiertos.

¿Hay alternativas a vk-mcp-server?

+

Sí. En ClaudeWave puedes explorar mcp servers similares en /categories/mcp, ordenados por popularidad o actividad reciente.

Despliega vk-mcp-server en tu cloud

Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.

¿Mantienes este repo? Añade un badge a tu README

Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.

Featured on ClaudeWave: bulatko/vk-mcp-server
[![Featured on ClaudeWave](https://claudewave.com/api/badge/bulatko-vk-mcp-server)](https://claudewave.com/repo/bulatko-vk-mcp-server)
<a href="https://claudewave.com/repo/bulatko-vk-mcp-server"><img src="https://claudewave.com/api/badge/bulatko-vk-mcp-server" alt="Featured on ClaudeWave: bulatko/vk-mcp-server" width="320" height="64" /></a>

Más MCP Servers

Alternativas a vk-mcp-server