Skip to main content

Expose your Obsidian vault via REST API and streamable HTTP MCP server for AI tool access

Project description

obsidian-ai-miniserver

Makes your Obsidian vault accessible via REST API (OpenAPI) and a streamable HTTP MCP server. Enables AI to find, read, and edit text notes. Supports multiple users with token-based auth and path-level access control.

What's good about it

  • Works headless — runs without Obsidian present, unlike plugin-based solutions
  • Token-efficient — optimized tool signatures and docs to save tokens
  • Flexible tools — regex search across notes, batch requests, and more
  • AI-managed access — one AI can admin other AI's access with path-level permissions
  • Identical MCP and REST API — easy to build integrations against as well as connect AI

Quick start

pip install obsidian-ai-miniserver
obs_ai_ms start /path/to/vault --admin-token your_token

This starts both servers on their default ports. Connect your AI to the MCP endpoint or the REST API.

Options

Option Default Description
vault_path (required) Path to the Obsidian vault
--admin-token (required) Auth token for the admin user
--openapi-port 8747 Port for the REST API server (-1 to disable)
--mcp-port 8716 Port for the MCP server (-1 to disable)
--host 127.0.0.1 Host to bind to. Use 0.0.0.0 to allow remote access

Persistence

Config is stored at .obsidian/obsidian_ai_miniserver.json inside the vault — user list with tokens and path access rules.

API reference

See openapi.json for full request/response definitions.

All requests go to POST /api/obsidian with a kind field that discriminates the request type. Available kinds:

  • get_vault_info — vault name, daily notes folder, your user info
  • list_files — list files and folders at a path
  • read_text — read a note's text
  • write_text — overwrite a note
  • append_text — append to a note
  • replace_text — find and replace text in a note
  • move_file — move, copy, or delete a file
  • search_files — regex search across notes and text files with context snippets
  • batch — send multiple requests in one call
  • list_users / upsert_user — admin user management

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

obsidian_ai_miniserver-0.2.0.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

obsidian_ai_miniserver-0.2.0-py3-none-any.whl (11.7 kB view details)

Uploaded Python 3

File details

Details for the file obsidian_ai_miniserver-0.2.0.tar.gz.

File metadata

  • Download URL: obsidian_ai_miniserver-0.2.0.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for obsidian_ai_miniserver-0.2.0.tar.gz
Algorithm Hash digest
SHA256 5ba2d7a9b40f27ead281db26169ec6e0e32e6b241456a89a393b9b75ca6daf9b
MD5 a7d83281c670242bb860853d52032ee2
BLAKE2b-256 faa5d9656c418a35bf663f058282fa9062d62e0c42ca2f076621d9cc204203af

See more details on using hashes here.

File details

Details for the file obsidian_ai_miniserver-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for obsidian_ai_miniserver-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 780ac3992b20a8affa89acac2be524fd5e3be385127e0cc3537a182919ea644c
MD5 cd0325704da987873e973a5cfd0e5c7b
BLAKE2b-256 a5c12b868c8d764220bf5a6dc180fc71f9d03f0fa4c035c62e0ef46539812976

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page