Skip to main content
Glama

Constellation MCP Server

NPM Version TypeScript v5.9+ Node.js v24+ MCP Badge License: AGPL-3.0 Snyk Monitored

Give your AI coding assistant instant, intelligent access to your entire codebase's structure, dependencies, and relationships without transmitting any source code. Constellation provides code intelligence as a service to AI coding assistant tools.

Quick Start

Add the Constellation MCP server to your AI assistant project-level config (or system-level if your tooling doesn't support project-level configuration):

{
  "mcpServers": {
    "constellation": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@constellationdev/mcp@latest"],
      "env": {
        "CONSTELLATION_ACCESS_KEY": "${CONSTELLATION_ACCESS_KEY}"
      }
    }
  }
}
NOTE


The above example is a generic format for the .mcp.json file used by some tools such as VSCode and Claude Code.

Rather than directly configuring the MCP server, it is recommended to install and utilize official Constellation Plugins for optimal performance and behavior!

For information on configuring other AI assistants see the MCP Server > Installation doc.

For further instructions regarding authentication, project setup, and configuration refer to the official docs.

Related MCP server: NOMIK

How It Works

%%{init: {'theme': 'dark', 'themeVariables': { 'primaryColor': '#4A90E2', 'primaryTextColor': '#EEEEEE', 'primaryBorderColor': '#2B2C34', 'lineColor': '#4A90E2', 'secondaryColor': '#1F1F28', 'tertiaryColor': '#0B0C10', 'edgeLabelBackground': '#1F1F28' }}}%%
flowchart LR
    subgraph local["💻 Your Environment"]
        direction TB
        code["📂 Source Code"]
        cli["⚙️ Constellation CLI"]
        ai["🤖 AI Coding Assistant"]
        mcp["🧩 Constellation MCP"]
        code --> cli
    end

    subgraph cloud["✨ Constellation Service"]
        direction TB
        api["🔌  API"]
        graphdb[("🧠 Knowledge Graph")]
        api <--> graphdb
    end

    cli a1@-->|"Metadata Upload"| api
    ai <-->|"Tool Calls"| mcp
    mcp a2@<-->|"Queries"| api

    a1@{ animation: fast }
    a2@{ animation: fast }

    style local fill:#1F1F28
    style cloud fill:#1F1F28,stroke:#4A90E2
    style cli stroke:#4A90E2
    style mcp stroke:#4A90E2
    style api stroke:#4A90E2
    style graphdb stroke:#4A90E2
  1. Parse and Analyze: The CLI tool analyzes source code in your environment, extracting structural metadata (functions, classes, variables, imports, calls, references, etc.)

  2. Upload: Only the metadata is securely sent to Constellation, never raw source code

  3. Query: AI assistants use the Constellation MCP tool to send complex queries, and get rapid answers derived from the knowledge graph

Documentation

Find the full and comprehensive documentation at docs.constellationdev.io/mcp/

Privacy & Security

  • No source code transmission - Only metadata and relationships

  • Access control - API keys required for all requests

  • Branch isolation - Each git branch maintains discrete code intelligence

For comprehensive information regarding privacy and security, see the official Privacy & Security documentation.

Support

License

AGPL-3.0 - See LICENSE for details.

Copyright © 2026 ShiftinBits Inc.

Available Tools

1 tool
code_intelCode IntelligenceA
Read-onlyIdempotent

DECISION RULE: Structure questions → this tool. Text search → Grep.

Before using Grep, ask: Is this a STRUCTURE question (definitions, callers, impact) or a TEXT question (strings, config)?

QUICK START: return await api.searchSymbols({query: "AuthService"}) — simple queries are one-liners. Run api.listMethods() for full API reference with signatures and descriptions. Run api.help("methodName") for inline TypeScript type definitions — no resource reads needed. Compose: const [impact, deps] = await Promise.all([api.impactAnalysis({symbolId}), api.getDependents({filePath})]);

WHY THIS TOOL: Graph-backed intelligence finds indirect relationships, transitive dependencies, and breaking change risks that text search cannot detect.

"What uses X?" disambiguation: getDependents (file imports) vs getCallGraph (call chain) vs traceSymbolUsage (all usages).

USE IMMEDIATELY WHEN: • BEFORE using Edit on a function/class → run impactAnalysis({symbolId}) first • BEFORE exploring an unfamiliar codebase → run getArchitectureOverview() • BEFORE refactoring → trace getDependencies + getDependents for blast radius • Running 3+ Grep calls for structure? STOP → use code_intel instead

TOP 5 QUESTIONS (query is case-insensitive substring match): • "Where is X defined?" / "Find function Y" → searchSymbols({query}) • "What calls X?" / "What imports this?" → getDependents({filePath}) or getCallGraph({symbolId}) • "What does X depend on?" → getDependencies({filePath}) • "Safe to modify X?" / "Blast radius?" → impactAnalysis({symbolId}) • "Find dead code" / "Unused exports?" → findOrphanedCode() • "Complex functions?" / "Refactoring targets?" → searchSymbols results include complexity.cyclomaticComplexity + complexityRisk per function

