Every localization vendor now claims MCP support. That claim tells you almost nothing. An MCP server that exposes three read-only tools and a vendor's REST API wrapped in an SDK are both technically "MCP support," and they solve completely different engineering problems. When evaluating a localization execution layer for how your CI pipelines, coding agents, and internal tooling will actually call it, ask which of the available integration surfaces maps to which part of your workflow.
Ollang exposes four distinct surfaces for this reason: a REST API, a hosted MCP server, a TypeScript/Node.js SDK, and file-based Agent Skills. The platform orchestrates AI dubbing, subtitle translation, captions, transcription, document and visual translation, and human review workflows in one place, and exposes everything through APIs, an MCP server, an SDK, and agent Skills. These are four different approaches, each making different tradeoffs between explicit control and agent autonomy, and picking the wrong one means either over-engineering a pipeline that should have taken an afternoon or under-engineering a workflow that needed real orchestration.
The four surfaces, mechanically
Before the use-case breakdown, be precise about what each surface actually is, because naming conventions in this space get sloppy fast.
Programmatic uploads, orders, projects, revisions, QC, human review, and webhooks are API-key authenticated. The hosted Model Context Protocol server uses OAuth 2.0 + PKCE and integrates with Claude, Cursor, Claude Code, Devin, Replit, Windsurf, and more. The TypeScript/Node.js SDK handles asset scanning, i18n workflows, CMS capture, and provides a typed REST client. File-based Agent Skills for Cursor, Claude Code, Codex, Windsurf, and Cline provide natural-language ops with no server to run.
That last distinction, no server to run, is the one most engineering teams get wrong when they hear "MCP" and assume it's the only agent-native option. Skills and MCP solve overlapping problems through opposite mechanisms, and the difference matters for anyone deciding what to stand up.
REST API: explicit, repeatable, auditable
The REST API is the surface for anyone who needs deterministic behavior in a pipeline they do not want an agent to improvise inside. This suits CI/CD jobs, scheduled batch runs, and webhook-driven automation, because these workflows require the same call to produce the same result every time, with a clear audit trail of what was submitted and what came back.
The operational model underneath the API is a Folder → Project → Order hierarchy, which gives engineering teams a structure to hang automation on: a folder per product line, a project per release, an order per language batch. The reference layer covers base URL, authentication, request and response format, pagination, errors, and callbacks in one reference page, and production guidance covers API keys, callbacks, retries, pagination, error handling, folder structure, and memory, the infrastructure that keeps a batch job running when callbacks time out.
Concretely, a nightly build that extracts new strings, submits them as an order, and waits on a webhook callback to merge translated output back into a release branch is a REST API job. So is a quarterly document localization run across twenty PDFs that needs to hit a QC threshold before it's marked done. AI-only vs AI plus human review, editor interface, assignments, and QC annotations are all controllable through the same API surface, which means the difference between a fully automated batch and one that routes through human review is a parameter, not a different integration.
The API is the place to go when you want to own the orchestration logic yourself and treat localization as one deterministic step in a pipeline you already control.
MCP: outcome-based requests without a custom integration
MCP exists for teams that do not want to write orchestration logic. They want an agent to inspect project state and decide what needs to happen. The hosted Model Context Protocol server uses OAuth 2.0 + PKCE authentication and integrates with Claude, Cursor, Claude Code, Devin, Replit, Windsurf, and more, meaning the agent authenticates as itself, with scoped, revocable access, rather than carrying a static API key with blanket permissions.
That authentication model matters. OAuth 2.1 with PKCE became the MCP authorization standard because agents are long-running, often unattended processes making calls without a human clicking "authorize" each time, and static API keys cannot distinguish which agent, on whose behalf, is asking for what. A hosted MCP server with proper OAuth scoping means you can grant a coding agent access to translate a specific project's strings without handing it standing access to every order in your account.
A practical use case is an agent working inside a repository that notices a new set of untranslated locale files, checks what languages the project already supports, and creates the missing translation orders without a human writing a script first and without the agent needing to know the API's exact request shape. The agent inspects project state through MCP's tool-calling interface and completes supported actions directly. This is the surface for teams who want agents making judgment calls about what to localize, while the mechanics of how remain inside Ollang's execution layer.
