Guides7 min read

Best MCP Servers for Kotlin Developers in 2026

The top MCP servers for Kotlin development. From Android apps to Spring Boot backends — supercharge your Kotlin workflow with Model Context Protocol.

By MyMCPTools Team·

Kotlin has grown from an Android-first language to a full-stack platform — backend APIs with Ktor and Spring Boot, multiplatform mobile targeting iOS and Android, and even web frontends with Kotlin/JS. The right MCP servers match this breadth, giving your AI direct access to the context it needs across your entire Kotlin stack.

Here are the MCP servers that matter most for Kotlin development in 2026.

1. Filesystem MCP Server — Navigate Multi-Module Kotlin Projects

Kotlin projects — especially Android apps and multiplatform codebases — have complex directory layouts with multiple modules, build variants, and generated code. The Filesystem MCP server gives your AI direct access to your entire project tree without you copy-pasting source files.

Key use cases for Kotlin developers:

  • Read Kotlin data classes, sealed classes, and interface hierarchies across modules
  • Inspect build.gradle.kts files to understand project configuration accurately
  • Navigate multiplatform source sets (commonMain, androidMain, iosMain)
  • Review generated Room database code alongside the DAO interfaces

Best for: All Kotlin developers — foundational for any AI-assisted Kotlin workflow.

2. Gradle MCP Server — Build System as Context

Kotlin's tight Gradle integration means build configuration is code. The Gradle MCP server gives your AI visibility into your build scripts, dependency declarations, and task definitions — so it can help you diagnose build failures and dependency conflicts accurately.

Key use cases for Kotlin developers:

  • Diagnose version catalog conflicts by reading your libs.versions.toml
  • Understand custom task dependencies and plugin configurations
  • Debug Kotlin Multiplatform target configurations
  • Review annotation processor setups (Kapt, KSP) that affect code generation

Best for: Kotlin developers dealing with complex multi-module or multiplatform builds.

3. Git MCP Server — Code History for Kotlin Codebases

Kotlin codebases often have significant refactoring history — Java-to-Kotlin migrations, architecture shifts from MVP to MVVM to MVI. The Git MCP server gives your AI access to that history so it understands why things are structured the way they are.

Key use cases for Kotlin developers:

  • Trace when a class was converted from Java and what changed in the migration
  • Review recent coroutine or Flow refactors to understand async patterns in use
  • Check blame on complex sealed class hierarchies to understand design intent
  • Compare API surface changes across versions

Best for: Kotlin teams maintaining long-lived Android apps or backend services.

4. GitHub MCP Server — Issues and PRs for Kotlin Projects

Whether you're building Android apps or Kotlin backend services, the GitHub MCP server lets your AI create issues, review PRs, and search across your entire codebase. This is especially powerful for multiplatform projects spanning multiple repositories.

Key use cases for Kotlin developers:

  • Search for all usages of a coroutine scope pattern across a monorepo
  • Create bug reports with stack traces and reproduction steps attached
  • Review PR diffs for API changes across common and platform-specific code
  • Find related issues when debugging Android-specific vs iOS-specific behavior

Best for: Kotlin teams or open-source Kotlin library maintainers.

5. PostgreSQL MCP Server — Schema-Aware Backend Queries

Kotlin backend developers using Exposed, JOOQ, or Spring Data JPA need precise schema knowledge. The PostgreSQL MCP server gives your AI live access to your database schema so it writes accurate queries and correct entity mappings against your actual tables.

Key use cases for Kotlin developers:

  • Generate correct Exposed table object definitions from real schemas
  • Write type-safe JOOQ queries with accurate column name mappings
  • Debug Hibernate mapping issues by inspecting current table structure
  • Understand migration history via schema inspection

Best for: Ktor, Spring Boot, or Quarkus developers using PostgreSQL.

6. Docker MCP Server — Containerized Kotlin Services

Kotlin microservices almost always run in Docker, especially Spring Boot and Ktor services deployed to Kubernetes. The Docker MCP server gives your AI visibility into your running containers and logs — essential for debugging Kotlin backend services.

Key use cases for Kotlin developers:

  • Inspect container logs to correlate with Kotlin exceptions and stack traces
  • Debug multi-service compose stacks for local Kotlin microservice development
  • Review container resource usage to understand memory pressure in JVM services
  • Check health endpoint responses alongside your Kotlin service code

Best for: Kotlin backend developers deploying containerized JVM services.

7. Brave Search MCP Server — Documentation and Library Research

