ai-workers-mcp
This server routes commodity NLP tasks to free-tier LLMs, saving premium AI tokens for more complex work. Key capabilities include:
Summarize (
ai_summarize): Summarize a URL or text into paragraph or bullet formatTranslate (
ai_translate): Translate text into one or more target languagesGenerate (
ai_generate): Generate text from a prompt with optional system contextRewrite (
ai_rewrite): Rewrite text in various styles (formal, casual, concise, etc.)Proofread (
ai_proofread): Correct grammar/spelling and list fixes, with language awarenessBullet Points (
ai_bullet): Convert prose into a markdown bullet listOutline (
ai_outline): Build a hierarchical markdown outline from textClassify (
ai_classify): Classify text into provided labels with truncate or vote overflow strategiesExtract (
ai_extract): Extract named fields from text as structured JSONQ&A (
ai_qa): Answer questions about a URL or text, with automatic map-reduce for long contentCompare (
ai_compare): Compare two texts with optional focus on a specific aspectEmail Draft (
ai_email_draft): Draft an email from bullet-point notes with configurable toneKeywords & Sentiment: Extract keywords or analyze sentiment
Title Suggestions: Generate title options for text
Monitor Usage: View daily request/error counts per provider/key
Reload Configuration: Dynamically reload config without restarting
Override Cache TTL: Adjust cache settings per tool at runtime
Additional features: handles texts up to 50,000 characters with auto-chunking, supports multi-provider round-robin with automatic fallback, and filters sensitive patterns (e.g., credentials) before sending to LLMs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ai-workers-mcptranslate 'Hello, how are you?' to French"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ai-workers-mcp
MCP server that routes commodity NLP tasks (summarize, translate, rewrite, proofread, …) to free-tier LLMs, saving Claude tokens for work that actually needs them. Multi-provider, multi-account, with round-robin, automatic fallback, in-memory caching, and daily usage tracking.
Tools
All exposed as ai_* MCP tools and as /<verb>-ai slash commands.
NLP tools
Tool | Input | What it does |
|
| Summarize a page or prose ( |
|
| Translate to one or more languages in one call |
|
| Generate text from a prompt |
|
| Rewrite in one or more styles in one call |
|
| Correct and list fixes (language-aware) |
|
| Turn prose into a bullet list (optional cap) |
|
| Build a hierarchical outline (H1–H |
|
| Classify into one label; overflow: |
|
| Extract fields as JSON |
|
| Answer a question about content (map-reduce for long texts) |
|
| Compare two texts |
|
| Draft an email from notes |
|
| Extract top keywords (default 10) |
|
| Sentiment analysis — label, confidence, summary |
|
| Generate title suggestions (default 5) |
Observability & config tools
Tool | Input | What it does |
| — | Show today's request/error counts per provider/key |
| — | Reload |
|
| Override cache TTL for a tool at runtime |
Every response carries a provider/model banner: 🔷 **gemini · gemini-2.5-flash** ────.
Large-text support
All text tools auto-chunk inputs over 50 000 characters and merge results (map-reduce for summarize/qa, chunk-outline-merge for outline, majority-vote or truncate for classify, per-field merge for extract, concatenation for others). No manual splitting needed.
Related MCP server: local-llm-delegation-mcp
Slash commands
Each NLP tool has three slash-command variants (48 total, in .claude/commands/):
/<verb>-ai— result shown in chat (with banner)/<verb>-ai-replace— replaces the editor selection/<verb>-ai-append— inserts the result after the selection
NLP verbs: generate, summarize, translate, rewrite, proofread, list, outline, classify, extract, ask, compare, draft, keywords, sentiment, title.
Observability verbs (chat only): usage, check-limits, configure.
Input priority: argument › editor selection › clipboard › interactive prompt.
Multi-value arguments use / as separator:
/translate-ai en/es/nl→ translates into English, Spanish, and Dutch in one call/rewrite-ai formal/concise→ returns both rewrites in one response
Overflow handling
For very long inputs (> 50 000 chars), slash commands for classify ask which strategy to use:
truncate — classify the first 50 000 characters only
vote — classify each chunk independently, return the majority label
skip — cancel
/ask-ai and /outline-ai handle overflow automatically (map-reduce and chunk-outline-merge respectively).
Setup
1. Configure providers & keys
Copy the example and add your key(s):
cp ai-workers.example.json ~/.config/ai-workers.json
chmod 600 ~/.config/ai-workers.json
# edit ~/.config/ai-workers.jsonGet a free Gemini key at aistudio.google.com. Use gemini-2.5-flash (free tier). Add more keys to multiply your free quota, or add Groq/Mistral/OpenRouter blocks to order for cross-provider fallback.
2. Install (cross-platform)
macOS / Linux / inside WSL:
./setup.shWindows (Claude Code on Windows, server in WSL):
.\setup.ps1The installer builds the server, deploys the slash commands to your user scope, and registers the MCP server in your Claude Code config.
3. Reload Claude Code
Run /mcp to confirm ai-workers is connected.
Portability
The core (src/**) is plain Node — runs identically on macOS, Linux, WSL, and Windows. The only platform-specific glue is the per-machine MCP registration, handled by the two setup scripts. Secrets live solely in ~/.config/ai-workers.json (resolved via homedir()), never in the Claude config.
Privacy
A rules-based filter runs before any text leaves your machine. It blocks file paths, code patterns, and credential patterns (sends nothing, returns an error), and warns on emails/phone numbers (prepends a notice, still sends). Keep inputs plain prose.
Configuration reference
~/.config/ai-workers.json — read once at server start (use /configure-ai reload or ai_reload_config to apply changes live):
{
"order": ["gemini", "groq", "mistral"],
"providers": {
"gemini": {
"baseURL": "https://generativelanguage.googleapis.com/v1beta/openai/",
"model": "gemini-2.5-flash",
"keys": ["KEY_1", "KEY_2"],
"dailyLimit": 1000
},
"groq": {
"baseURL": "https://api.groq.com/openai/v1/",
"model": "llama-3.3-70b-versatile",
"keys": ["YOUR_GROQ_KEY"],
"dailyLimit": 1000
},
"mistral": {
"baseURL": "https://api.mistral.ai/v1/",
"model": "mistral-small-latest",
"keys": ["YOUR_MISTRAL_KEY"],
"dailyLimit": 1000
}
}
}Round-robin rotates across a provider's keys; 429 triggers escalating cooldown (60s → 1h), 401/403 a long cooldown, then falls through to the next provider in order. Falls back to the GEMINI_API_KEY env var if no config file exists.
Caching
Text and URL results are cached in memory per tool:
Tool | Default TTL |
| 1 hour |
all others | 5 minutes |
Override at runtime: /configure-ai ttl <tool> <ms> or call ai_set_ttl directly.
Usage tracking
Every LLM call is recorded to ~/.config/ai-workers-usage.json (per-key ok/error counts, reset at Pacific midnight). Run /usage-ai or call ai_usage to see today's table.
Rebuilding after changes
npm run buildThen reload Claude Code (or use ai_reload_config if only the JSON config changed).
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- 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/basttran/ai-workers-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server