Koskamo

Telegram MCP Server

A local-first Model Context Protocol server that gives an AI agent real Telegram-account access without handing it the keys to your account. It starts read-only, hides write tools until you opt in, and runs over STDIO for desktop clients or Streamable HTTP at /mcp for managed deployments. Built on TDLib (via tdlight-java), so an agent can read and act on your actual account, not only a Bot API subset.

Package and access

Local package with source-attributed installation metadata. Koskamo does not execute packages during review.

Telegram MCP Server logo, by tolboyCommunity listingLocal stdioSource reviewed; not executedPublished by tolboy
Vendor documentation

What you can do with it

  • Read and act on actual Telegram accounts
  • Send messages with idempotency keys
  • Manage isolated multi-account sessions

Source and maintenance

Community listingRegistry 1.18.0
Maintenance checked

Packages and installation

Source-provided package data. Koskamo has not executed or live-probed this package.

ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio

oci
ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio package definition
{
  "transport": "stdio",
  "identifier": "ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio",
  "registryType": "oci",
  "environmentVariables": [
    {
      "name": "TDLIB_API_ID",
      "format": "string",
      "isRequired": true,
      "description": "Telegram API ID from my.telegram.org"
    },
    {
      "name": "TDLIB_API_HASH",
      "format": "string",
      "isRequired": true,
      "description": "Telegram API hash from my.telegram.org"
    },
    {
      "name": "TDLIB_PHONE_NUMBER",
      "format": "string",
      "description": "Telegram phone number; omit after preparing a persisted session when using QR authentication"
    },
    {
      "name": "TDLIB_AUTH_CODE",
      "format": "string",
      "description": "One-time Telegram login code for a fresh headless container"
    },
    {
      "name": "TDLIB_2FA_PASSWORD",
      "format": "string",
      "description": "Telegram 2FA password when the account requires it"
    },
    {
      "name": "MCP_READ_ONLY",
      "format": "string",
      "default": "true",
      "description": "Keep true for safe first use"
    },
    {
      "name": "MCP_TOOL_PROFILE",
      "format": "string",
      "default": "reader",
      "description": "Tool surface: reader, inbox, community-admin, research, or all"
    }
  ]
}

Tools

Reported by the attributed source; not independently observed by Koskamo.

No tool definitions available.

Connect from your client

Each snippet configures the same source-provided package; replace placeholders before use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Cursor

Merge this local stdio configuration, replace every placeholder environment value, and restart Cursor. Koskamo has not executed this package.
Cursor configuration
{
  "mcpServers": {
    "telegram-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "TDLIB_API_ID=<YOUR_TDLIB_API_ID>",
        "-e",
        "TDLIB_API_HASH=<YOUR_TDLIB_API_HASH>",
        "-e",
        "TDLIB_PHONE_NUMBER=<YOUR_TDLIB_PHONE_NUMBER>",
        "-e",
        "TDLIB_AUTH_CODE=<YOUR_TDLIB_AUTH_CODE>",
        "-e",
        "TDLIB_2FA_PASSWORD=<YOUR_TDLIB_2FA_PASSWORD>",
        "-e",
        "MCP_READ_ONLY=<YOUR_MCP_READ_ONLY>",
        "-e",
        "MCP_TOOL_PROFILE=<YOUR_MCP_TOOL_PROFILE>",
        "ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio"
      ],
      "env": {
        "TDLIB_API_ID": "<YOUR_TDLIB_API_ID>",
        "TDLIB_API_HASH": "<YOUR_TDLIB_API_HASH>",
        "TDLIB_PHONE_NUMBER": "<YOUR_TDLIB_PHONE_NUMBER>",
        "TDLIB_AUTH_CODE": "<YOUR_TDLIB_AUTH_CODE>",
        "TDLIB_2FA_PASSWORD": "<YOUR_TDLIB_2FA_PASSWORD>",
        "MCP_READ_ONLY": "<YOUR_MCP_READ_ONLY>",
        "MCP_TOOL_PROFILE": "<YOUR_MCP_TOOL_PROFILE>"
      }
    }
  }
}

Cline

