A collection of Model Context Protocol (MCP) servers developed by Arvore for seamless integration with AI assistants like Claude.
This monorepo contains the following MCP servers:
Manage AWS Secrets Manager secrets directly from your AI assistant.
Features:
- Create, read, update, and delete secrets
- List all secrets in your account
- Describe secret metadata
Query and analyze Datadog monitoring data.
Features:
- Query metrics and time series data
- Search logs
- Get service maps and APM data
- List hosts and active metrics
- Search traces
Execute read-only MySQL queries safely.
Features:
- Execute SELECT queries
- List tables in database
- Read-only operations for safety
Execute read-only PostgreSQL queries safely.
Features:
- Execute SELECT queries
- List tables, schemas, and databases
- Describe table structure
- Full schema support
- Read-only operations for safety
Execute read-only ClickHouse queries safely.
Features:
- Execute SELECT queries
- List tables and databases
- Describe table structure (columns, types, keys)
- Read-only operations for safety
Search and get information about npm packages.
Features:
- Get package information and metadata
- Get download statistics
- Search packages by query
Manage LaunchDarkly feature flags directly from your AI assistant.
Features:
- List, search, create, and delete feature flags
- Toggle flags ON/OFF per environment
- Add targeting rules (in, contains, segmentMatch, etc.)
- List and inspect segments
- Multi-environment support (production, test, etc.)
Self-hosted temporary email server with SMTP + SQLite.
Features:
- Built-in SMTP server to receive real emails
- Create and manage temporary email accounts
- Read, list, and delete emails
- SQLite storage β no third-party dependencies
- Configurable domain via AWS Route 53
Google Chat integration for managing spaces, members, and messages.
Features:
- List and inspect Google Chat spaces
- List space members
- Read message history with filtering and pagination
- Send messages (with thread support)
- Delete messages
- Service account JWT auth (no external dependencies)
- Domain-wide delegation for full user-level access
Gmail integration β read, send, and manage messages with OAuth user flow.
Features:
- Search messages with full Gmail query syntax (
from:,is:unread,newer_than:, etc.) - Read messages and full threads with parsed headers and body
- Create drafts (always available, even with sending disabled)
- Send mail and reply with proper threading (
In-Reply-To,References,threadId) - Modify labels (mark read, archive, star, trash)
- OAuth Desktop client flow with browser-based login
- Encrypted token storage (AES-256-GCM + macOS keychain)
- Send-mode opt-in via
GMAIL_MCP_ALLOW_SENDto prevent accidental sends
Team memory β persistent knowledge base with semantic search for AI-assisted development.
Features:
- Semantic search across team memories using local embeddings
- Multilingual support (Portuguese + English) via
paraphrase-multilingual-MiniLM-L12-v2 - Categories: decisions, conventions, incidents, domain, gotchas
- Create, archive, and remove memories via MCP tools
- Embedding cache for fast startup
- Keyword fallback when embeddings are unavailable
Runtime Lens β Runtime inspection with inline values for React, NestJS and Next.js. Two components in one package: a VS Code/Cursor/Kiro extension with inline value display and an MCP server for AI-assisted debugging.
Features:
- Inline runtime values displayed in the editor
- Runtime agent injected via
--requirethat patchesconsole.log/warn/error/debug - WebSocket-based communication between agent and extension
- 14 MCP tools for AI-assisted debugging: log tailing, regex search, error inspection, HTTP request inspection, performance metrics, and more
- Framework detection for React, NestJS, and Next.js
- Real-time console capture with start/stop control
- Permanent setup via
~/.zshrcβ no need to inject every session
Semantic search across meeting transcriptions generated by Meet Transcriber.
Features:
- Semantic search using local multilingual embeddings (paraphrase-multilingual-MiniLM-L12-v2)
- LanceDB vector store with keyword fallback
- Filter by speaker
- List and retrieve full transcription content
- Reads
.mdfiles from~/Documents/meet-transcriptions/by default
Manage SendGrid Dynamic Templates directly from your AI assistant.
Features:
- List, create, update, and delete dynamic templates
- Create and manage template versions (HTML content, subject, plain text)
- Activate specific template versions
- Full CRUD for templates and versions via SendGrid API v3
Polling/waiting primitives β repeatedly check conditions until they're met or time out.
Features:
- Execute shell commands until output matches a condition
- Poll HTTP endpoints until they return expected status/body
- Watch filesystem until files exist, disappear, or contain content
- Call any other MCP server's tool and poll until the result matches (auto-discovers from mcp.json)
- Configurable interval, timeout, and match conditions
MCP Proxy Gateway β consolidates N upstream MCP servers behind 2 tools.
Features:
- Exposes only
mcp_searchandmcp_callto the agent - Semantic search using multilingual embeddings (paraphrase-multilingual-MiniLM-L12-v2)
- Hybrid ranking: BM25 lexical + cosine similarity
- Output shaping: strips redundant fields, truncates text, assigns short refs
- Cursor-based pagination with TTL
- Supports stdio and HTTP transports with env var expansion
Agent Teams Lead β spawn and coordinate multiple AI agent sessions working together as a team. Inspired by Anthropic's agent teams for Claude Code, built as an editor-agnostic MCP layer.
Features:
- Spawn teammates as independent CLI processes (Kiro, Cursor, Claude Code, OpenCode)
- Shared task list with dependencies and exclusive file paths
- Inter-agent messaging (direct, broadcast, or to lead)
- Atomic
mkdir-based file locking for safe parallel task claiming - Audit log in
.agent-teams/team.log
Agent Teams Teammate β MCP injected into each teammate session for claiming tasks, messaging, and publishing artifacts.
Features:
- Claim pending tasks with dependency and lock validation
- Communicate with other teammates and the lead
- Publish artifacts (markdown, JSON, or code) linked to tasks
- Automatically injected by the lead β no manual configuration needed
Agent Teams Chat β cross-developer agent communication via Slack threads. Enables AI agents from different developers to communicate asynchronously through a shared Slack channel.
Features:
- Open conversation threads in a team Slack channel
- Reply to existing threads
- Read thread messages and catch up on conversations
- List recent threads with reply counts and participants
- Search threads by topic or content
- Configurable message format using handlebars-style templates
Agent Teams UI β TUI dashboard for monitoring agent teams in real time. Watches .agent-teams/ and auto-refreshes.
Features:
- Team view with per-teammate task counts and current activity
- Kanban board with task selection and detail view
- WhatsApp-style message view with date separators and sender grouping
- Chat view showing agent stdout as conversation, filterable by agent
- Live timer, progress bar, and new-activity indicators per tab
- Auto-refresh via filesystem watching (chokidar)
Persistent kanban boards for AI agents β manage tasks across sessions with multi-agent coordination, semantic search, and a Linear-style web UI.
Features:
- 12 MCP tools for board and card management
- Multi-session: claim/release cards with session tracking across parallel chats
- Semantic search via LanceDB with multilingual embeddings
- Subtasks via
parent_card_id - Optional web UI (Linear-style dark theme with drag-and-drop, hotkeys, context menus)
- JSON persistence with atomic writes
- Re-read from disk for multi-process visibility
Interact with Metabase BI platform directly from your AI assistant.
Features:
- CRUD for cards (questions), dashboards, and collections
- List databases and tables
- Execute native SQL queries
- Run saved card queries
- Add cards to dashboards
- Get collection items
Manage Magalu Cloud infrastructure through the MGC CLI.
Features:
- Virtual Machines: list, create, start, stop, reboot, delete
- Object Storage: buckets and objects management
- Networking: VPCs, subnets, public IPs
- Kubernetes: cluster management and kubeconfig retrieval
- Block Storage and DBaaS instance listing
- Semantic search across Magalu developer documentation
- Configurable region via
MGC_REGIONenv var
Control Arc Browser on macOS via a hybrid AppleScript + Chrome DevTools Protocol approach.
Features:
- Tab management: list, open, close, search, focus
- Space management: list, get active, switch
- Screenshots via CDP (viewport or full page)
- Network request capture and console log monitoring
- DOM interaction: click, hover, type, scroll, wait for selector
- JavaScript execution (AppleScript for quick queries, CDP for async/await)
- Cookie inspection and page content extraction
PostHog analytics, feature flags, experiments, and more. Works with both PostHog Cloud and self-hosted instances.
Features:
- HogQL queries and structured queries (Trends, Funnels, Retention, Lifecycle, Paths, Stickiness)
- Feature flags: create, update, list, delete with rollout control
- A/B test experiments with variants and metrics
- Dashboards and saved insights management
- Event and property definitions exploration
- Persons search and cohort management
- Surveys, early access features, and annotations
- Cross-entity search
Advanced Slack integration using user tokens -- messages sent as the authenticated user.
Features:
- Fuzzy user search with disk cache (47k+ users load instantly)
- Smart DM: resolve user by name/email/ID, auto-open DM channel
- Writing style analysis (emoji usage, punctuation, vocabulary, formality)
- Thread extraction from Slack URLs with participant resolution
- Audio transcription via ElevenLabs STT
- Image download and base64 return for model analysis
- Rate limit retry with backoff
Drive a single WhatsApp account from your AI agent using Baileys.
Features:
- Pair via QR code (ASCII in terminal, PNG file, or base64 data URL)
- Send and receive text, images, audio (PTT or normal), video, and documents
- Local SQLite store for chats, messages, and contacts so the agent can recall past conversations
- Brazilian phone number normalization with WhatsApp-side validation
- Set typing presence, mark messages as read, react, edit, and delete
- Single connection β pair one WhatsApp account from your local agent
Install individual packages:
npm install -g @arvoretech/aws-secrets-manager-mcp
npm install -g @arvoretech/datadog-mcp
npm install -g @arvoretech/mysql-mcp
npm install -g @arvoretech/postgresql-mcp
npm install -g @arvoretech/clickhouse-mcp
npm install -g @arvoretech/npm-registry-mcp
npm install -g @arvoretech/launchdarkly-mcp
npm install -g @arvoretech/tempmail-mcp
npm install -g @arvoretech/google-chat-mcp
npm install -g @arvoretech/gmail-mcp
npm install -g @arvoretech/memory-mcp
npm install -g @arvoretech/runtime-lens-mcp
npm install -g @arvoretech/meet-transcriptions-mcp
npm install -g @arvoretech/sendgrid-mcp
npm install -g @arvoretech/await-until-mcp
npm install -g @arvoretech/mcp-proxy
npm install -g @arvoretech/agent-teams-lead-mcp
npm install -g @arvoretech/agent-teams-teammate-mcp
npm install -g @arvoretech/agent-teams-chat-mcp
npm install -g @arvoretech/metabase-mcp
npm install -g @arvoretech/mgc-mcp
npm install -g @arvoretech/kanban-mcp
npm install -g @arvoretech/posthog-mcp
npm install -g @arvoretech/slack-advanced-mcp
npm install -g @arvoretech/whatsapp-mcpOr using pnpm:
pnpm add -g @arvoretech/aws-secrets-manager-mcpAdd to your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"aws-secrets-manager": {
"command": "npx",
"args": ["-y", "@arvoretech/aws-secrets-manager-mcp"]
},
"datadog": {
"command": "npx",
"args": ["-y", "@arvoretech/datadog-mcp"],
"env": {
"DATADOG_API_KEY": "your-api-key",
"DATADOG_APP_KEY": "your-app-key",
"DATADOG_SITE": "datadoghq.com"
}
},
"mysql": {
"command": "npx",
"args": ["-y", "@arvoretech/mysql-mcp"],
"env": {
"MYSQL_HOST": "localhost",
"MYSQL_USER": "readonly_user",
"MYSQL_PASSWORD": "password",
"MYSQL_DATABASE": "your_database",
"MYSQL_PORT": "3306"
}
},
"postgresql": {
"command": "npx",
"args": ["-y", "@arvoretech/postgresql-mcp"],
"env": {
"POSTGRESQL_HOST": "localhost",
"POSTGRESQL_PORT": "5432",
"POSTGRESQL_USER": "postgres",
"POSTGRESQL_PASSWORD": "password",
"POSTGRESQL_DATABASE": "your_database",
"POSTGRESQL_SSL": "false"
}
},
"clickhouse": {
"command": "npx",
"args": ["-y", "@arvoretech/clickhouse-mcp"],
"env": {
"CLICKHOUSE_URL": "https://your-host:8443",
"CLICKHOUSE_USER": "default",
"CLICKHOUSE_PASSWORD": "secret",
"CLICKHOUSE_DATABASE": "default"
}
},
"npm-registry": {
"command": "npx",
"args": ["-y", "@arvoretech/npm-registry-mcp"]
},
"launchdarkly": {
"command": "npx",
"args": ["-y", "@arvoretech/launchdarkly-mcp"],
"env": {
"LAUNCHDARKLY_EMAIL": "your-email@example.com",
"LAUNCHDARKLY_PASSWORD": "your-password",
"LAUNCHDARKLY_PROJECT": "default",
"LAUNCHDARKLY_ENVIRONMENT": "production"
}
},
"tempmail": {
"command": "npx",
"args": ["-y", "@arvoretech/tempmail-mcp"],
"env": {
"CLOUDFLARE_ACCOUNT_ID": "your-account-id",
"CLOUDFLARE_D1_DATABASE_ID": "your-database-id",
"CLOUDFLARE_API_TOKEN": "your-api-token",
"TEMPMAIL_DOMAIN": "yourdomain.com"
}
},
"google-chat": {
"command": "npx",
"args": ["-y", "@arvoretech/google-chat-mcp"],
"env": {
"GOOGLE_CHAT_CREDENTIALS_PATH": "/path/to/service-account.json",
"GOOGLE_CHAT_USER_EMAIL": "user@yourdomain.com"
}
},
"gmail": {
"command": "npx",
"args": ["-y", "@arvoretech/gmail-mcp"],
"env": {
"GMAIL_MCP_CLIENT_ID": "your-oauth-client-id",
"GMAIL_MCP_CLIENT_SECRET": "your-oauth-client-secret",
"GMAIL_MCP_ALLOW_SEND": "false"
}
},
"team-memory": {
"command": "npx",
"args": ["-y", "@arvoretech/memory-mcp"],
"env": {
"MEMORY_PATH": "./memories"
}
},
"runtime-lens": {
"command": "npx",
"args": ["-y", "@arvoretech/runtime-lens-mcp"],
"env": {
"RUNTIME_LENS_PROJECT_ROOT": "."
}
},
"meet-transcriptions": {
"command": "npx",
"args": ["-y", "@arvoretech/meet-transcriptions-mcp"]
},
"sendgrid": {
"command": "npx",
"args": ["-y", "@arvoretech/sendgrid-mcp"],
"env": {
"SENDGRID_API_KEY": "SG.your-api-key"
}
},
"await-until": {
"command": "npx",
"args": ["-y", "@arvoretech/await-until-mcp"]
},
"mcp-proxy": {
"command": "node",
"args": ["packages/mcp-proxy/dist/index.js"],
"env": {
"MYSQL_HOST": "localhost",
"MCP_PROXY_UPSTREAMS": "[{\"name\":\"mysql\",\"command\":\"npx\",\"args\":[\"-y\",\"@arvoretech/mysql-mcp\"],\"env\":{\"MYSQL_HOST\":\"${MYSQL_HOST}\"}}]"
}
},
"agent-teams-lead": {
"command": "npx",
"args": ["-y", "@arvoretech/agent-teams-lead-mcp"],
"env": {
"WORKSPACE_PATH": "/path/to/your/workspace"
}
},
"agent-teams-chat": {
"command": "npx",
"args": ["-y", "@arvoretech/agent-teams-chat-mcp"],
"env": {
"SLACK_BOT_TOKEN": "xoxb-your-token",
"SLACK_CHANNEL": "C0123456789",
"AGENT_IDENTITY": "Your Name"
}
},
"metabase": {
"command": "npx",
"args": ["-y", "@arvoretech/metabase-mcp"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your-api-key"
}
},
"mgc": {
"command": "npx",
"args": ["-y", "@arvoretech/mgc-mcp"],
"env": {
"MGC_REGION": "br-ne1",
"MAGALU_DOCS_DIR": "./magalu-cloud-docs"
}
},
"kanban": {
"command": "npx",
"args": ["-y", "@arvoretech/kanban-mcp"],
"env": {
"KANBAN_PATH": "./kanban",
"KANBAN_UI": "true",
"KANBAN_PORT": "4799"
}
},
"posthog": {
"command": "npx",
"args": ["-y", "@arvoretech/posthog-mcp"],
"env": {
"POSTHOG_BASE_URL": "https://posthog.example.com",
"POSTHOG_API_KEY": "phx_your_personal_api_key"
}
},
"slack-advanced": {
"command": "npx",
"args": ["-y", "@arvoretech/slack-advanced-mcp"],
"env": {
"SLACK_USER_TOKEN": "xoxp-your-user-token",
"ELEVENLABS_API_KEY": "sk_your-elevenlabs-key"
}
},
"whatsapp": {
"command": "npx",
"args": ["-y", "@arvoretech/whatsapp-mcp"],
"env": {
"WHATSAPP_LOG_LEVEL": "warn"
}
}
}
}Note: These packages are published to the public npm registry and can be used directly with npx without any additional configuration.
- Node.js >= 20
- pnpm >= 9
git clone https://github.com/arvoreeducacao/arvore-mcp-servers.git
cd mcp-servers
pnpm installpnpm buildpnpm testpnpm test:covpnpm lintRun a specific package in development mode:
cd packages/aws-secrets-manager
pnpm dev- Create a new directory in
packages/ - Follow the structure of existing packages
- Update the root
README.md - Add package-specific documentation
This monorepo uses GitHub Actions for automatic publishing to npm. Publishing happens in these scenarios:
All packages are automatically published when code is merged to main (after CI passes).
You can manually trigger publishing for a specific package:
- Go to GitHub Actions
- Select "Publish Packages" workflow
- Click "Run workflow"
- Specify package name (e.g.,
@arvoretech/aws-secrets-manager-mcp) - Choose version bump type (
major,minor, orpatch)
To enable automatic publishing, add these secrets to your GitHub repository:
-
NPM_TOKEN: Required for publishing to npm
- Create a token at https://www.npmjs.com/settings/tokens
- Select "Automation" token type
- Add as repository secret in GitHub Settings > Secrets and variables > Actions
-
CODECOV_TOKEN (optional): For coverage reports
- Get from https://codecov.io
- Add as repository secret
If needed, you can publish manually (requires authentication):
# Publish all packages
pnpm -r publish
# Publish specific package
cd packages/aws-secrets-manager
npm publishTo bump versions:
# In a specific package directory
cd packages/aws-secrets-manager
pnpm version patch # or minor, majorContributions are welcome! Please read our contributing guidelines before submitting PRs.
MIT License - see the LICENSE file for details.
For issues and questions, please open an issue on GitHub.
Made with β€οΈ by Arvore Education