Kotlin's ecosystem evolves fast — new Coroutines APIs, multiplatform libraries, and Compose Multiplatform updates land frequently. The Brave Search MCP server lets your AI look up current documentation and library changelogs without you leaving your development flow.

Key use cases for Kotlin developers:

  • Look up the correct Coroutines API for your Kotlin version
  • Find Compose Multiplatform examples for specific platform targets
  • Check if a library supports Kotlin Multiplatform before adding it as a dependency
  • Research Kotlin Symbol Processing (KSP) processor documentation

Best for: All Kotlin developers staying current with the evolving ecosystem.

Recommended MCP Stack for Kotlin Developers

  • Always active: Filesystem, Brave Search, Git
  • Android/Multiplatform: Gradle MCP, GitHub
  • Backend (Ktor/Spring Boot): PostgreSQL, Docker

Kotlin's strengths — null safety, coroutines, and expressive type system — shine brightest when your AI has real context. With Filesystem for codebase navigation, Gradle for build awareness, and PostgreSQL for schema-accurate backend code, your AI writes idiomatic Kotlin that fits your architecture rather than generic snippets.

Related guides:

Recommended Tools

Better Stack

Free Plan

Get alerted when your APIs, browser tests, payment pipelines, or MCP server dependencies go down. Used by 100K+ developers.

Start monitoring free →

1Password

14-day Free Trial

Store and inject API keys, payment credentials, tokens, and file access secrets into your MCP server configs. Trusted by 150K+ developers.

Try 1Password free →

🔧 MCP Servers Mentioned in This Article

📁

Filesystem MCP Server

sandboxed read, write, edit, move and search access to an explicit whitelist of local directories, and it is the reference implementation most other filesystem MCP servers are modelled on. Shipped by Anthropic in the official modelcontextprotocol/servers monorepo (89,000+ stars, actively maintained), it is a Node.js server published to npm as @modelcontextprotocol/server-filesystem. The part worth understanding before you install is the access-control model, because there are now two ways to grant directories and they do not compose. Method one is command-line arguments: `npx -y @modelcontextprotocol/server-filesystem /path/one /path/two`. Method two, and the one the maintainers recommend, is MCP Roots — a client that supports the roots protocol sends its roots at initialization, and those roots COMPLETELY REPLACE any directories passed on the command line, then get replaced again on every `notifications/roots/list_changed`. That means allowed directories can change at runtime without restarting the server, but it also means a roots-capable client silently overrides your CLI arguments. If the server starts with no arguments and the client either does not support roots or sends an empty list, initialization throws an error. The tool surface is broad: `read_text_file` (with mutually exclusive `head`/`tail` line windows), `read_media_file` returning base64 image/audio content blocks, `read_multiple_files` which keeps going when individual reads fail, `write_file`, `edit_file`, `create_directory`, `list_directory`, `list_directory_with_sizes`, `move_file`, `search_files`, `directory_tree`, `get_file_info` and `list_allowed_directories`. `edit_file` is the one to learn — it does line-based and multi-line pattern matching with indentation detection and preservation, returns a git-style diff with context, and supports `dryRun: true` so you can preview a change before applying it; the maintainers recommend always running a dry run first. Every operation is refused outside the allowed set, and `list_allowed_directories` is the fastest way to confirm what the server actually believes it can touch.

Local
💻

GitHub MCP Server

authenticated access to the whole GitHub platform — repositories, files, branches, issues, pull requests, Actions runs, security alerts, discussions and notifications — from Claude, Cursor, VS Code, Copilot CLI and any other MCP host. There is no npm package for this server, and that trips up most people who try to install it: `@github/mcp-server` is not published to the npm registry, so any `npx` line you find for it will fail. GitHub ships it three other ways. The easiest is the hosted remote server at https://api.githubcopilot.com/mcp/, which needs no install at all — point an HTTP-transport MCP client at that URL and log in with OAuth (VS Code 1.101+, Claude Desktop, Claude Code, Cursor and Windsurf all support this). The second is the official Docker image ghcr.io/github/github-mcp-server, which is what the copy-paste command on this page runs; on github.com it now performs a browser-based OAuth login on first use and keeps the token in memory only, which is why the published Docker configs map a fixed loopback callback port (-p 127.0.0.1:8085:8085 with GITHUB_OAUTH_CALLBACK_PORT=8085) so the container can receive the callback. Prefer a token? Set GITHUB_PERSONAL_ACCESS_TOKEN instead — it takes precedence over OAuth, and the minimum useful scopes are repo, read:org and read:packages. The third is the native Go binary from the repository's releases, which needs no fixed port for the OAuth flow. GitHub Enterprise Server has no hosted option: use the local server with --gh-host or GITHUB_HOST set to your instance (include the https:// scheme — it defaults to http://, which GHES rejects). Toolsets can be narrowed with GITHUB_TOOLSETS, and an insiders channel is available at /mcp/insiders or via the X-MCP-Insiders header.

