origo-mcp

origo-mcp

Provides AI agents with administrator-level control of the Origo Abroad platform via 56 MCP tools wrapping its REST API for students, CRM, loans, and more.

Category
Visit Server

README

origo-mcp

An MCP (Model Context Protocol) server that gives an AI agent (Claude, or any other MCP-compatible client) full administrator-level control of the Origo Abroad platform, by wrapping origo_backend's /admin, /crm, and /auth REST API as MCP tools.

It authenticates once as an admin/manager/staff account, caches the JWT, and automatically re-authenticates if the token expires. It runs locally over stdio, so it can be plugged straight into Claude Desktop, Cowork, or any other MCP client config.

What it covers

56 tools spanning: students (create/update/delete/notes & tasks), staff assignments, applications, CRM leads & consultations, loans (applications and product catalogue), scholarship applications, users & roles, management hierarchy, student-deletion approvals, referral codes, and the analytics/reporting endpoint. A generic admin_api_request fallback tool covers anything not wrapped by a dedicated tool, so new backend endpoints remain reachable without a server update.

Setup

pip install -r requirements.txt
cp .env.example .env   # then fill in your values

Required environment variables (see .env.example):

  • ORIGO_API_BASE_URL — your origo_backend deployment URL, e.g. the Render service URL (no trailing slash).
  • Either ORIGO_ADMIN_EMAIL + ORIGO_ADMIN_PASSWORD (recommended — the server logs in and auto-refreshes on expiry), or a pre-issued ORIGO_ADMIN_TOKEN.

The account you authenticate with determines what the agent can see and do: an admin account has unrestricted access; cluster_manager, manager, and staff accounts are scoped to their reporting hierarchy, same as when they log into the dashboard directly.

Run directly:

python origo_mcp_server.py

Connecting it to Claude Desktop / Cowork

Add to your MCP client's server config (e.g. claude_desktop_config.json):

{
  "mcpServers": {
    "origo-admin": {
      "command": "python",
      "args": ["/absolute/path/to/origo_mcp_server.py"],
      "env": {
        "ORIGO_API_BASE_URL": "https://your-backend.onrender.com",
        "ORIGO_ADMIN_EMAIL": "you@origoabroad.com",
        "ORIGO_ADMIN_PASSWORD": "your-password"
      }
    }
  }
}

Safety notes

  • delete_student, delete_user, and approve_deletion_request are irreversible. The tool descriptions flag this so agents confirm intent before calling them, but there is no server-side undo.
  • The server only ever holds one bearer token in memory (not persisted to disk); credentials live in your environment/config, not in this repo.
  • Every action is subject to the same role-based access control as the dashboard itself — the MCP server does not bypass origo_backend's permission checks, it just calls the same API a logged-in staff member would.

Extending it

Each tool is a thin wrapper: a Python function decorated with @mcp.tool() that calls _call(method, path, params=..., json_body=...). To add coverage for a new backend endpoint, either add a small dedicated wrapper next to the related tools, or just call it via admin_api_request until you do.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured