loading…
Search for a command to run...
loading…
Enables Salesforce developers to create code and configuration using local documentation, with optional semantic search.
Enables Salesforce developers to create code and configuration using local documentation, with optional semantic search.
Assist Salesforce developers to create code and configuration! This is a MCP server that you can run locally or host remotely.
Designed to fetch documentation from your local file system, giving you complete control over the context provided to your AI assistant.
Inspired by context7 - but this application uses local documentation library.
Seta MCP server consists of three primary components:
Seta MCP helps you to -
This MCP server reads documentation from a local directory structure you define.
LOCAL_DOCS_PATH: You specify a root directory for your documentation via the LOCAL_DOCS_PATH environment variable.LOCAL_DOCS_PATH, each library or documentation set should reside in its own subdirectory.manifest.json: Each library subdirectory must contain a manifest.json file with rich metadata including difficulty levels, use cases, learning paths, and semantic groups.seta-indexer to create a vector database for semantic search capabilities.When you prompt your LLM (e.g., in VSCode) with use latest Apex docs, use seta or just reference any of the below tools in the prompt:
get-library-id tool searches the manifest.json files in your LOCAL_DOCS_PATH to find matching libraries.get-library-docs tool then fetches the content of the specified document file from your local file system.LOCAL_DOCS_PATH environment variable must be set to point to this directory.Your LOCAL_DOCS_PATH should point to a root directory. Inside this, each library has its own folder:
<your_LOCAL_DOCS_PATH>/
├── my-awesome-lib/
│ ├── manifest.json
│ ├── main_guide.md
│ ├── .seta_lancedb/ # Created by seta-indexer (optional)
│ └── topics/
│ └── report.md
│ └── advanced_reports.txt
└── another-tool/
├── manifest.json
└── quick_start.md
manifest.json FormatEach library directory (e.g., my-awesome-lib/) must contain a manifest.json file in the following enhanced format:
{
"name": "My Awesome Library",
"description": "A brief description of what this library does.",
"version": "2.1.0",
"default_doc": "main_guide.md", // File to use if no topic is specified
"topics": [
{
"name": "report",
"file": "report.md",
"tags": ["report"],
"related": ["advanced"],
"prerequisites": [],
"leads_to": ["advanced"],
"difficulty": "beginner",
"use_cases": ["basic reporting", "data visualization"],
"code_patterns": ["SOQL queries", "report types"]
},
{
"name": "advanced",
"file": "topics/advanced_reports.txt",
"tags": ["advanced"],
"related": ["report"],
"prerequisites": ["report"],
"leads_to": [],
"difficulty": "advanced",
"use_cases": ["complex analytics", "custom report types"],
"code_patterns": ["dynamic SOQL", "custom report builders"]
}
],
"semantic_groups": {
"fundamentals": ["report"],
"advanced_features": ["advanced"]
},
"learning_paths": {
"beginner": ["report"],
"expert": ["report", "advanced"]
},
"totalSnippets": 25 // Optional: for display purposes
}
Enhanced topic properties:
prerequisites (array of strings, optional): Topics that should be understood firstleads_to (array of strings, optional): Topics that naturally follow this onedifficulty (string, optional): "beginner", "intermediate", or "advanced"use_cases (array of strings, optional): Practical applications of this topiccode_patterns (array of strings, optional): Code patterns or techniques coveredNew library-level properties:
semantic_groups (object, optional): Named collections of related topicslearning_paths (object, optional): Suggested sequences of topics for different skill levelsHow enhanced topic lookup works:
Clone the project and install dependencies:
npm i
Build (assuming main.ts is in the root and tsconfig.json is configured for outDir: "./dist" and rootDir: "./"):
npm run build
This will compile main.ts (and files in lib/ and indexer/) to dist/main.js and dist/indexer/cli.js.
To run your local development version with an MCP client like Cursor:
{
"mcpServers": {
"seta_dev": {
"command": "npx",
"args": ["tsx", "/path/to/your/project/dist/main.js"],
"env": {
"LOCAL_DOCS_PATH": "/absolute/path/to/your/test_documentation_root", // Essential for testing
"DEFAULT_MAX_TOKENS": "5000" // Optional
}
}
}
}
Ensure LOCAL_DOCS_PATH is set in your environment.
# For published version
# export LOCAL_DOCS_PATH="/path/to/your/docs"
npx -y @modelcontextprotocol/inspector npx seta-mcp@latest
This project relies on the documentation you provide. The quality, accuracy, and completeness of the generated context are directly dependent on your local documentation files. Use at your own discretion and risk.
MIT
Выполни в терминале:
claude mcp add seta-mcp -- npx Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории development