symapse

symapse

Provides code analysis tools for AI coding agents to understand project architecture, search for symbols, and plan changes with token reduction.

Category
Visit Server

README

Symapse

Architectural awareness engine for AI coding agents

<p align="center"> <img alt="npm version" src="https://img.shields.io/npm/v/symapse?color=blue"> <img alt="license" src="https://img.shields.io/npm/l/symapse"> <img alt="node" src="https://img.shields.io/node/v/symapse"> </p>

Benchmarks

Same prompt, same codebase. One agent uses Symapse, one reads files directly.

Repo Language Symapse Control Reduction
Django Python 57k 310k −81%
React JavaScript 40k 80k −50%
Prettier JavaScript 49k 90k −46%
Fzf Go 38k 68k −44%
FastAPI Python 51k 70k −27%
SQLite C 44k 44k 0%

Average: 50% token reduction. Plan quality: consistently 4/5 vs 5/5.

<p align="center"><img src="docs/benchmarks.png" alt="Symapse Benchmarks" width="720"></p>


Install

npm install -g symapse

Requires Node.js 22+. No dependencies. Zero config.


Quick Start

# Index your project
symapse index /path/to/repo

# Start the MCP server (for OpenCode/Cursor/Claude integration)
symapse mcp /path/to/repo

# Query from the terminal
symapse architecture
symapse impact "login"
symapse deadcode 10
symapse where "add notification system"
symapse context "direct login after payment"

OpenCode Integration

Install Symapse first:

npm install -g symapse

Add to your project's opencode.json:

{
  "mcp": {
    "symapse": {
      "type": "local",
      "command": ["npx", "symapse", "mcp", "."],
      "enabled": true
    }
  }
}

Create an AGENTS.md in your project root with:

## RULE 1: First action — symapse_clarify

Before ANYTHING else, call `symapse_clarify "<request>"`. If it returns questions, ASK them. Do not guess.

## RULE 2: Always check Symapse before reading files

| Instead of... | Use... |
|---|---|
| Reading files to understand repo | `symapse_architecture` |
| Grepping for symbols | `symapse_search` |
| Tracing callers | `symapse_impact` |
| Guessing where code goes | `symapse_where` |
| Checking for duplicates | `symapse_overlap` |
| Finding dead code | `symapse_deadcode` |
| Finding must-read files | `symapse_context` |

If Symapse doesn't answer your question, read files. But check Symapse first.

Tools

Tool Question it answers
symapse_architecture Explain this repo
symapse_clarify What am I assuming?
symapse_search Where does this thing live?
symapse_impact What breaks if I change this?
symapse_deadcode What can I safely delete?
symapse_overlap Did we build this already?
symapse_where Where should this new thing go?
symapse_context Which files must I read?
symapse_conventions What patterns should I follow?
symapse_changes What changed?

Supported Languages

JavaScript, TypeScript, Python, Go, Rust, C#, PHP, Ruby, Lua, and C.


How It Works

  1. Index — walks the repo, extracts functions/classes/methods with regex parsers, builds call and import edges
  2. Store — normalized SQLite schema, incremental by mtime + engine version
  3. Expose — CLI, REST API, and MCP over stdio. All share the same engine.

Self-Improving

Symapse learns from agent behavior across sessions without any user involvement:

  • Session coherence — biases context toward the subsystem the agent is already exploring
  • Usage signals — logs which symbols agents actually drill into
  • Workflow memory — auto-detects repeated symbol sequences across sessions
  • Intent classification — routes config/docs questions away from source code exploration

Architecture

packages/
  engine/   — regex-based parser, call graph, all analysis tools
  db/       — SQLite persistence with incremental indexing
  mcp/      — MCP protocol server (JSON-RPC over stdio)
apps/
  cli/      — command-line entry point
  api/      — HTTP API server + web dashboard
  web/      — terminal-style web UI

License

AGPL-3.0

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured