A Model Context Protocol server that provides intelligent query generation and documentation assistance using Claude AI. The server analyzes your API documentation and provides two main tools:
- create-query: Generates queries based on natural language requests
- documentation: Provides relevant documentation information based on questions
- Node.js >= 18
- An Anthropic API key for Claude
- Clone the repository
- Install dependencies:
npm install
- Create a
.env
file with your Anthropic API key:
ANTHROPIC_API_KEY=your_api_key_here
Before running the server, you need to:
- Build the project and run the setup script:
npm run build
npm run setup
This will:
- Create the required directories (
docs/
andprompts/
) - Create default prompt files
- Generate an initial service description
-
Add your API documentation files to the
docs/
directory (supports.txt
,.md
, and.json
files) -
Optionally customize the prompts in the
prompts/
directory:system-prompt.txt
: Main system prompt for Claudetool-metadata.txt
: Additional context for tool descriptionsquery-metadata.txt
: Additional context for query generationservice-description.txt
: Auto-generated service description
Start the server:
npm start
The server exposes two tools via the Model Context Protocol:
-
create-query: Generate a query based on natural language request
{ "name": "create-query", "arguments": { "request": "Find all users who signed up in the last week" } }
-
documentation: Get information from the documentation
{ "name": "documentation", "arguments": { "request": "How do I authenticate API requests?" } }
- Add this configuration to your Claude Desktop config file:
{
"mcpServers": {
"expert": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/expert-server/build/index.js"],
"env": {
"ANTHROPIC_API_KEY": "your_api_key_here"
}
}
}
}
-
Replace
/ABSOLUTE/PATH/TO/expert-server
with the actual absolute path to your server installation. -
Restart Claude Desktop.
.
├── docs/ # Your API documentation files
├── prompts/ # System prompts and metadata
│ ├── system-prompt.txt # Main system prompt
│ ├── tool-metadata.txt # Tool description context
│ ├── query-metadata.txt # Query generation context
│ └── service-description.txt # Generated service description
├── src/ # Source code
│ ├── index.ts # Entry point
│ ├── server.ts # MCP server implementation
│ └── services/ # Core services
│ └── expertService.ts # Claude integration
└── package.json
- Build the project:
npm run build
- The server uses TypeScript and follows a modular architecture
- All Claude interactions are handled by the ExpertService class
- Debug logs are written to stderr with [DEBUG] prefix
If you encounter connection issues:
- Ensure you've run the setup script:
npm run setup
- Check that all required files exist in the
prompts/
directory - Verify your
ANTHROPIC_API_KEY
is correctly set - Use absolute paths in your Claude Desktop config
- Check the debug logs (written to stderr)
ANTHROPIC_API_KEY
: Your Anthropic API key (required)
MIT