shiplocale-mcp
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SHIPLOCALE_SCOPES | No | Space-separated scopes to request — must be a subset of what the key holds | read translate |
| SHIPLOCALE_API_URL | No | Override for local development | https://api.shiplocale.com |
| SHIPLOCALE_CLIENT_ID | Yes | API key client ID (slk_...) | |
| SHIPLOCALE_CLIENT_SECRET | Yes | API key secret (sls_...) |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_appsA | List all apps in the ShipLocale portfolio, with their store (AppStore/GooglePlay), bundle ID, and base language. |
| list_variantsA | List A/B listing variants for an app. Most metadata tools accept an optional variantId; omitting it targets the production variant. |
| get_app_metadata | Get all local-draft metadata localizations for an app: every field (Title, Subtitle, Keywords, Description, PromotionalText, ...) in every locale, with status (Draft/Translated/Approved/Pushed/Failed). Pass iapProductId to read one IAP's display-name rows instead. |
| list_releasesA | List an app's releases (versions) and their What's New drafting state. |
| get_release_notes | Get the What's New text of a release in every locale, with per-locale status. |
| get_target_languagesA | Get target translation locales. Three levels, each overridable: account default (no args), app level (appId), or IAP level (appId + productId). |
| get_screenshot_textsA | Get all screenshot headline/caption base texts and their translations, per slot. |
| get_character_limitsA | Get ShipLocale's hard character limits per metadata field, plus soft guidance for screenshot headlines/captions. Check these before writing copy. |
| update_app_copyA | Upsert the base-language text of one metadata field in ShipLocale's local draft. Does NOT touch the live store listing. Respect get_character_limits. Pass iapProductId to set an IAP display name. |
| update_localizationA | Edit a specific localization row (base or translated text) by its ID from get_app_metadata / get_release_notes. Set approve:true to mark it Approved — pushes only pick up Approved rows. |
| translate_fieldA | Start an async AI translation job for one metadata field into target locales. Results are cached; set force:true to re-translate unchanged copy. Counts against daily translation caps. |
| improve_copyA | Ask ShipLocale's AI to rewrite copy for a field (e.g. shorten, punch up). Returns the improved text for review — it does NOT save anything; follow up with update_app_copy to apply it. |
| create_releaseA | Create a release for a version. Optionally include sourceNotes (commit log or bullet points) that generate_release_notes will turn into polished What's New copy. |
| update_release_notes | Upsert the base-language What's New text for a release directly. |
| generate_release_notesA | Generate polished base-language What's New copy from the release's sourceNotes (commit log / bullets). Counts against monthly generation caps. |
| translate_release_notesA | Start an async job translating a release's What's New into the app's target locales. |
| update_target_languagesA | Set target translation locales at account level (no appId), app level (appId), or IAP level (appId + productId). App-level changes propagate to same-bundle-ID sibling store rows. |
| update_screenshot_textB | Set the base-language headline or caption for a screenshot slot. Guidance: headline ≤ 30 chars, caption ≤ 60 (hard cap 200). |
| update_screenshot_translationA | Manually set one locale's translation of a screenshot headline/caption. Pass an empty string to delete the override so AI can re-translate it. |
| translate_screenshot_textsC | Start an async job translating all screenshot headlines/captions into the given locales. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/ShipLocale/shiplocale-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server