Removed notes.db

This commit is contained in:
Garvan
2024-11-19 11:05:20 -05:00
parent 1896a0aa87
commit 576ce79acd
6 changed files with 574 additions and 0 deletions

62
src/sqlite/README.md Normal file
View File

@@ -0,0 +1,62 @@
# Simple SQLite Notes Server
A basic MCP server implementation that demonstrates note-taking functionality using the three core MCP primitives: Resources, Prompts, and Tools.
## Core Concepts
### Resources
Resources are how clients access data from the server. In this case, they're notes stored in SQLite.
```python
# Access notes through a custom URI scheme
note:///example_note # Gets the content of 'example_note'
```
### Prompts
Prompts allow generating text based on server state. Our server has a note summarization prompt that can be styled.
```python
# Example prompt with style argument
{
"name": "summarize-notes",
"arguments": {
"style": "academic" # Can be any style descriptor
}
}
```
### Tools
Tools modify server state. We have a simple tool to add new notes.
```python
# Adding a new note
{
"name": "add-note",
"arguments": {
"name": "my_note",
"content": "This is my note content"
}
}
```
## Key Implementation Details
### Handler Registration
All decorated handlers must be inside `__init__`:
```python
def __init__(self):
super().__init__("sqlite")
@self.list_resources()
async def handle_list_resources():
# Handler code here
@self.read_resource()
async def handle_read_resource():
# Handler code here
```
### Storage
- Uses SQLite for persistent storage
- Helper methods handle database operations
- Clients are notified of state changes