Open source · Apache-2.0

Connect your AI to your files, tools & apps.

Ganju lets AI assistants like Claude and ChatGPT — and your bots on Telegram, Slack, WhatsApp, and Discord — safely use your own documents, tools, and apps. Your AI answers with your information and gets real work done. Set it up in minutes without writing a line of code — and if you need a tool we don't have, you can add it yourself.

Tools and AI clients connecting to your Ganju MCP server
Tools & integrations

Connect the tools you already use.

Popular apps work right out of the box. Need something custom? Connect your own app or another service — without writing code.

http-endpoint connects your own app or website. mcp-proxy plugs in other ready-made services like Notion and GitHub. Both work without writing any code — and when a tool needs real logic, write it yourself.
Your own tools · on Pro

Need something we don't have? Add it yourself.

A function is a small tool you add to your assistant — look something up in your own system, work something out, start a job somewhere else. You describe it, fill in what it does, and press Deploy. We run it: no server, nothing to install, nothing to keep alive.

  1. Describe it

    Give the tool a name and say when your assistant should reach for it, the way you'd brief a new teammate. The starting code is written for you.

  2. Fill in what it does

    The editor suggests what's available as you type and underlines mistakes where they are, rather than after you save.

  3. Try it privately

    Press Run with an example and see exactly what comes back. Nobody else can call it, and your live assistant carries on unchanged.

  4. Deploy, or undo

    One button makes it live everywhere your assistant works. Every version is kept, so going back is a click.

A whole tool, start to finish

This one reads a key you saved, asks a shop's own system about an order, says so plainly when there is no such order, and hands back a tidy answer for the assistant to use. That's the whole file — the hosting, the credentials and the version history are ours.

index.js
import { createHandler, defineTool } from './ganju-sdk.js';

export default createHandler({
  'lookup-order': defineTool(async (input, ctx) => {
    const key = await ctx.secret('SHOP_API_KEY');

    const res = await fetch(
      `https://api.mystore.com/v1/orders/${input.orderId}`,
      { headers: { authorization: `Bearer ${key}` } }
    );

    // Say so plainly — the assistant reads this and answers with it.
    if (res.status === 404) {
      return { found: false, message: `No order ${input.orderId}.` };
    }
    if (!res.ok) throw new Error(`The shop answered ${res.status}`);

    const order = await res.json();
    ctx.log('looked up', order.id, order.status);

    return {
      found: true,
      status: order.status,
      placedOn: order.created_at,
      eta: order.shipping?.estimated_delivery ?? null,
      tracking: order.shipping?.tracking_url ?? null
    };
  })
});
JavaScript, and only JavaScript — no build step, no packages to install, no configuration file to learn.

Your tool doesn't have to do it all itself

The hard and risky parts are handed to it — your connected accounts, your keys, your files — so the part you write stays small.

Act as your connected accounts

Send from the Gmail or Slack account you already connected here. The passwords and tokens stay with us; your tool never sees them.

ctx.connection()

Use a key you saved once

Paste an API key into Settings and your tool reads it when it runs — encrypted, and never shown back to anyone, including you.

ctx.secret()

Search your own documents

The same files, sites and drives your assistant answers from are there for your tool to search and read.

ctx.resources.search()

Save something back

Write a report, a note or a spreadsheet onto the project, so it can be found, read or sent later on.

ctx.resources.create()

Send a real attachment

Email or post a file of up to 40MB without it ever passing through your tool — we move it for you.

ctx.sendFile()

Call any site or API

The ordinary way of fetching things, with internal addresses always blocked and an optional list of the hosts you allow.

fetch()

Write it in the browser

Nothing to install. The editor is the one VS Code is built on, it knows what your tool can do, and it deploys exactly what you typed.

  • Autocomplete for everything the platform hands you.
  • A Run button beside each tool, with a sample input to try.
  • Every version in one menu, and one click back to any of them.
  • Files and folders, if your tool outgrows a single page.

Or from your terminal

If your tools belong in a repository, in code review and in your pipeline, the Ganju CLI does everything the page does.

bash
$ npm install -g @ganju/cli

$ ganju init my-tools && cd my-tools
$ ganju login          # opens your browser
$ ganju link           # pick the project
$ ganju deploy

✓ v3 is live on acme-support — 2 tools
  lookup-order
  refund-status

Three things people build first

Each of these is one small tool, and an afternoon at most.

Answer order questions in Telegram

A customer asks where their order is. The tool checks your system and the bot answers in the chat it was asked in.

Uses: your own system, and a key you saved

Email Monday's report, file attached

The tool builds the spreadsheet, saves it onto the project, and sends it from your own mailbox — as an attachment, not a link.

Uses: your Gmail or Outlook account

Triage a ticket against your docs

It searches your own documents, checks the ticket in the system you keep them in, and posts the summary where the team already is.

Uses: your documents, and your Slack

Fair use, in plain numbers: each run gets 5 seconds and the timeout you choose, each tool can be called 60 times a minute, and Pro includes 1,000,000 calls a month — only the tools you wrote count toward it, never the integrations we ship.

Pricing

Start free. Scale when you're ready.

Use it free, upgrade as you grow — or run it yourself for free.

FAQ

Good questions

Do I need to be technical to use Ganju?

No. If you can fill out a form and click a few buttons, you can set up Ganju — connecting your files, tools, and AI takes just a few minutes, no coding required. (Developers get powerful options too, like connecting their own apps.)

What is MCP?

MCP (the Model Context Protocol) is the standard way AI assistants connect to outside tools and information. You don't need to understand the details — Ganju handles all of it so your AI can safely use your files and apps.

Which AI assistants can I use?

Use Google Gemini, Anthropic Claude, or OpenAI (ChatGPT) — just add your own account. Other compatible providers work too.

Can I write my own tools?

Yes — that's what Functions are. You describe the tool, fill in what it should do, try it privately, and press Deploy; we run it, so there's no server to set up and nothing to install. It's handed your connected accounts, your saved keys and your files, so the part you write stays small and never holds a password. Functions are a Pro feature and do involve a little JavaScript; on the free plan you can point an HTTP Endpoint at your own app instead, with no code at all.

Is my data safe?

Yes. Your passwords and keys are encrypted, never shown in plain text, and never shared. Everything runs on Cloudflare's secure global network — and if you run Ganju yourself, your data stays entirely in your own account.

Can I run Ganju myself?

Yes. Ganju is open source and free to use and modify. Host it on your own account, or let us run it for you on a paid plan.

Give your AI everything it needs to help.

Set it up in minutes — free to start.