danielzotti/mcp-server-telegram-notes
If you are the rightful owner of mcp-server-telegram-notes and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
This project implements a custom MCP Server for sending notes to Telegram using a bot.
MCP Server Telegram Notes
This project implements a custom MCP Server that allows you to send notes directly to your Telegram account using a Telegram bot. It is designed for quick, programmatic note delivery via the Telegram messaging platform.
What is an MCP Server?
MCP (Model Context Protocol) Server is a server that implements the Model Context Protocol, enabling tools, resources, and prompts to be exposed in a standardized way for AI agents and other clients. MCP Servers can provide custom tools (like sending notes) that can be invoked remotely, making them highly extensible for automation and integration scenarios.
What is a Telegram Bot?
A Telegram bot is a special kind of Telegram account operated by software, not by a human. Bots can interact with users, send and receive messages, and perform automated tasks. Telegram bots are created and managed using the @BotFather bot on Telegram.
How to Create a Telegram Bot
- Open Telegram and search for @BotFather (BotFather documentation).
- Start a chat and use the
/newbotcommand to create a new bot. - Follow the instructions to set a name and username for your bot.
- After creation, you will receive a Telegram Bot API Token. Save this token; you will need it for configuration.
- Start a chat with your new bot (search for its username in Telegram and send a message).
- To get your personal chat ID, you can use tools like userinfobot or send a message to your bot and use the Telegram API to retrieve the chat ID.
Project Folder Structure
├── package.json
├── README.md
├── tsconfig.json
├── .env # Your environment variables (not committed)
├── src/
│ ├── env.ts # Loads and validates environment variables
│ └── index.ts # Main MCP server logic and Telegram integration
How It Works
- The server is built using the Model Context Protocol SDK and exposes a tool called
send-note. - When the
send-notetool is invoked (remotely or locally), it sends a message to your Telegram account using your bot. - The server reads your bot token and chat ID from environment variables, then uses the Telegram Bot API to deliver the message.
- The project is written in TypeScript and can be run in development mode or built for production.
Setup Instructions
-
Create a
.envfile in the project root with the following variables:TELEGRAM_TOKEN: Your Telegram bot API token (from @BotFather)TELEGRAM_PERSONAL_CHAT_ID: Your personal chat ID (the identifier for your chat with the bot)
-
Install dependencies:
npm install -
Run the server in development mode:
npm run dev -
Build and run for production:
npm run build npm start
Environment Variables
Create a .env file and add these variables:
TELEGRAM_TOKEN: Telegram bot API Token (use Telegram and @BotFather to retrieve the API token)TELEGRAM_PERSONAL_CHAT_ID: Chat ID (the chat identifier between you and the Telegram bot; overlaps with your user ID)
Setup Instructions to use MCP Server in VSCode
Create a mcp.json file in .vscode folder.
NOTE:
dz-telegram-notes-devis meant to work just for development.
{
"servers": {
"dz-telegram-notes-dev": {
"type": "stdio",
"command": "npm",
"args": [
"run",
"dev"
],
"cwd": "${workspaceFolder}",
"dev": {
"watch": "src/**/*.ts",
"debug": {
"type": "node"
}
}
},
"dz-telegram-notes-prod": {
"type": "stdio",
"command": "npm",
"args": [
"run",
"start"
],
"cwd": "${workspaceFolder}"
},
},
}
Setup Instructions for Claude Desktop
Add "mcp-telegram-notes" in claude_desktop_config.json file
{
"mcpServers": {
// ...
"mcp-telegram-notes": {
"command": "node",
"args": [
"PATH_TO_YOUR/dist/index.js"
],
"env": {
"TELEGRAM_TOKEN": "YourTelegramToken",
"TELEGRAM_PERSONAL_CHAT_ID": "YourChatId"
}
}
// ...
},
}