Merge this local stdio configuration, replace every placeholder environment value, and restart Cline. Koskamo has not executed this package.
Cline configuration
{
  "mcpServers": {
    "telegram-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "TDLIB_API_ID=<YOUR_TDLIB_API_ID>",
        "-e",
        "TDLIB_API_HASH=<YOUR_TDLIB_API_HASH>",
        "-e",
        "TDLIB_PHONE_NUMBER=<YOUR_TDLIB_PHONE_NUMBER>",
        "-e",
        "TDLIB_AUTH_CODE=<YOUR_TDLIB_AUTH_CODE>",
        "-e",
        "TDLIB_2FA_PASSWORD=<YOUR_TDLIB_2FA_PASSWORD>",
        "-e",
        "MCP_READ_ONLY=<YOUR_MCP_READ_ONLY>",
        "-e",
        "MCP_TOOL_PROFILE=<YOUR_MCP_TOOL_PROFILE>",
        "ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio"
      ],
      "env": {
        "TDLIB_API_ID": "<YOUR_TDLIB_API_ID>",
        "TDLIB_API_HASH": "<YOUR_TDLIB_API_HASH>",
        "TDLIB_PHONE_NUMBER": "<YOUR_TDLIB_PHONE_NUMBER>",
        "TDLIB_AUTH_CODE": "<YOUR_TDLIB_AUTH_CODE>",
        "TDLIB_2FA_PASSWORD": "<YOUR_TDLIB_2FA_PASSWORD>",
        "MCP_READ_ONLY": "<YOUR_MCP_READ_ONLY>",
        "MCP_TOOL_PROFILE": "<YOUR_MCP_TOOL_PROFILE>"
      }
    }
  }
}

VS Code

Merge this local stdio configuration, replace every placeholder environment value, and restart VS Code. Koskamo has not executed this package.
VS Code configuration
{
  "servers": {
    "telegram-mcp-server": {
      "type": "stdio",
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "TDLIB_API_ID=<YOUR_TDLIB_API_ID>",
        "-e",
        "TDLIB_API_HASH=<YOUR_TDLIB_API_HASH>",
        "-e",
        "TDLIB_PHONE_NUMBER=<YOUR_TDLIB_PHONE_NUMBER>",
        "-e",
        "TDLIB_AUTH_CODE=<YOUR_TDLIB_AUTH_CODE>",
        "-e",
        "TDLIB_2FA_PASSWORD=<YOUR_TDLIB_2FA_PASSWORD>",
        "-e",
        "MCP_READ_ONLY=<YOUR_MCP_READ_ONLY>",
        "-e",
        "MCP_TOOL_PROFILE=<YOUR_MCP_TOOL_PROFILE>",
        "ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio"
      ],
      "env": {
        "TDLIB_API_ID": "<YOUR_TDLIB_API_ID>",
        "TDLIB_API_HASH": "<YOUR_TDLIB_API_HASH>",
        "TDLIB_PHONE_NUMBER": "<YOUR_TDLIB_PHONE_NUMBER>",
        "TDLIB_AUTH_CODE": "<YOUR_TDLIB_AUTH_CODE>",
        "TDLIB_2FA_PASSWORD": "<YOUR_TDLIB_2FA_PASSWORD>",
        "MCP_READ_ONLY": "<YOUR_MCP_READ_ONLY>",
        "MCP_TOOL_PROFILE": "<YOUR_MCP_TOOL_PROFILE>"
      }
    }
  }
}

Claude Desktop

Merge this local stdio configuration, replace every placeholder environment value, and restart Claude Desktop. Koskamo has not executed this package.
Claude Desktop configuration
{
  "mcpServers": {
    "telegram-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "TDLIB_API_ID=<YOUR_TDLIB_API_ID>",
        "-e",
        "TDLIB_API_HASH=<YOUR_TDLIB_API_HASH>",
        "-e",
        "TDLIB_PHONE_NUMBER=<YOUR_TDLIB_PHONE_NUMBER>",
        "-e",
        "TDLIB_AUTH_CODE=<YOUR_TDLIB_AUTH_CODE>",
        "-e",
        "TDLIB_2FA_PASSWORD=<YOUR_TDLIB_2FA_PASSWORD>",
        "-e",
        "MCP_READ_ONLY=<YOUR_MCP_READ_ONLY>",
        "-e",
        "MCP_TOOL_PROFILE=<YOUR_MCP_TOOL_PROFILE>",
        "ghcr.io/tolboy/telegram-mcp-tdlib:1.18.0-stdio"
      ],
      "env": {
        "TDLIB_API_ID": "<YOUR_TDLIB_API_ID>",
        "TDLIB_API_HASH": "<YOUR_TDLIB_API_HASH>",
        "TDLIB_PHONE_NUMBER": "<YOUR_TDLIB_PHONE_NUMBER>",
        "TDLIB_AUTH_CODE": "<YOUR_TDLIB_AUTH_CODE>",
        "TDLIB_2FA_PASSWORD": "<YOUR_TDLIB_2FA_PASSWORD>",
        "MCP_READ_ONLY": "<YOUR_MCP_READ_ONLY>",
        "MCP_TOOL_PROFILE": "<YOUR_MCP_TOOL_PROFILE>"
      }
    }
  }
}

Let your agent find its tools

Find servers like Telegram MCP Server from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.