# Obsidian Vault MCP Server

Connects AI assistants to an Obsidian vault using the Local REST API. Useful for finding, reading, and extracting notes directly during development.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 13
- Author: OleksandrKucherenko
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/OleksandrKucherenko/mcp-obsidian-via-rest
- Updated: 2026-04-05
- HTML: https://affpapa.org/en/nevibecode/mcp/obsidian-vault-mcp-server

## What it does

This MCP server links the coding assistant to an Obsidian vault. Communication relies on the Obsidian Local REST API. Once configured, the assistant can query notes, read markdown files, and inspect stored knowledge.

Configuration requires setting `API_KEY` and `API_URLS`. It also accepts `API_HOST`, `API_PORT`, and `MCP_TRANSPORTS` when standard network settings need adjustment. The server runs via `npx` using `@oleksandrkucherenko/mcp-obsidian`.

Without an active Local REST API plugin and valid authentication key, the server fails immediately. Ensure the REST endpoint is running in Obsidian before adding the tool.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `API_KEY`, `API_URLS`, `API_HOST`, `API_PORT`, `MCP_TRANSPORTS`, `MCP_HTTP_PORT`, `MCP_HTTP_HOST`, `MCP_HTTP_TOKEN` — keys and tokens: ask the human for the values, never commit them or put them in shared files.
- Works with: Obsidian

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env API_KEY=<API_KEY> --env API_URLS=<API_URLS> --env API_HOST=<API_HOST> --env API_PORT=<API_PORT> --env MCP_TRANSPORTS=<MCP_TRANSPORTS> --transport stdio obsidian-vault-mcp-server -- npx -y @oleksandrkucherenko/mcp-obsidian
```
Replace <…> with your own values. 3 more environment variables are in the server README

### Codex

**Platform CLI**
```bash
codex mcp add obsidian-vault-mcp-server --env API_KEY=<API_KEY> --env API_URLS=<API_URLS> --env API_HOST=<API_HOST> --env API_PORT=<API_PORT> --env MCP_TRANSPORTS=<MCP_TRANSPORTS> -- npx -y @oleksandrkucherenko/mcp-obsidian
```
Replace <…> with your own values. 3 more environment variables are in the server README

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "obsidian-vault-mcp-server": {
            "command": "npx",
            "args": [
                "-y",
                "@oleksandrkucherenko/mcp-obsidian"
            ],
            "env": {
                "API_KEY": "<API_KEY>",
                "API_URLS": "<API_URLS>",
                "API_HOST": "<API_HOST>",
                "API_PORT": "<API_PORT>",
                "MCP_TRANSPORTS": "<MCP_TRANSPORTS>"
            }
        }
    }
}
```
Replace <…> with your own values. 3 more environment variables are in the server README

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "obsidian-vault-mcp-server": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@oleksandrkucherenko/mcp-obsidian"
            ],
            "env": {
                "API_KEY": "<API_KEY>",
                "API_URLS": "<API_URLS>",
                "API_HOST": "<API_HOST>",
                "API_PORT": "<API_PORT>",
                "MCP_TRANSPORTS": "<MCP_TRANSPORTS>"
            }
        }
    }
}
```
Replace <…> with your own values. 3 more environment variables are in the server README

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e API_KEY=<API_KEY> -e API_URLS=<API_URLS> -e API_HOST=<API_HOST> -e API_PORT=<API_PORT> -e MCP_TRANSPORTS=<MCP_TRANSPORTS> obsidian-vault-mcp-server npx -y @oleksandrkucherenko/mcp-obsidian
```
Replace <…> with your own values. 3 more environment variables are in the server README

## When to use it
- search notes inside a local Obsidian vault
- inspect note contents from the agent prompt
- feed personal project documentation into context

## Example prompts
- Search my Obsidian vault for notes mentioning deployment steps.
- Read the contents of architecture.md from my Obsidian vault.
- Find notes tagged with meeting from last week and summarize them.

## Similar
- [obsidian-vault-management](https://affpapa.org/en/nevibecode/skills/obsidian-vault-management.md) — skill · 307 installs
- [obsidian-cli](https://affpapa.org/en/nevibecode/skills/obsidian-cli.md) — skill · 81000 installs
- [obsidian](https://affpapa.org/en/nevibecode/skills/obsidian.md) — skill · 6400 installs
- [obsidian-organizer](https://affpapa.org/en/nevibecode/skills/obsidian-organizer.md) — skill · 1800 installs
- [obsidian-markdown](https://affpapa.org/en/nevibecode/skills/agricidaniel-obsidian-markdown.md) — skill · 545 installs
- [obsidian-bases](https://affpapa.org/en/nevibecode/skills/agricidaniel-obsidian-bases.md) — skill · 498 installs

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
