44 lines
1.3 KiB
Bash
Executable File
44 lines
1.3 KiB
Bash
Executable File
#!/bin/bash
|
|
# Start Obsidian MCP Server
|
|
# Requires: Obsidian running with Local REST API plugin enabled
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
cd "$SCRIPT_DIR"
|
|
|
|
# Load environment
|
|
if [ -f .env ]; then
|
|
export $(grep -v '^#' .env | xargs)
|
|
fi
|
|
|
|
# Check if API key is configured
|
|
if [ "$OBSIDIAN_API_KEY" = "YOUR_API_KEY_HERE" ] || [ -z "$OBSIDIAN_API_KEY" ]; then
|
|
echo "❌ OBSIDIAN_API_KEY not configured!"
|
|
echo ""
|
|
echo "To set up:"
|
|
echo "1. Open Obsidian"
|
|
echo "2. Install 'Local REST API' plugin from Community Plugins"
|
|
echo "3. Enable the plugin and copy the API key"
|
|
echo "4. Update .env with your API key"
|
|
exit 1
|
|
fi
|
|
|
|
# Test connection to Obsidian Local REST API
|
|
echo "Testing connection to Obsidian Local REST API..."
|
|
if curl -s -o /dev/null -w "%{http_code}" -H "Authorization: Bearer $OBSIDIAN_API_KEY" "$OBSIDIAN_BASE_URL/" | grep -q "200\|401"; then
|
|
echo "✅ Obsidian Local REST API is reachable"
|
|
else
|
|
echo "❌ Cannot reach Obsidian Local REST API at $OBSIDIAN_BASE_URL"
|
|
echo ""
|
|
echo "Make sure:"
|
|
echo "1. Obsidian is running"
|
|
echo "2. Local REST API plugin is enabled"
|
|
echo "3. The port matches OBSIDIAN_BASE_URL in .env"
|
|
exit 1
|
|
fi
|
|
|
|
# Start MCP server
|
|
echo "Starting Obsidian MCP Server..."
|
|
exec npx obsidian-mcp-server
|