veyra-snippets
Supports JavaScript code snippets with language filtering capabilities, allowing agents to browse and search specifically for JavaScript code examples.
Uses SQLite as the backend database for storing and managing code snippets, providing a reliable local storage solution for the snippet library.
Supports TypeScript code snippets with language filtering capabilities, allowing agents to browse and search specifically for TypeScript code examples.
veyra-snippets
A persistent code snippet manager MCP tool for AI agents, with language filtering, tag search, and full-text code search. Reads are always free. Write operations require Veyra commit mode authorization.
Overview
veyra-snippets gives AI agents a reliable code library backed by SQLite. Agents can freely browse and search snippets. Saving, updating, and deleting snippets is protected by Veyra commit mode — ensuring intentional, accountable writes.
Installation
npm install
npm run buildSnippets are stored at ~/.veyra-snippets/data.db, created automatically on first run.
MCP Configuration (Claude Desktop)
Add the following to your claude_desktop_config.json:
{
"mcpServers": {
"veyra-snippets": {
"command": "node",
"args": ["/absolute/path/to/veyra-snippets/dist/index.js"]
}
}
}Tools
Tool | Input | Class | Price |
|
| — | FREE |
|
| — | FREE |
|
| — | FREE |
|
| A | €0.005 |
|
| A | €0.005 |
|
| B | €0.02 |
Examples
Read (no token needed)
// List all snippets
{ "tool": "list_snippets", "arguments": {} }
// List TypeScript snippets
{ "tool": "list_snippets", "arguments": { "language": "typescript" } }
// List snippets by tag
{ "tool": "list_snippets", "arguments": { "tag": "auth" } }
// Get a specific snippet
{ "tool": "get_snippet", "arguments": { "id": "1712345678-abc1234" } }
// Search across title, code, language, and tags
{ "tool": "search_snippets", "arguments": { "query": "debounce" } }Write (Veyra token required)
// Save a new snippet
{
"tool": "save_snippet",
"arguments": {
"title": "Debounce utility",
"code": "function debounce(fn, ms) {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => fn(...args), ms);\n };\n}",
"language": "javascript",
"tags": "utility,performance",
"veyra_token": "vt_..."
}
}
// Update snippet code
{
"tool": "update_snippet",
"arguments": {
"id": "1712345678-abc1234",
"code": "// updated code here",
"veyra_token": "vt_..."
}
}
// Delete a snippet
{
"tool": "delete_snippet",
"arguments": {
"id": "1712345678-abc1234",
"veyra_token": "vt_..."
}
}Error response when token is missing
{
"error": "VeyraCommitRequired",
"message": "Write operations require Veyra commit mode.",
"currentMode": "open",
"requiredMode": "commit",
"transitionStrategy": "authorize_then_retry_with_x_veyra_token",
"provider": "veyra",
"authorize_endpoint": "https://api.veyra.to/v1/authorize-action",
"docs_url": "https://veyra.to"
}How Veyra Works
Veyra is a commit-mode authorization layer for AI agents. When an agent attempts a write operation:
The agent calls the tool without a
veyra_tokenand receives aVeyraCommitRequirederror with anauthorize_endpoint.The agent (or the user on its behalf) calls the authorize endpoint to obtain a token.
The agent retries the tool call with
veyra_tokenset.veyra-snippetsverifies the token via@veyrahq/sdk-nodebefore executing the write.
See veyra.to for full documentation.
License
MIT
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Aquariosan/veyra-snippets'
If you have feedback or need assistance with the MCP directory API, please join our Discord server