Naveen Ayalla

Naveen Ayalla

A TypeScript/Node.js MCP toolkit with servers for code search, docs, databases, OpenAPI, Git, and shell-based developer workflows.

Category
Visit Server

README

<div align="center">

πŸ”Œ MCP Server Toolkit

Build plug-and-play MCP servers for any dev workflow β€” code search, docs, databases, and more.

npm version MCP License: MIT TypeScript Works with Claude Code Works with Cursor Works with Windsurf PRs Welcome Stars

Give any AI coding agent a direct line into your codebase, docs, or database β€” in under 60 seconds.

Quick Start Β· Servers Β· Build Your Own Β· Discord Β· Changelog


Demo: Claude Code querying a codebase via MCP Server Toolkit

</div>


Why this exists

When you ask Claude Code "where do we handle Stripe webhooks?" it has two bad options:

  • Option A β€” Read every file in the repo. Slow, expensive, blows the context window on any real codebase.
  • Option B β€” Guess based on the first few files it sees. Wrong half the time.

MCP Server Toolkit gives agents a third option: ask the right tool directly. Semantic code search, live database queries, doc lookups, API introspection β€” all surfaced through the Model Context Protocol standard, so any MCP-compatible client can use them without any changes to your existing code.


✨ Features

  • πŸ” Semantic code search β€” Find the right function, file, or pattern across your entire repo in milliseconds. Powered by vector embeddings, no Elasticsearch required.
  • πŸ“š Docs server β€” Give your agent instant access to any documentation site, local Markdown files, or Notion workspace.
  • πŸ—„οΈ Database server β€” Natural language β†’ SQL for PostgreSQL, MySQL, and SQLite. Read-only by default, writable with an explicit flag.
  • 🌐 API introspection server β€” Load any OpenAPI/Swagger spec and let your agent browse and call endpoints with type safety.
  • ⚑ One-command setup β€” Every server ships as a standalone CLI. npx and pip install paths included.
  • πŸ”’ Zero-config secrets β€” Reads from your existing .env file or environment variables. Nothing new to learn.
  • 🧩 Works everywhere β€” Claude Code, Cursor, Windsurf, Cline, VS Code Copilot, Codex CLI, Gemini CLI, and every other MCP-compatible client.
  • πŸ› οΈ Extensible β€” The createServer() helper reduces a new tool to ~15 lines of TypeScript. Scaffold a custom server in 30 seconds.

πŸš€ Quick Start

Requirements: Node.js 18+ or Python 3.10+

Option A β€” npx (no install)

npx mcp-server-toolkit@latest init

This runs the interactive setup wizard. Pick your servers, paste your credentials, and get a ready-to-paste config block for Claude Code / Cursor.


Option B β€” npm global install

npm install -g mcp-server-toolkit
mcp init

Option C β€” pip (Python environments)

pip install mcp-server-toolkit
mcp init

Add to Claude Code

After mcp init, copy the generated block into your .claude/mcp.json:

{
  "servers": {
    "code-search": {
      "command": "mcp-code-search",
      "args": ["--root", "."],
      "env": { "OPENAI_API_KEY": "${OPENAI_API_KEY}" }
    },
    "database": {
      "command": "mcp-database",
      "args": ["--read-only"],
      "env": { "DATABASE_URL": "${DATABASE_URL}" }
    },
    "docs": {
      "command": "mcp-docs",
      "args": ["--source", "./docs"]
    }
  }
}

That's it. Restart Claude Code and your agent now has full access to all three.


πŸ“¦ Included Servers

Server Install What it does
mcp-code-search npx mcp-code-search Semantic + keyword search across your codebase
mcp-database npx mcp-database Natural language queries for Postgres, MySQL, SQLite
mcp-docs npx mcp-docs Index and query local Markdown, Notion, or any URL
mcp-openapi npx mcp-openapi Browse and call endpoints from any OpenAPI spec
mcp-git npx mcp-git Query commits, diffs, blame, and branches
mcp-shell npx mcp-shell Sandboxed shell execution with allowlist controls

All servers are independently installable β€” use one or all of them.


πŸ› οΈ Usage Example

Once installed, your AI agent can use natural language to interact with your entire dev environment:

You:  "Find all places where we validate user input before inserting into the DB"

Agent uses mcp-code-search β†’
  Found 7 matches in: auth/validators.ts, api/users.ts, api/orders.ts...

You:  "How many users signed up in the last 7 days?"

Agent uses mcp-database β†’
  SELECT count(*) FROM users WHERE created_at > now() - interval '7 days';
  β†’ 1,432 new users

You:  "What does our docs say about rate limiting?"

