Setup
To connect Claude Desktop to the Language Weaver MCP server, configure it through mcp-remote.
The server URL is https://api.languageweaver.com/mcp/v1.
Note
All MCP examples use the Europe region by default, with the server URL https://api.languageweaver.com/mcp/v1.
To use the US region, replace it with https://us.api.languageweaver.com/mcp/v1.
Prerequisites
- Node.js 20.18.1 or later. The client runs
mcp-remotethroughnpx, andmcp-remoterequires Node 20.18.1 as a minimum. Any active Node LTS release meets this. Check your version withnode --version. - Claude Desktop, or another MCP client that can launch a command over stdio.
- Credentials for the mode you intend to use — see Credentials below.
Which parts are client-specific
The examples on this page are written for Claude Desktop. The following are Claude Desktop specifics, not part of the Model Context Protocol, and will differ in another client:
- the
claude_desktop_config.jsonfile and where it lives; - the
mcpServersobject and thecommand,argsandenvkeys inside it; - the location of the log files (see Troubleshooting).
These are the same for every client:
- the server URL, and Streamable HTTP as the transport;
- the
Lw-Client-IdandLw-Client-Secretheaders, and the Auth0 login flow; mcp-remoteand the arguments passed to it — any client that can launch a command over stdio can use the same command line.
If you are configuring a different client, take the mcp-remote command and its arguments from the
examples below and express them using that client's own configuration format.
One-click install (.mcpb extension)
Instead of editing claude_desktop_config.json by hand, you can install the Language Weaver
connector as a Claude Desktop extension.
Download Claude Desktop Extension and Skills (.zip). The archive contains the
.mcpbbundle and thetranslate-textskill.Extract the archive and open the
.mcpbfile, or drag it onto Claude Desktop's Settings → Extensions page.Fill in the fields Claude Desktop prompts for. These map directly onto the manual configuration documented below:
Extension field Manual equivalent Language Weaver MCP server URL the server URL in the argslistUse client credentials instead of signing in choosing Service setup over Interactive setup LW API client id / secret LW_API_CLIENT_ID/LW_API_CLIENT_SECRETCertificate authority bundle NODE_EXTRA_CA_CERTSFill in only the fields for the mode you're using (interactive or service) — leaving fields from both modes filled in causes the connector to refuse to start.
Warning
After changing any extension setting, fully quit Claude Desktop (⌘Q on macOS, File → Exit on Windows) and reopen it. Closing the window alone does not restart the connection, so the previous mode can stay active.
Use this when you want a guided setup with no manual JSON editing. Use the manual setup below when you need multiple simultaneous entries (for example, both an interactive and a service entry at once), or when configuring an MCP client other than Claude Desktop.
Credentials
Which credentials you need depends on whether calls should run as a signed-in user or as a Language Weaver API client.
Auth0 application client ID (interactive setup)
Interactive setup does not require a client ID in the client configuration. mcp-remote discovers
it from the MCP server's registration endpoint during OAuth discovery.
Language Weaver API credentials (service setup)
In order to use the service setup, you need a valid set of API credentials. These are used for authentication. You need to provide the clientId and clientSecret. You can create a new set of API credentials here.
Interactive setup (Auth0 login)
Use this when calls should run as the signed-in user:
{
"mcpServers": {
"Language Weaver": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.languageweaver.com/mcp/v1",
"3334"
]
}
}
}
Service setup (Language Weaver client credentials)
Use this when calls should run as a Language Weaver API client. Each client authenticates with its own Language Weaver API credentials.
The credentials are passed as the Lw-Client-Id and Lw-Client-Secret headers. Supply them through
the env block of the server entry, and reference them from the --header values:
{
"mcpServers": {
"Language Weaver (service)": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.languageweaver.com/mcp/v1",
"3335",
"--header",
"Lw-Client-Id:${LW_API_CLIENT_ID}",
"--header",
"Lw-Client-Secret:${LW_API_CLIENT_SECRET}"
],
"env": {
"LW_API_CLIENT_ID": "<client-id>",
"LW_API_CLIENT_SECRET": "<client-secret>"
}
}
}
}
How the env block is used
The env block defines the environment variables of the process the client launches. mcp-remote
expands ${LW_API_CLIENT_ID} and ${LW_API_CLIENT_SECRET} in the --header values from that
environment itself.
The MCP client spawns command directly rather than through a shell, so:
- variables set only in your own shell profile are not visible to the server entry — they must be
declared in
env(or otherwise be present in the client application's own environment); - shell features such as
~expansion, command substitution and quoting do not apply. Use absolute paths forcommand.
Warning
If a referenced variable is unset or empty, mcp-remote substitutes an empty string rather than
failing, and sends a bare Lw-Client-Id: header. This surfaces later as a confusing 401. If
authentication fails, check that both variables are declared in env and non-empty.
Keeping credentials out of the configuration file
Values placed in env are stored in cleartext in claude_desktop_config.json. If that is not
acceptable, keep the credentials in a secret store and point command at a wrapper script that
reads them, exports LW_API_CLIENT_ID and LW_API_CLIENT_SECRET, then execs npx with the same
arguments. The configuration then holds no secrets and needs no edit when credentials are rotated.
Verify Connection
- Restart Claude Desktop after updating
claude_desktop_config.json. - Open the tools menu in chat input and confirm the Language Weaver MCP server is listed and connected.
- Run a simple test prompt such as:
Using Language Weaver, list my available language pairs. - Run a translation prompt such as:
Using Language Weaver, translate "good morning" to French.
Expected behavior:
- Interactive entry: first call can trigger browser login.
- Service entry: no browser login; calls run using
Lw-Client-IdandLw-Client-Secret.
Notes
- Server instance supports both interactive and service entries.
- Use separate callback ports per entry (for example
3334and3335).