Auth required📘
💻

Git

Tools to read, search, and manipulate Git repositories. Full Git operations support.

Local
🗄️

PostgreSQL MCP Server

The PostgreSQL MCP server was the Model Context Protocol reference server for Postgres, and it is retired: the source now sits in modelcontextprotocol/servers-archived — a repository GitHub reports as archived, described as "Reference MCP servers that are no longer maintained" — and the npm package @modelcontextprotocol/server-postgres carries a deprecation notice reading "Package no longer supported." It still installs and still runs, which is why most third-party setup articles have not caught up. What it provides is deliberately small: a single tool, query, which executes read-only SQL inside a READ ONLY transaction, plus per-table schema information exposed as MCP resources at postgres://<host>/<table>/schema, with column names and data types discovered from database metadata. There is no index advice, no health check, no separate schema-listing tool, and no write mode. Install is npx @modelcontextprotocol/server-postgres with a postgres:// connection string as the argument. For active work against Postgres, the maintained alternative is Postgres MCP Pro (crystaldba/postgres-mcp), which exposes nine tools including index tuning against hypothetical indexes and a database health check, and has an explicit restricted access mode; if your database is hosted on Supabase or Neon, their platform servers add branching and logs that a raw Postgres connection cannot see. Reach for this archived server only when you want the smallest possible surface — one process, one read-only query tool, nothing else.

Local📘
💻

Gradle MCP

Gradle build system MCP server for JVM and Android projects. Run tasks, inspect dependencies, check build variants, manage Android SDK configurations, and debug build failures through your AI assistant.

Local
🔧

Docker MCP Server

The Docker MCP server (ckreiling/mcp-server-docker) gives an AI assistant direct control of a Docker daemon over the Model Context Protocol: containers, images, networks and volumes, as tools rather than shell commands. It is the community server most people mean by "Docker MCP" — distinct from Docker’s own Docker MCP Gateway, which does not manage your containers at all but runs *other* MCP servers inside containers. If you want to ask Claude why the postgres container keeps restarting, you want this one; if you want a single secure endpoint in front of twenty catalog servers, you want the gateway. The tool surface is explicit and small enough to reason about: list_containers, create_container, run_container, recreate_container, start_container, fetch_container_logs, stop_container and remove_container for containers; list_images, pull_image, push_image, build_image and remove_image for images; list_networks / create_network / remove_network and list_volumes / create_volume / remove_volume for the rest. Two resource templates, docker://containers/{id}/logs and docker://containers/{id}/stats, let a client read logs and live stats by container ID or name without a tool call. It also ships a docker_compose prompt that puts the model into a plan-then-apply loop — you describe the containers you want under a project name, the model proposes a concise plan, and nothing runs until you approve it; reopening the prompt with the same project name re-reads the state of everything created under it, which is how you clean up after a lost chat. It runs on the Python Docker SDK’s from_env, so DOCKER_HOST applies: set ssh://user@host and the same server administers a remote engine. Two limits are deliberate and stated by the project — privileged options like --privileged and --cap-add/--cap-drop are not supported, and container configuration passes through the model, so no secrets belong in it.

Local📘
🔍

Brave Search MCP Server

The Brave Search MCP Server is the official server from Brave that gives AI assistants privacy-first web search through the independent Brave Search API — no tracking, no profiling, and results drawn from Brave's own web index rather than Google or Bing. It exposes five distinct tools that map directly to the Brave Search API endpoints: brave_web_search for general queries with pagination, freshness filters, and safe-search controls; brave_local_search for businesses, restaurants, and points of interest with automatic location filtering; brave_news_search for recent articles and current events; brave_image_search for image discovery; and brave_video_search for finding videos across the web. Authentication uses a single BRAVE_API_KEY (free tier available at brave.com/search/api) or a mounted BRAVE_API_KEY_FILE for Docker-secret setups. Install in Claude Desktop, Cursor, Windsurf, or VS Code with one npx command and choose stdio or streamable-HTTP transport. Because Brave operates its own crawler and index, the Brave Search MCP server is a strong choice for developers who want an alternative to Google-dependent search tools, need reproducible non-personalized results, or care about data privacy in agent workflows — Claude can pull fresh web context, verify facts, and research topics without leaking queries to ad-tech pipelines.

Local

📚 More from the Blog