Agent uses mcp-docs β†’
  Found in docs/api/rate-limits.md: "All endpoints are limited to 100 req/min per API key..."

No copy-pasting. No context switching. The agent just knows.


πŸ”§ Build Your Own Server

Scaffold a new server in 30 seconds:

mcp new my-server --template typescript

This generates:

my-server/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ index.ts        # Entry point β€” register your tools here
β”‚   └── tools/
β”‚       └── example.ts  # Your first tool
β”œβ”€β”€ package.json
└── README.md

A minimal tool looks like this:

import { createServer, tool, z } from 'mcp-server-toolkit';

const server = createServer({ name: 'my-server', version: '1.0.0' });

server.addTool(
  tool({
    name: 'get_weather',
    description: 'Get current weather for a city',
    input: z.object({ city: z.string() }),
    run: async ({ city }) => {
      const data = await fetchWeather(city);
      return { content: `${city}: ${data.temp}Β°C, ${data.condition}` };
    },
  })
);

server.start();

That's the whole thing. Ship it.


πŸ“ Project Structure

mcp-server-toolkit/
β”œβ”€β”€ packages/
β”‚   β”œβ”€β”€ core/           # createServer(), tool(), z helpers
β”‚   β”œβ”€β”€ code-search/    # Semantic codebase search server
β”‚   β”œβ”€β”€ database/       # Natural language DB query server
β”‚   β”œβ”€β”€ docs/           # Documentation indexing server
β”‚   β”œβ”€β”€ openapi/        # OpenAPI spec introspection server
β”‚   β”œβ”€β”€ git/            # Git history and diff server
β”‚   └── shell/          # Sandboxed shell server
β”œβ”€β”€ examples/
β”‚   β”œβ”€β”€ claude-code/    # Drop-in config for Claude Code
β”‚   β”œβ”€β”€ cursor/         # Drop-in config for Cursor
β”‚   └── custom-server/  # Starter template for custom tools
β”œβ”€β”€ docs/               # Full documentation
└── CONTRIBUTING.md

πŸ—ΊοΈ Roadmap

  • [x] Code search (semantic + keyword)
  • [x] PostgreSQL / MySQL / SQLite server
  • [x] Docs server (Markdown + URL crawl)
  • [x] OpenAPI introspection server
  • [ ] Notion server
  • [ ] Linear / Jira server
  • [ ] Supabase + PlanetScale managed DB support
  • [ ] Web UI for browsing registered tools
  • [ ] Auto-generated tool descriptions from schema

Want something on this list prioritised? Open an issue and add a πŸ‘.


🀝 Contributing

Contributions are what make this project worth starring. Here's how to get involved:

First time?

  1. Look for issues labelled good first issue β€” these are scoped small on purpose.
  2. Comment on the issue to claim it before starting.
  3. Fork the repo, make your changes, open a PR.

Adding a new server

The fastest path to a merged PR:

# Clone and install deps
git clone https://github.com/naveenayalla1-CS50/mcp-server-toolkit
cd mcp-server-toolkit
npm install

# Scaffold your server
npm run new-server -- --name my-awesome-server

# Run tests
npm test

# Submit your PR

Each new server needs:

  • A README.md explaining what it does and the one-line install command
  • At least one test in __tests__/
  • An example config block for Claude Code / Cursor

Guidelines

  • Keep each tool focused on doing one thing well β€” resist scope creep.
  • Never store credentials in code β€” always read from env vars.
  • Add your server to the table in the main README and to the packages/ list.

Code of Conduct

Be excellent to each other. See CODE_OF_CONDUCT.md.


πŸ” Security

  • All servers are read-only by default. Write access requires an explicit --writable flag.
  • Credentials are read from environment variables only β€” never hardcoded or logged.
  • The shell server uses an allowlist (mcp-shell.config.json) β€” no arbitrary command execution.
  • Found a vulnerability? Please email security@naveenayalla1-CS50.dev instead of opening a public issue.

πŸ“„ License

MIT Β© 2026 naveenayalla1-CS50

You're free to use this in personal projects, commercial products, and anything in between. Attribution appreciated but not required.


<div align="center">

Share on Twitter Β· Open an issue

Built with ❀️ for the agent era.

</div>

MCP server usage

This repository contains a TypeScript/Node.js toolkit of MCP servers.

Install

npm install
npm run build
npm run build --workspace=@mcp-toolkit/core
npm run build --workspace=@mcp-toolkit/code-search
node packages/code-search/dist/index.js



## MCP server usage

This repository contains a TypeScript/Node.js toolkit of MCP servers.

### Install

```bash
npm install
npm run build

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