ORANO MCP Server

Servidor MCP pessoal e somente leitura que expõe a biblioteca ORANO do usuário (projetos, tarefas, pesquisas, roadmaps, fatos de memória) como ferramentas para seu próprio agente de IA.

Documentação

Servidor ORANO MCP

Um servidor MCP (Model Context Protocol) pessoal e somente leitura que permite que o agente de IA do próprio usuário (ChatGPT, Claude, Cursor, Ollama) leia sua biblioteca ORANO como contexto fundamentado.

Nota: Este repositório público contém documentação, o manifesto do servidor MCP e uma implementação de referência. O servidor MCP de produção roda como um endpoint autenticado montado em /mcp no backend ORANO (FastAPI + Postgres + pgvector). Consulte o site do produto ORANO para o endpoint ao vivo e o fluxo de autenticação.

O que é ORANO?

ORANO transforma Reels, TikToks, YouTube Shorts e material de referência salvos em projetos estruturados — resumo, principais conclusões, tarefas ordenadas, contexto de pesquisa e um roteiro de aprendizado. Disponível na App Store do iOS (listagem na App Store).

Um servidor MCP pessoal e somente leitura para que o agente de IA do próprio usuário possa ler esse contexto é o diferencial.

Ferramentas MCP expostas

O servidor ORANO MCP expõe as seguintes ferramentas:

FerramentaDescrição
list_projectsLista os projetos do usuário com filtros de status opcionais (active, completed, skipped, archived).
get_projectRetorna a compreensão estruturada completa de um único projeto + resumo + tarefas + recursos + pesquisa + roteiro.
get_project_contextRetorna apenas os campos de contexto solicitados (summary, overview, caption, transcript, visual_context, links, tasks, roadmap, source ou raw_source) em saída estruturada, Markdown ou texto.
search_libraryPesquisa os projetos do usuário por título, resumo, título da fonte ou URL.
read_memory_factsRetorna fatos de memória selecionados (preferências, habilidades, objetivos) com sinais de confiança e atualidade.
get_pending_handoffsRecupera projetos enviados explicitamente do aplicativo ORANO para um agente de destino. Cada entrega é confirmada uma vez na leitura para que pesquisas simultâneas não dupliquem.

Autenticação

  • Mecanismo: Chave de API pessoal do tipo Bearer, escopo orano:read.
  • Sem OAuth. Criação manual de chaves apenas (por landing/mcp-access.html).
  • Orçamento por usuário: 240 chamadas a cada 60 minutos.
  • Máximo de chaves ativas por usuário: 10.

Manifesto do servidor MCP (server.json)

O manifesto canônico do servidor MCP segue o esquema oficial server.json do MCP:

{
  "$schema": "https://static.modelcontextprotocol.io/schemas/server.json",
  "name": "io.github.infotik/orano-mcp-server",
  "displayName": "ORANO",
  "description": "Personal, read-only MCP server that exposes the user's ORANO library (projects, tasks, research, roadmaps, memory facts) as tools for their own AI agent.",
  "version": "0.1.0",
  "repository": {
    "type": "git",
    "url": "https://github.com/infotik/orano-mcp-server"
  },
  "homepage": "https://oranoai.com/mcp",
  "categories": [
    "knowledge-management",
    "personal-assistant",
    "productivity",
    "second-brain"
  ],
  "tools": [
    { "name": "list_projects", "description": "List the user's ORANO projects with optional status filters." },
    { "name": "get_project", "description": "Return a single project's full structured understanding." },
    { "name": "get_project_context", "description": "Return only the requested context fields (summary, overview, transcript, visual_context, links, tasks, roadmap, source, raw_source)." },
    { "name": "search_library", "description": "Search the user's projects by title, summary, source title, or URL." },
    { "name": "read_memory_facts", "description": "Return curated memory facts with confidence and freshness signals." },
    { "name": "get_pending_handoffs", "description": "Retrieve acknowledged-once projects explicitly sent from the ORANO app to a target agent." }
  ],
  "transports": [
    { "type": "http", "endpoint": "https://api.oranoai.com/mcp/" }
  ],
  "authentication": {
    "type": "bearer",
    "scope": "orano:read",
    "user_specific": true,
    "rate_limit": "240 calls / 60 minutes / user"
  }
}

Implementação de referência (Python)

O servidor de produção roda como parte do backend ORANO (FastAPI + SQLAlchemy + pgvector). O padrão da implementação de referência é:

from mcp.server.fastmcp import FastMCP
from mcp.server.auth.settings import AuthSettings
from mcp.server.auth.provider import AccessToken

mcp = FastMCP(
    name="orano",
    auth=AuthSettings(issuer_url="https://api.oranoai.com", required_scopes=["orano:read"]),
)

@mcp.tool()
async def list_projects(status: str | None = None) -> list[dict]:
    """List the user's ORANO projects."""
    ...

@mcp.tool()
async def get_project(project_id: str, fields: list[str] | None = None) -> dict:
    """Return a single project's full structured understanding."""
    ...

# ... plus get_project_context, search_library, read_memory_facts,
# get_pending_handoffs

O servidor de produção completo (787 linhas + 290 linhas de auxiliares de autenticação/handshake) está em ExecutionOSBackend/app/mcp_server.py e faz parte do repositório privado do backend ORANO. Abrir o código de produção completo como código aberto exige extrair os modelos SQLAlchemy + serviços de ingestão para um pacote público, o que está no roteiro do produto, mas ainda não foi concluído.

Como usar

Usuários finais:

  1. Instale o aplicativo ORANO para iOS na App Store.
  2. Entre, salve pelo menos um Reel/TikTok/YouTube Short para gerar seu primeiro projeto.
  3. Abra Configurações → Acesso MCP → Criar nova chave (escopo orano:read).
  4. Conecte seu agente de IA (ChatGPT, Claude, Cursor, Ollama) ao seu endpoint MCP pessoal com a chave como token bearer.

Privacidade e confiança

  • O servidor MCP é somente leitura. Ele não grava em projetos, fontes, tarefas, memória ou dados da conta.
  • A única mutação de estado é get_pending_handoffs confirmando uma entrega acionada pelo aplicativo na fila, definindo seu carimbo de data/hora de entrega.
  • Nenhum acesso de gravação do agente é prometido; não existe fluxo OAuth de um clique.

Licença

MIT — consulte LICENSE.

Links