Skip to main content
Glama
fathyshalaby

fonio MCP (community)

by fathyshalaby

Unofficial fonio MCP

Weekend project: unofficial open-source MCP for fonio.ai — not a SaaS, not fonio GmbH. Built by a community member, not fonio staff. MIT licensed.

There is no official fonio MCP as of 2026-09-02: the public OpenAPI (app.fonio.ai/api/docs) has no MCP, fonio.info has no MCP article, and the public MCP registry returns zero servers for “fonio”. If fonio ships one later, use that instead.

This repository is not affiliated with, endorsed by, sponsored by, or associated with fonio GmbH or fonio.ai. The maintainers have no employment or contractor relationship with fonio. fonio® and related marks belong to their owners.

The software is provided “as is”, without warranty of any kind. The authors and contributors are not liable for anything that results from using the code or a volunteer-hosted copy — including downtime, billed phone calls, stored API keys, account issues, data loss, or other damages. See LICENSE. Bundled help-center copy can lag fonio.info; trust the official app and docs if they disagree.


Open-source Model Context Protocol for fonio.ai’s public API. Self-host it (or run local stdio). A volunteer may also put a copy on a free domain so Claude/ChatGPT have an HTTPS URL — that is unpaid, no SLA, no support, no liability.

Claude, ChatGPT, and Cursor can configure a full paste-ready agent and call the documented live endpoints. There is no create-assistant API — never claim the agent was saved in the workspace.

Auth is a workspace API key from app.fonio.ai/api-keys, verified with POST /public/v1/test-api-key. HTTP MCP OAuth is a community PKCE wrapper around that key. It is not fonio GmbH login. This project never collects your fonio password.

How to run it

This is software you run, not a company you sign up for.

  1. Recommended — yourself. npm run mcp with FONIO_API_KEY, or Docker/Vercel on your own origin.

  2. Optional volunteer URL. Someone may host a copy on a free domain. Use it at your own risk. Self-host if you do not want a volunteer storing an encrypted key.

Do not ship a login that looks like official fonio.

Related MCP server: AI Directory MCP Server

What shows up in the assistant

This does not go into Claude’s or ChatGPT’s official connector catalogs. Anthropic/OpenAI will not promote it.

It does show up as a custom MCP for people who add a /mcp URL (or run local stdio):

  • The client lists unofficial-fonio-mcp and the model can call the tools in that chat.

  • Opt-in per user or workspace — not a store listing, not a SaaS.

  • It does not appear inside fonio’s own phone/WhatsApp assistants on app.fonio.ai.

Add it to a client

Point Claude, ChatGPT, or Cursor at your self-hosted origin, or at a volunteer free-domain /mcp if you accept no warranty:

https://<your-host-or-volunteer-domain>/mcp

HTTP MCP requires a Bearer token so those clients start OAuth (401 + WWW-Authenticate). Official login stays on app.fonio.ai/login, then paste a workspace key.

Claude Code:

claude mcp add --transport http unofficial-fonio-mcp https://<your-host>/mcp

Then /mcp and paste the key.

Self-host

Vercel (public HTTPS)

npx vercel --prod

Set:

Variable

Value

FONIO_MCP_SECRET

long random string (openssl rand -hex 32)

NEXT_PUBLIC_MCP_ORIGIN

the deployment URL, e.g. https://your-app.vercel.app

Without NEXT_PUBLIC_MCP_ORIGIN, OAuth metadata is inferred from the Host header.

Docker

docker build -t unofficial-fonio-mcp .
docker run --rm -p 43147:43147 \
  -e FONIO_MCP_SECRET="$(openssl rand -hex 32)" \
  -e NEXT_PUBLIC_MCP_ORIGIN="https://your.public.host" \
  unofficial-fonio-mcp

Put a reverse proxy or Cloudflare Tunnel in front so Claude/ChatGPT can reach HTTPS.

Examples

Open /examples on the site, or ask the connected assistant for list_examples.

You say

What happens

Build a receptionist that books Prophylaxe and transfers billing to Anna

build_assistant + full paste pack + validate_assistant_prompt

Write a receptionist prompt that books Prophylaxe and transfers billing to Anna

search_docs + paste-ready prompt

Look this caller up in HubSpot before the greeting

Inbound webhook JSON + {{inboundContext}}

A lead submitted the form — call Ada back about the Q3 quote

Outbound API curl, KYC checklist

Yes, dial +4915… from our imported number

trigger_outbound_call after confirm

Tools

Tool

Purpose

get_connection_status

Whether a workspace API key is connected (last four chars only)

list_assistant_templates / build_assistant / validate_assistant_prompt / draft_knowledge_base / list_voices

Full paste-ready voice and WhatsApp agents

search_docs / get_doc / list_docs

Help-center knowledge (community snapshot)

list_examples

Ready-to-paste prompts

get_api_reference

OpenAPI, webhook IPs, {{variables}}

test_api_key

Connected workspace or FONIO_API_KEY

list_remote_integration_servers / register_remote_integration_server / delete_remote_integration_server

Live integration-manifest servers

prepare_outbound_call

Validate a destination and return a short-lived confirmation token

trigger_outbound_call

Real call — requires a matching confirmationToken and confirmedToNumber

Hosted HTTP MCP requires OAuth + a verified key for all tools so Claude/ChatGPT actually connect. Local stdio can use docs/builder with or without FONIO_API_KEY; live calls still need the key. Outbound still requires a fonio Teams plan, KYC, and an imported/SIP fromNumber. You are responsible for any carrier cost. A volunteer free-domain instance is unpaid and carries no liability.

The outbound flow first prepares the exact numbers without dialing. It will only proceed when the short-lived confirmationToken and confirmedToNumber both match that preparation after you have explicitly confirmed the destination. The token is consumed after use to help prevent accidental or repeated calls.

Local

git clone https://github.com/fathyshalaby/fonio-mcp-community.git
cd fonio-mcp-community
npm install
cp .env.example .env.local
# FONIO_MCP_SECRET=long-random-string
npm run dev          # http://127.0.0.1:43147  +  /mcp
npm run mcp          # stdio for Claude Desktop
npm test

OAuth endpoints (MCP spec)

These exist so Claude/ChatGPT can authorize against your process (self-host or a volunteer copy). They are not fonio GmbH OAuth.

  • /.well-known/oauth-protected-resource

  • /.well-known/oauth-authorization-server

  • POST /oauth/register (dynamic client registration)

  • GET/POST /oauth/authorize (community connector: official login + paste workspace API key)

  • POST /oauth/token (PKCE S256)

Official fonio API (not this project): app.fonio.ai/api/docs. Official support: support@fonio.ai.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/fathyshalaby/fonio-mcp-community'

If you have feedback or need assistance with the MCP directory API, please join our Discord server