SIGN IN SIGN UP

Improve MCP Server Quality Score to 100 (#7)

* feat: Improve MCP server quality with comprehensive enhancements

This commit implements multiple improvements to increase the server quality score:

**Configuration UX (+15pts)**
- Made all configuration optional with sensible defaults
- Server now starts without required environment variables
- Tools provide clear error messages when config is incomplete

**Tool Annotations (+9pts)**
- Added annotations to all 5 tools (getFileContents, searchFiles, searchIssues, getCommitHistory, diagnoseSearch)
- All tools marked with readOnlyHint: true, destructiveHint: false, idempotentHint: true, openWorldHint: true
- Helps clients understand tool behavior and safety characteristics

**Server Icon (+7pts)**
- Added icon.svg with Obsidian-GitHub themed design
- 512x512 vector graphic showing document and git branching

**Prompts (+5pts)**
- Added 3 useful prompts for common workflows:
  - explore-vault: Comprehensive vault exploration
  - find-notes-about: Topic-based search with parameter
  - analyze-recent-changes: Knowledge base evolution analysis

**Resources (+5pts)**
- Added 2 resources to expose vault data:
  - repo-info: Repository metadata in JSON format
  - recent-activity: Last 7 days of commits in Markdown

**Code Quality**
- Fixed linting issues (template literals, Number.parseInt)
- Maintained type safety throughout
- Added config validation with helpful error messages

Total potential improvement: +41 points (from quality items implemented)

* chore: Add missing dependencies for HTTP build

- Add chalk, cors, express for HTTP transport support
- Update @smithery/sdk from 1.5.6 to 1.7.4 for compatibility
- Build now passes successfully for both stdio and HTTP transports

* chore: Add license metadata to package.json (+6pts)

Makes MIT license discoverable via package metadata for quality scoring.
The LICENSE file already exists in the repository.

* fix: Ensure shebang for reliable binary execution

Improvements to build:stdio script:
- Check for shebang presence in built file
- Prepend '#!/usr/bin/env node' if missing
- Add shebang to src/index.ts source file

This ensures the built binary works reliably in all contexts:
- Direct execution: ./build/index.js
- NPX execution: npx obsidian-github-mcp
- npm bin execution

Matches Todoist MCP implementation for cross-platform compatibility.

* Release v0.6.0: MCP server quality improvements

This release focuses on improving the overall quality and reliability of the MCP server with several enhancements:

- Add professional project icon (icon.svg) combining Obsidian and GitHub branding
- Add MIT license metadata to package.json for proper npm publishing
- Fix binary shebang handling to ensure reliable execution across environments
- Upgrade @smithery/sdk to v1.7.4 with latest features and fixes
- Add missing dependencies for HTTP transport build (chalk, cors, express types)

These improvements enhance the developer experience and prepare the package for broader distribution.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
B
Ben Hofferber committed
f5397b65b825bb016ba5491df219180fab0175bc
Parent: 0d3522b
Committed by GitHub <noreply@github.com> on 11/10/2025, 11:03:00 PM