Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者による説明(英語の原文)
Translation status, glossary, and editing tools for a verbatra i18n project, over stdio.
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
使っているAIアプリを選んで、設定をコピーしてください。
VERBATRA_MCP_ALLOW_SPEND, VERBATRA_MCP_REDACT_VALUES, ANTHROPIC_API_KEY, OPENAI_API_KEY, GEMINI_API_KEY, DEEPL_API_KEY, GOOGLE_TRANSLATE_API_KEY, OPENCODE_API_KEY, OPENAI_COMPATIBLE_API_KEY, LIBRETRANSLATE_API_KEY「秘密」と表示された値は、あなたのアカウントの鍵です。絶対に人に教えたり、チャットに貼り付けたりしないでください。
必要なもの
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"verbatra": {
"command": "npx",
"args": [
"-y",
"@verbatra/mcp"
],
"env": {
"VERBATRA_MCP_ALLOW_SPEND": "your-value",
"VERBATRA_MCP_REDACT_VALUES": "your-value",
"ANTHROPIC_API_KEY": "your-value",
"OPENAI_API_KEY": "your-value",
"GEMINI_API_KEY": "your-value",
"DEEPL_API_KEY": "your-value",
"GOOGLE_TRANSLATE_API_KEY": "your-value",
"OPENCODE_API_KEY": "your-value",
"OPENAI_COMPATIBLE_API_KEY": "your-value",
"LIBRETRANSLATE_API_KEY": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add verbatra --env VERBATRA_MCP_ALLOW_SPEND=your-value --env VERBATRA_MCP_REDACT_VALUES=your-value --env ANTHROPIC_API_KEY=your-value --env OPENAI_API_KEY=your-value --env GEMINI_API_KEY=your-value --env DEEPL_API_KEY=your-value --env GOOGLE_TRANSLATE_API_KEY=your-value --env OPENCODE_API_KEY=your-value --env OPENAI_COMPATIBLE_API_KEY=your-value --env LIBRETRANSLATE_API_KEY=your-value -- npx -y @verbatra/mcp動かす前に、空欄の値を入力してください。
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"verbatra": {
"command": "npx",
"args": [
"-y",
"@verbatra/mcp"
],
"env": {
"VERBATRA_MCP_ALLOW_SPEND": "your-value",
"VERBATRA_MCP_REDACT_VALUES": "your-value",
"ANTHROPIC_API_KEY": "your-value",
"OPENAI_API_KEY": "your-value",
"GEMINI_API_KEY": "your-value",
"DEEPL_API_KEY": "your-value",
"GOOGLE_TRANSLATE_API_KEY": "your-value",
"OPENCODE_API_KEY": "your-value",
"OPENAI_COMPATIBLE_API_KEY": "your-value",
"LIBRETRANSLATE_API_KEY": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"verbatra": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@verbatra/mcp"
],
"env": {
"VERBATRA_MCP_ALLOW_SPEND": "your-value",
"VERBATRA_MCP_REDACT_VALUES": "your-value",
"ANTHROPIC_API_KEY": "your-value",
"OPENAI_API_KEY": "your-value",
"GEMINI_API_KEY": "your-value",
"DEEPL_API_KEY": "your-value",
"GOOGLE_TRANSLATE_API_KEY": "your-value",
"OPENCODE_API_KEY": "your-value",
"OPENAI_COMPATIBLE_API_KEY": "your-value",
"LIBRETRANSLATE_API_KEY": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
VERBATRA_MCP_ALLOW_SPEND envVERBATRA_MCP_REDACT_VALUES envこの設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月6日にチェック
レジストリ名は、リポジトリを所有するGitHubアカウント verbatra で確認済みです
このリポジトリはまだGitHubから読み取っていません
このリポジトリはまだGitHubから読み取っていません
これはパソコンで動くため、インターネット上のエンドポイントはありません
パソコンで動き、代わりにローカルの設定を使います
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
当てはまる基本チェック1項目のうち1項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
入力が必要なもの:ANTHROPIC_API_KEY, OPENAI_API_KEY, GEMINI_API_KEY, DEEPL_API_KEY, GOOGLE_TRANSLATE_API_KEY, OPENCODE_API_KEY, OPENAI_COMPATIBLE_API_KEY, LIBRETRANSLATE_API_KEY
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
GitHubリポジトリの最終更新は–、最新バージョン(0.3.0)がレジストリに届いたのは10 日前です。
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
同じカテゴリには:Spec Driven Development, Remote Desktop Commander, debuff
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Let coding agents play, test and tune your 2D web game: live state, explained errors, replays, fuzz.
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
@verbatra/mcp
Stdio MCP server exposing verbatra's translation status, glossary, and editing capabilities as tools for any MCP client, without a browser.
Documentation | Connect a client | Changelog | Issues
@verbatra/mcp starts a Model Context Protocol server over stdio, the standard local-process transport an MCP client uses to launch and talk to a tool server. It gives a terminal-hosted or headless agent the same translation-status, glossary, and editing capabilities Verbatra Studio exposes in the browser, without a browser, a port, or a served single-page app. It is a thin, SDK-backed surface over @verbatra/sdk, the same way @verbatra/cli is.
Most MCP clients spawn the server for you and need no local install at all: point the client at npx -y @verbatra/mcp and npx fetches it on demand. To pin it in your project instead:
npm install --save-dev @verbatra/mcp
Needs Node.js ^22.18.0 || >=24. The server is also reachable through verbatra mcp once both @verbatra/cli and @verbatra/mcp are installed.
Point your client at the verbatra-mcp binary, which the @verbatra/mcp package provides (the example runs it through npx). The shape below is the one most clients use; for an editor or desktop client, put it in that client's MCP server configuration file.
{
"mcpServers": { "verbatra": { "command": "npx", "args": ["-y", "@verbatra/mcp", "--cwd", "/path/to/your/project"], "env": {} } } }
In Claude Code, npx @verbatra/cli init --agent (or claude mcp add --transport stdio --scope project verbatra -- npx -y @verbatra/mcp) writes an equivalent entry to a committed .mcp.json. The verbatra plugin bundles the agent skills with its own copy of this server, so use it instead of the .mcp.json entry, never both: together they register the server twice. VS Code (GitHub Copilot's agent mode) reads .vscode/mcp.json, whose top-level key is servers rather than mcpServers. The exact file, key, and working-directory handling for every client is in Connect an MCP client.
That configuration is read-only plus local editing: no provider is called and no API key is needed. Add --allow-spend to args, and the environment variable your configured provider reads its key from, once you also want the two provider-calling tools. --config loads a specific config file instead of searching for one, and VERBATRA_MCP_ALLOW_SPEND is the environment equivalent of the flag, which the flag always wins over.
Every tool, listed in the order the server advertises them.
| Tool | What it does |
|---|---|
project.snapshot | Read the resolved project configuration: whether a usable config is loaded (configured), locales, format, path pattern, provider id, where the config came from, whether a glossary is configured |
project.doctor | Check the project setup (config, format, provider, API key variable by name, network policy, source file) and get a fix for every failed check, with or without a usable config |
status.check | Per target locale, how many keys are missing, stale, or up to date, and whether the locale is in sync |
status.diff | Per target locale, the exact keys the next translate run would add, re-translate, or orphan |
glossary.get | Every glossary term with its translation for all locales, per-locale translations, forbidden renderings, case sensitivity, note and part of speech, the terms kept untranslated, the glossary version and where it comes from; with locale, also the terms that locale is held to |
glossary.write | Change one glossary term (a translation for all locales or one locale, forbidden renderings, note, partOfSpeech, caseSensitive, or doNotTranslate) and return the glossary afterward |
lock.state | The lock file's version and its per-locale key counts, or exists: false before the first run |
history.list | Recent git commits that touched a locale file, with hash, author name (never the email), date, subject and touched paths |
key.integrity | One key's placeholder, inline markup, and ICU drift against the lock-file baseline, per locale |
locale.integrity | Every translation that fails the placeholder, markup or ICU checks right now, per target locale |
key.value | One key's current source text, its source file description, and, if translated, its current text in one target locale with who wrote it |
key.context | What key.value returns plus the glossary terms that apply, the key's maxLength, and a check of an optional draft |
locale.values | Source and target text of many keys, filtered by keys or a query, in pages of up to 1,000 entries |
translation.editEntry | Write a manual translation for one key in one locale, accepted only if it passes the integrity gate |
translation.estimate | Estimate what translation.translatePending would send and cost, optionally for a subset of locales, without calling a provider |
translation.retranslateEntry | Ask the configured provider for a fresh translation of one key in one locale |
translation.translatePending | Translate every missing or stale key across the configured target locales, or a named subset, in one run, within an optional maxTokens ceiling |
review.queue | Every machine-written translation nobody has approved yet, read from the committed files, with the last run's flags |
report.provenance | Per locale, how many values fall into each provenance bucket; with includeEntries, the keys, paged |
review.approve | Record, on the user's instruction, that a named person approves one key's current translation |
review.reject | Record, on the user's instruction, that a named person rejects one key's current translation, removing it so it gets replaced |
usage.summary | Token usage and budget status left behind by the last run |
translation.retranslateEntry and translation.translatePending are the two tools that call a provider. They are advertised only when the server is started with --allow-spend or VERBATRA_MCP_ALLOW_SPEND; without either, a client never sees them and calling one by name fails as an unknown tool. A config with provider: { id: "none" } never lists them, even with --allow-spend.--redact-values (or VERBATRA_MCP_REDACT_VALUES) replaces every source text, translation, description, and glossary term in a result with a marker such as [redacted length=12 hash=3f9a0c1d2e4b5a6c], and leaves out reviewer and author names. Key names, counts, statuses, and integrity verdicts stay. review.approve and review.reject then take only the marker's hash as expectedHash, locale.values refuses query, and key.context refuses draft. This keeps values out of results; it does not stop an agent that probes on purpose, and what a provider receives does not change.[REDACTED] before it reaches the client or stderr.project.snapshot reports configured: false, project.doctor says what to fix) and reloads the config and its glossary file before each call. --allow-spend is fixed at startup, and a config change never widens it.Every tool's input, and every closed-shape tool output, is a JSON Schema derived from the same zod schema the server validates the call against. See the verbatra mcp docs for the full tool reference, the exit-code contract, and worked examples.
@verbatra/sdk: the engine this server is a thin surface over.@verbatra/cli: the verbatra command, including verbatra mcp.@verbatra/studio: the same capabilities in a browser dashboard.See CONTRIBUTING.md.
MIT (c) Mario Kreitz