NOT FOR: literal string search, log messages, config values, or reading source code. Use Grep/Glob/Read for those. Supports TypeScript, JavaScript, Python, and more — run api.getCapabilities() to check your project. File-path-scoped methods (getDependencies, getDependents, getCallGraph, traceSymbolUsage, impactAnalysis) reject calls whose filePath extension is not in the project's configured languages with UNSUPPORTED_LANGUAGE — check api.getCapabilities() first.

WRONG TOOL SIGNAL: If you've run 3+ Grep calls for structure (callers, dependencies, impact), STOP and use code_intel instead. Typical workflow: code_intel to find (results include source snippets) → Edit to modify

Sandbox limits: 50 api.* calls per execution, 128 MB memory, 100 KB max code size, limit max 100 on any method with a limit param. Pure JS only — no require/import/fs/net/process (see constellation://docs/guide for full restrictions).

IMPORTANT: The cwd parameter is required — always set it to the target project directory path.

ParametersJSON Schema
NameRequiredDescriptionDefault
cwdYesAbsolute path to the project directory being queried. Used to locate the correct constellation.json by finding the git repository root. Set this to the root of the repository or workspace folder you are working in.
codeYesJavaScript code to execute. Can use top-level await. Available API methods: searchSymbols, getSymbolDetails, getDependencies, getDependents, findCircularDependencies, traceSymbolUsage, getCallGraph, impactAnalysis, findOrphanedCode, getArchitectureOverview
timeoutNoOptional execution-time override in milliseconds. When omitted, the sandbox derives the timeout from the static complexity of your code (heavier api.* methods raise the budget) and clamps the result to [1000, 60000]. The breakdown is returned in the response so you can see what was applied. Explicit values still win and are clamped to the same range.

Output Schema

ParametersJSON Schema
NameRequiredDescription
logsNo
timeNo
errorNo
resultNo
successYes
asOfCommitNo
lastIndexedAtNo
resultContextNo
timeoutBreakdownNo

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: sandbox limits (50 api calls, 128 MB memory, 100 KB code), timeout derivation, UNSUPPORTED_LANGUAGE rejection, and requirement for cwd to locate constellation.json. These reveal important constraints and behaviors beyond annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is thorough but verbose. It uses headings, bullet points, and code examples effectively, and front-loads with the decision rule. However, some sections (e.g., sandbox limits, top 5 questions) are longer than necessary. A slightly more concise version would maintain completeness while improving scanability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (multiple API methods, sandbox restrictions, dynamic timeouts, language support), the description covers all essential aspects: when to use, how to compose calls, error conditions (UNSUPPORTED_LANGUAGE), and limitations. Output schema exists, so return value documentation is not needed. Complete for its context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds meaning: for 'code', it lists available API methods; for 'timeout', explains dynamic derivation and clamping; for 'cwd', explains its role in locating configuration. This enriches the agent's understanding beyond the schema, though the schema already covers parameter types and descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool is for structure questions (definitions, callers, impact) versus text search (Grep). It uses specific verbs like 'find', 'trace', 'search' and explicitly distinguishes from sibling tools (Grep, Glob, Read) even though no siblings are listed. The 'WRONG TOOL SIGNAL' and 'NOT FOR' sections reinforce purpose clarity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Excellent guidelines: 'DECISION RULE' distinguishes structure vs text; 'USE IMMEDIATELY WHEN' lists specific scenarios before editing, exploring, refactoring; 'TOP 5 QUESTIONS' maps common intents to methods; 'NOT FOR' lists exclusions. Also provides workflow examples and wrong-tool signals.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

A4.5/5.0
Disambiguation5/5

With only one tool, there is no ambiguity; the tool's purpose is clearly defined and distinct from any other.

Naming Consistency5/5

A single tool name ensures perfect naming consistency; there are no naming conflicts or inconsistencies.

Tool Count2/5

The server attempts to cover a broad range of code intelligence operations (symbol search, dependency analysis, impact analysis, etc.) but condenses them into a single tool, which is insufficient for discoverability and typical MCP expectations.

Completeness4/5

The tool's API covers many code intelligence operations (symbols, dependencies, impact, dead code), with minor gaps like source reading explicitly delegated elsewhere, making it fairly complete for its stated purpose.

Maintenance

ActivityMaintained
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    C
    quality
    D
    maintenance
    Enterprise-grade code intelligence platform providing AI-powered code analysis, semantic search, security scanning, and automated refactoring capabilities. Integrates with local AI models for zero-cost operations while delivering comprehensive development workflow automation.
    2
    8
  • F
    license
    Not graded
    quality
    D
    maintenance
    AI-native code intelligence graph that builds a persistent knowledge graph of your codebase in Neo4j and exposes it to AI assistants via MCP, enabling contextual code analysis, impact analysis, and dependency tracking.
    21
  • A
    license
    Not graded
    quality
    A
    maintenance
    Provides code intelligence for AI coding agents by indexing repositories into a hybrid knowledge graph, enabling agents to query dependencies, impact, and context through 28 MCP tools.
    3
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides semantic code search and code insights via a knowledge graph, enabling AI to understand, navigate, and modify complex projects with deep dependency and architecture analysis.
    MIT

Latest Blog Posts

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/ShiftinBits/constellation-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server