Kotlin Lib MCP
Allows fetching and exploring published Kotlin/Java library sources, with tools to list packages and declarations, retrieve API signatures, KDoc, raw source, search source, dependencies, and version information.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
kotlin-lib-mcp
Give your AI agent the real sources of any Maven-published Kotlin/Java library.
An MCP server that, on request, downloads the sources of a
library (e.g. io.ktor:ktor-client-core:3.5.1), parses them with the Kotlin Analysis API
(standalone K2/FIR mode), and exposes structured information — public API surface, KDoc,
dependencies/metadata, raw source + search — to MCP clients: Claude Code, Claude Desktop,
IntelliJ IDEA (AI Assistant / Junie), VS Code and GitHub Copilot. An optional Compose Desktop
dashboard runs the same server in-process.
Tools — fetch_library · list_packages · list_declarations ·
get_api_signature · get_kdoc · get_source · search_source · diff_versions · diff_api ·
get_dependencies · list_versions · get_latest_version — plus MCP resources and a prompt.
Those install the Docker image. For the Claude Code plugin (which runs on your JDK), IntelliJ IDEA, or to run the release zip without Docker, see Quick start.


Why this and not a docs-lookup server?
Most documentation MCP servers scrape rendered doc sites or feed the model pre-digested summaries. This one works from the published sources jar — the ground truth:
Resolved signatures, not regex guesses. Declarations are analyzed with the same Analysis API that powers the Kotlin IDE, so
get_api_signaturereturns real, type-resolved signatures (with graceful best-effort fallback when transitive dependencies are missing).KMP-aware. Kotlin Multiplatform libraries publish per-target sources jars; these are resolved properly via
.moduleGradle metadata, and every symbol is tagged with its targets.KDoc as data. Summaries, descriptions and tags are extracted per declaration — not whole HTML pages.
Exact version you asked for, offline after the first fetch. Everything is cached on disk keyed by
group/artifact/version; no re-downloads, no drift between the docs and the version you actually depend on.Raw source when you need it.
get_sourceand boundedsearch_sourcelet the agent read the actual implementation, not just the API.
Related MCP server: codesurface
Quick start (no build required)
Option 1 — Claude Code plugin. The server plus skills that make Claude reach for it, two
commands (/kotlin-lib:api, /kotlin-lib:migrate) and a setup helper. Needs a JDK 25+ — the one on
your PATH, or any other set by path in the plugin's java option; no Docker. It downloads the
release zip on first use:
/plugin marketplace add aoreshkov/kotlin-lib-mcp
/plugin install kotlin-lib@kotlin-lib-mcpSee plugin/README.md for what it bundles.
Option 2 — release zip. Download the latest release, unzip (needs a Java 25+ runtime), then:
claude mcp add kotlin-lib -- /path/to/kotlin-lib-mcp-server-<version>/bin/server --transport stdioOption 3 — Docker.
claude mcp add kotlin-lib -- docker run -i --rm -v kotlin-lib-mcp-cache:/home/mcp/.cache ghcr.io/aoreshkov/kotlin-lib-mcpOther clients. IntelliJ IDEA, Android Studio, Junie, Claude Desktop and MCP registry installs are
covered in guide/clients.md.
Tools
All tools take a Maven coordinate (group:artifact:version). Call fetch_library first —
it downloads, extracts and analyzes the sources once; every other tool answers from the cached
index. fetch_library, list_versions and get_latest_version also accept group:artifact, and
fetch_library accepts group:artifact:latest to resolve the latest stable release.
Tool | Purpose |
| Download + analyze + cache; returns a summary. Idempotent. Version may be omitted or |
| Packages with declaration counts and KMP targets; paged |
| Declarations with signatures and deprecations; filter by |
| Resolved signature of one declaration by FQ name, with its deprecation and |
| KDoc (summary, description, tags) of one declaration |
| Raw source of a file ( |
| Substring/regex search; bounded, returns |
| Unified diff between two fetched versions; summary-first, paged, |
| Public-API changes between two fetched versions — added, removed, changed, deprecated (with |
| Dependency tree from |
| Published versions from |
| Latest stable release (and newest overall) from |
Every tool declares a title, behavior annotations, a typed outputSchema and an icon, and returns
compact JSON text with matching structuredContent. Symbols whose types can't be resolved (missing
transitive dependencies) degrade to bestEffort: true PSI signatures instead of failing.
Going further
Clients: IntelliJ IDEA, Android Studio, Junie,
.mcp.json, MCP registriesConfiguration: Streamable HTTP, command-line flags, cache location
Protocol features: tool metadata, elicitation, tasks, resources, prompt, icons
Telemetry: OpenTelemetry traces with
--otel
Privacy
Nothing about you is collected, stored remotely, or shared. There is no analytics, no phone-home, no account, and no credential of any kind.
What leaves your machine. Only requests to the Maven repositories you point it at (Maven Central, plus any
--repo;--no-maven-centraldrops Central): themaven-metadata.xml,.pom/.modulemetadata and sources jar for the coordinates you ask about. Those repositories see the coordinate and your IP, under their own privacy policies. Pulling the Docker image likewise talks to GHCR, and the Claude Code plugin's launcher talks to this repository's GitHub releases (the releases API at most once a day, and a download when there is a new server). That is the complete list of outbound traffic.What it reads. Downloaded library sources only. It does not read, index or transmit your project's code — it has no access to it.
What it stores, and where. Downloaded artifacts and the parsed index, on your disk only, under the OS cache directory (see Cache) or
--cache-dir. Under--tasks, task records live in atasks/subdirectory. Nothing is written anywhere else.Retention. Cached libraries stay until you delete them — the directory is browsable and safe to remove at any time. Task records are dropped once their TTL elapses (10 minutes by default, 1 hour maximum).
Logs. stderr on your machine.
--forward-logs-to-client(opt-in) mirrors them to your MCP client;--otel(opt-in) exports trace spans to the OTLP collector you configure, and carries no personal data — method names, tool names, session id, transport. Both are off by default.Contact. Questions: open an issue. Security or privacy reports: private vulnerability reporting.
Contributing
Contributions welcome: CONTRIBUTING.md also covers building from source. Release history lives in CHANGELOG.md, help is described in SUPPORT.md, and security reports go through private vulnerability reporting.
Sponsor
If kotlin-lib-mcp saves you time, consider
sponsoring its maintenance. Sponsorship funds
keeping the Analysis API version-lock current with new Kotlin releases and the
supply-chain-hardened release pipeline. Every tier is appreciated.
License
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
An MCP server that gives your AI access to the source code and docs of all public github repos
Repository knowledge graph MCP server for codebase understanding and debugging.
MCP server for accessing curated awesome list documentation
Related MCP Servers
- AlicenseBqualityBmaintenanceA comprehensive MCP server for analyzing Maven jar files in the local repository, enabling AI agents to understand dependencies, analyze bytecode, and extract source code.1773 npm104 PyPI20MIT
- AlicenseAqualityDmaintenanceMCP server that indexes your codebase's public API at startup and serves it via compact tool responses, saving tokens vs reading source files.521MIT
- AlicenseNot gradedqualityCmaintenanceProvides a local MCP server for searching and retrieving documentation from 22+ open-source projects, enabling AI coding assistants to access up-to-date docs without network dependency.9 npm3MIT

GitHitsofficial
AlicenseNot gradedqualityAmaintenanceEnables AI coding agents to search and access open-source code, documentation, and package information via a local MCP server.2,658 npm130Apache 2.0