Skip to main content

Add your description here

Project description

library-mcp is an MCP server for interacting with Markdown knowledge bases. Basically, folders that may or may not have subfolders, that include files with .md extension and start with metadata like:

----
title: My blog post
tags:
- python
- programming
url: /my-blog-post
---

# My blog post
Yesterday I was dreaming about...

The typical workflow in the current verison is to retrieve recent content for a given tag, and then discuss using that tag:

Get the next 50 posts with tag "executive",
then tell me what I should do about this problem
I am running into: ...

You can also do the same but by date ranges:

Summarize the blog posts I wrote in the past year.

You might reasonably ask "why not just upload your entire blog into the context window?" and there are two places where this library outperforms that approach:

  1. My blog corpus is much larger than most model's context windows today. Further, even if the context windows became exhaustively large, I wrote a lot of mediocre stuff in the past, so maybe omitting it's a feature.
  2. I have a number of distinct Markdown knowledge bases, and this lets me operate across them in tandem.

Finally, this is a hobby project, intended for running locally on your laptop. No humans have been harmed using this software, but it does work pretty well!

Tools

This MCP server exposes these tools.

Content Search Tools

Tools for retrieving content into your context window:

  • get_by_tag - Retrieves content by tag
  • get_by_text - Searches content for specific text
  • get_by_slug_or_url - Finds posts by slug or URL
  • get_by_date_range - Gets posts published within a date range

Tag Management Tools

Tools for navigating your knowledge base:

  • search_tags - Searches for tags matching a query
  • list_all_tags - Lists all tags sorted by post count and recency

Maintenance Tools

Tools for dealing with running the tool:

  • rebuild - Rebuilds the content index, useful if you have added more content, edited existing content, etc

Setup / Installation

These instructions describe installation for Claude Desktop on OS X. It should work similarly on other platforms.

  1. Install Claude Desktop.

  2. Clone library-mcp into a convenient location, I'm assuming /Users/will/library-mcp

  3. Make sure you have uv installed, you can follow these instructions

  4. Go to Cladue Desktop, Setting, Developer, and have it create your MCP config file. Then you want to update your claude_desktop_config.json. (Note that you should replace will with your user, e.g. the output of whoami.

     cd /Users/will/Library/Application Support/Claude
     vi claude_desktop_config.json
    

    Then add this section:

     {
       "mcpServers": {
         "library": {
           "command": "uv",
           "args": [
             "--directory",
             "/Users/will/library-mcp",
             "run",
             "main.py",
             "/Users/will/irrational_hugo/content"
           ]
         }
       }
     }
    
  5. Close Claude and reopen it.

  6. It should work...

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

iflow_mcp_library_mcp-0.1.0.tar.gz (7.5 kB view details)

Uploaded Source

Built Distribution

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

iflow_mcp_library_mcp-0.1.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file iflow_mcp_library_mcp-0.1.0.tar.gz.

File metadata

File hashes

Hashes for iflow_mcp_library_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 7845adab3c4e28b042101ef08c1f84f1cab08fb7b387e6e627d5e10abd9ecd23
MD5 b7fe818b22c042cb3b2d1e607fdc30c2
BLAKE2b-256 0cd1e479d59fd3679384c9c4f176e3dd8223185cf3f727f4f4fa5cf9312a9420

See more details on using hashes here.

File details

Details for the file iflow_mcp_library_mcp-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for iflow_mcp_library_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e99a77a83b4fe3194c1f7b2de7ff32b55e4462690f06b2b82a254b8be4a328e0
MD5 26ef0baab278ad2fb346c1dc4cb797f4
BLAKE2b-256 ed36818a72340d2bd93acaf90c03019c7e3bd255f253ed1363783b2d377f1726

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