MCP server

Your files.
Now agent-editable.

Keystring runs a hosted MCP server. Point Claude Code, Cursor, or any MCP client at it with an API key, and your agent can read and write translations directly, no clicking through the editor.

Get started free
Positioning

This isn't
an SDK.

Nothing ships inside your app, and no runtime depends on us. An agent simply drives the same file-based, API-key-scoped workflow a human already uses.

No code in your app

The server is hosted. Your bundle, your build, and your runtime stay exactly as they are.

Same workflow, no shortcut

Agents work on the same files, keys, and languages you edit by hand. Nothing hidden, nothing parallel.

Scoped to an API key

A key sees only the organizations and projects its owner can already reach. Revoke it and access ends.

No delete tools

There is no tool to delete a key, a file, or a project. Destructive actions stay human-only, by design.

Your files stay standard

Import and export plain JSON. Whatever an agent writes, you can export and diff like any other file.

Any MCP client

Claude Code, Cursor, or anything speaking MCP over HTTP with a Bearer header.

Tools

Eight tools.
None destructive.

The full surface an agent gets. Reading, creating, and updating, but deleting keys, files, or projects is deliberately absent.

list_projects

List every Keystring organization and project available to the authenticated user.

get_project

Get project metadata, configured languages and files, plan usage, and translation completion.

list_keys

List and filter project translation keys with stable pagination.

get_translations

Get all configured language values for up to 200 requested project keys.

create_keys

Create up to 100 project keys, optionally assigning files and initial translations.

set_translations

Set project translation values in a partial-success batch, including empty values.

import_file

Import one JSON object for a configured project language, flattening nested keys.

export_file

Export flat dot-notation values for one configured project language and optional file.

Setup

Two steps.
No new services.

Create an API key

Inside the app, open the user menu → Account → API keys and create a key. The ks_… token is shown once, so copy it immediately.

Point your MCP client at Keystring

Any MCP client can talk to POST keystring.dev/api/mcp with the key as a Bearer header. No new environment variables are needed.

Claude Code

bash
claude mcp add --transport http keystring https://keystring.dev/api/mcp \
  --header "Authorization: Bearer ks_..."

Generic mcp.json-style config

json
{
  "mcpServers": {
    "keystring": {
      "type": "http",
      "url": "https://keystring.dev/api/mcp",
      "headers": { "Authorization": "Bearer ks_..." }
    }
  }
}

Let your agent
do the typing.

Create an account, generate a key, and your MCP client is connected in a minute.

Connect your agent