npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

android-corporate-mcp

v0.1.0

Published

Model Context Protocol server for Android/Gradle project intelligence

Readme


Deterministic Model Context Protocol server that gives AI agents structured, verifiable evidence about a real Android/Kotlin/Gradle repository — instead of letting them guess.

The MCP observes. The agent reasons.

The problem

An agent may know what a ViewModel or a Gradle convention plugin generally is, but it can't safely assume which architecture this repository actually uses, which plugins are applied, or whether a proposed change compiles — without either reading the whole repo itself or guessing. This server closes that gap: 25 tools inspect the real project (source, manifests, Gradle output, compiler-parsed symbols) and return what was actually found — never an inferred opinion.

Philosophy

Every tool returns evidence: a file path, a line, a parsed value, a process exit code. Nothing is generated, summarized, or recommended by the server itself — that reasoning stays with the connected agent. See docs/architecture.md for how that boundary is enforced end to end.

Quick start

npm install -g android-corporate-mcp

Add to your MCP client config (Claude Code .mcp.json shown; see docs/configuration.md for every supported client):

{
  "mcpServers": {
    "android-mcp": {
      "command": "android-corporate-mcp"
    }
  }
}

Restart your client, open an Android/Gradle repository, and call a tool:

// tools/call project.inspect { "projectRoot": "/absolute/path/to/your-android-project" }
{
  "status": "success",
  "modules": ["app", "core:network", "feature:home"],
  "settingsFile": "settings.gradle.kts"
}

Full walkthrough: docs/getting-started.md.

What it can do

25 tools across project discovery, Kotlin symbol analysis, Gradle execution, build validation, and security auditing — full contract for each in docs/tools.md.

| Category | Examples | |---|---| | Project & Kotlin | project.inspect, manifest.inspect, symbol.find, symbol.references, module.graph | | Gradle execution | gradle.tasks, gradle.run, tests.run, lint.run, dependencies.inspect | | Architecture & build | architecture.detect, build.validate, staticAnalysis.run | | Android deep inspection | navigation.graph, resource.references, manifest.merge | | Security | proguard.inspect, security.audit |

Compatibility

Speaks standard MCP stdio — no client-specific code. Verified directly on macOS (Apple Silicon) with the local build/JAR/npm launcher; other MCP clients and platforms are expected-compatible but not yet individually confirmed. Full, honestly-graded matrix (tested vs. expected vs. untested) in docs/compatibility.md.

Architecture

flowchart TB
    A["AI Agent<br/>(Claude, Codex, Copilot...)"] -->|MCP stdio| B["Android MCP Server"]
    B -->|reads / executes| C[("Android + Kotlin<br/>repository")]
    C -->|evidence, JSON| B
    B -->|structured evidence| A
    A -->|reasons, decides| D["Implementation"]

    style A fill:#7F52FF,color:#fff
    style B fill:#0D1117,color:#3DDC84,stroke:#3DDC84
    style C fill:#3DDC84,color:#0D1117
    style D fill:#F4B400,color:#0D1117

One process, local stdio transport, no daemon, no persisted state between calls. Full lifecycle, handshake, and a real end-to-end request walkthrough: docs/architecture.md.

Security & local-first

The server runs with the same filesystem and process permissions as the user who launches it, and makes no outbound network call in any of its 25 tools — everything stays on your machine, over local stdio. gradle.run executes Gradle tasks the caller names (validated only for syntax, not restricted to a curated safe list), which is the one tool worth restricting if you connect this server to an agent you don't fully trust. Full breakdown, with no unverifiable "100% secure" claims: docs/security.md.

Documentation

Getting started · Architecture · Tools · Compatibility · Configuration · Security · Limitations · Development · Contributing · Troubleshooting

Contributing

See docs/contributing.md for the real branching model, PR expectations, and how to add a new tool (docs/development.md).

License

package.json declares MIT, but no LICENSE file exists in this repository yet — treat licensing as unresolved until that's added (tracked in docs/contributing.md).