v0.1.2 · Live on PyPI

Automate Python.
Without the mess.

One SDK for Email, Telegram, Discord, Slack, and Google Sheets — and the execution backend your AI agents need. Write automation logic in Python — we run it in the cloud.

from apider import Email, Telegram, CloudScheduler

def monitor_inbox():
    emails = Email.read(unread_only=True)
    if emails:
        summary = "\n".join([f"• {e.subject}" for e in emails])
        Telegram.send(f"📬 {len(emails)} new emails:\n{summary}")

# Runs every 10 minutes — in the cloud, forever
CloudScheduler.every_minutes(10, monitor_inbox)
from apider import Email

# Send
Email.send(
    to="team@company.com",
    subject="Daily digest",
    body="Here's your report 📊",
    attachments=["report.pdf"]
)

# Read
emails = Email.read(unread_only=True, mark_as_read=True)
for e in emails:
    print(e.subject, e.email_sender)
from apider import Sheets

# Read as Polars DataFrame with type inference
df = Sheets.read(filters={"status": "pending"})

# Append a new row
Sheets.append(["2026-04-23", "Jorge", 1499])

# Upsert by column match
Sheets.upsert("email", "user@co.com", ["user@co.com", "Pro"])
🤖 MCP Server
AI Agent Backend
📧 Gmail
📧 Outlook
✈️ Telegram
💬 Discord
💼 Slack
📊 Google Sheets
CloudScheduler
🔐 Zero secret storage
☁️ Azure Functions
🐍 Pure Python
📧 Gmail
📧 Outlook
✈️ Telegram
💬 Discord
💼 Slack
📊 Google Sheets
CloudScheduler
🔐 Zero secret storage
☁️ Azure Functions
🐍 Pure Python
Why Apider

Built for Python developers
who hate boilerplate

Stop writing 100 lines to send an email. Stop wrestling with OAuth. Just import and run.

One-liner integrations

Email.send() · Telegram.send() · Sheets.append(). No setup wizards, no OAuth flows, no SDK configuration.

☁️

Serverless by default

Your scripts run on Azure Functions. No servers to provision, no containers to manage, no Dockerfile.

Cron as Python

CloudScheduler.every_minutes(10, fn) registers a persistent job in the cloud. No crontab, no Celery.

🔐

Zero secret storage

Your API keys stay in .env on your machine. We never store them — they travel encrypted per-request.

📊

Typed Sheets data

Sheets.read() returns a Polars DataFrame with auto-detected types — integers, floats, strings. No more raw text.

🔀

Multi-channel by nature

Mix Email + Telegram + Discord + Slack in the same script. One execution, multiple outputs.

🤖

Native MCP server

Apider exposes all its modules as MCP tools. Claude, Cursor, or any AI agent can send emails, read Sheets, and call any API — without a local server running.


For AI Agents

Your agent.
Without the laptop.

Most MCP servers run on your machine — which means your laptop must stay open for your AI agent to work. Apider runs in Azure. Your agent executes tasks 24/7, even when you're offline.

Claude, Cursor, Windsurf — any MCP-compatible agent
Zero local server — 50-line proxy, all logic runs in Azure
Credentials never leave your machine — Fernet-encrypted per request
claude_desktop_config.json
{
  "mcpServers": {
    "apider": {
      "command": "apider",
      "args": ["mcp-proxy"],
      "env": {
        "APIDER_ENDPOINT": "https://...",
        "APIDER_FUNCTION_KEY": "<key>",
        "APIDER_ENCRYPTION_KEY": "<key>"
      }
    }
  }
}
How it works

Write Python. We handle the rest.

No infrastructure knowledge required. If you can write a function, you can automate anything.

1

Install & configure

pip install apider. Add your API keys to .env. That's it — your credentials never leave your machine.

2

Write your script

Use Email, Telegram, Sheets, Discord, Slack — all as simple Python functions. No boilerplate, no classes to extend.

3

Schedule & forget

CloudScheduler.every_minutes(10, fn) deploys your script to Azure. It runs forever, even when your laptop is off.


Pricing

Simple, transparent pricing

Pay only for what you use. No hidden fees, no credit card required to start.

Start automating today

Install Apider, write your first script, and run it in the cloud — in under 5 minutes.

$ pip install apider