Headless HTTP MCP server for Obsidian-flavored Markdown vaults
Project description
headless-obsidian-mcp
Headless HTTP MCP server for an Obsidian-flavored Markdown vault
Install
uv sync
Run from PyPI without installing into the current project:
uvx headless-obsidian-mcp run --host 127.0.0.1 --port 8000
Configure
export HEADLESS_OBSIDIAN_MCP_VAULT_ROOT="$HOME/path/to/vault"
export HEADLESS_OBSIDIAN_MCP_AUTH_TOKEN="change-me"
Optional OpenAI-compatible embeddings:
export HEADLESS_OBSIDIAN_MCP_OPENAI_API_KEY="sk-..."
export HEADLESS_OBSIDIAN_MCP_OPENAI_BASE_URL="https://openrouter.ai/api/v1"
export HEADLESS_OBSIDIAN_MCP_EMBEDDING_MODEL="text-embedding-3-small"
Run
uv run headless-obsidian-mcp run --host 127.0.0.1 --port 8000
MCP endpoint:
http://127.0.0.1:8000/mcp
Daemon commands:
uv run headless-obsidian-mcp start
uv run headless-obsidian-mcp status
uv run headless-obsidian-mcp logs -f
uv run headless-obsidian-mcp stop
Tools
vault_listvault_readvault_searchvault_create_notevault_update_notevault_move_pathvault_delete_pathvault_backlinksvault_reindex
Tool results return Markdown text for agents and structuredContent for programmatic clients.
The Markdown content is the compatibility path and should contain everything an agent needs. structuredContent is useful for clients that expose it, but some MCP clients still treat it as secondary metadata.
Development
uv sync --extra dev
uv run ruff format --check .
uv run ruff check .
uv run python -m unittest -v
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file headless_obsidian_mcp-0.1.0.tar.gz.
File metadata
- Download URL: headless_obsidian_mcp-0.1.0.tar.gz
- Upload date:
- Size: 78.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2f0f95b9e67b4772dd4bba198cf7e065fb1eb168e4364aac39f4cb66819d02be
|
|
| MD5 |
8502899a123eae2ccb2114bd0b9b2e68
|
|
| BLAKE2b-256 |
d46e7b847c17953ada53be329903d71695ec1bd0c452c1a0e4c4b7257fe15562
|
Provenance
The following attestation bundles were made for headless_obsidian_mcp-0.1.0.tar.gz:
Publisher:
publish.yml on esceptico/headless-obsidian-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
headless_obsidian_mcp-0.1.0.tar.gz -
Subject digest:
2f0f95b9e67b4772dd4bba198cf7e065fb1eb168e4364aac39f4cb66819d02be - Sigstore transparency entry: 1429552699
- Sigstore integration time:
-
Permalink:
esceptico/headless-obsidian-mcp@fd0a9691338bc0029c959b0940de442f3fe256e0 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/esceptico
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fd0a9691338bc0029c959b0940de442f3fe256e0 -
Trigger Event:
push
-
Statement type:
File details
Details for the file headless_obsidian_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: headless_obsidian_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 45.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ec3684e9f106b6df1e670862c4f59728d99247a094ec47960e4b48fe8d46c32d
|
|
| MD5 |
e7bc502241ed7493b7370dd7c9c00204
|
|
| BLAKE2b-256 |
ffd90cadd175aacc663fc0a8611970e8fa981335e3e251906c09fab66b9aedb1
|
Provenance
The following attestation bundles were made for headless_obsidian_mcp-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on esceptico/headless-obsidian-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
headless_obsidian_mcp-0.1.0-py3-none-any.whl -
Subject digest:
ec3684e9f106b6df1e670862c4f59728d99247a094ec47960e4b48fe8d46c32d - Sigstore transparency entry: 1429552703
- Sigstore integration time:
-
Permalink:
esceptico/headless-obsidian-mcp@fd0a9691338bc0029c959b0940de442f3fe256e0 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/esceptico
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@fd0a9691338bc0029c959b0940de442f3fe256e0 -
Trigger Event:
push
-
Statement type: