amplemarket-pylon-mcp
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"pylon-kb": {
"args": [
"./dist/src/index.js"
],
"command": "node",
"cwd": "/path/to/mcp-pylon-kb",
"env": {
"PYLON_API_TOKEN": "your_actual_api_token_here"
}
}
}
}
服务介绍
MCP Amplemarket Knowledge Base Server
A Model Context Protocol (MCP) server that provides seamless access to the Amplemarket Knowledge Base via Pylon's API. Designed specifically for Claude Desktop and other MCP-compatible clients.
Features
- ** Smart Search**: Search through Amplemarket articles by title and content
- ** Article Access**: Retrieve full article content by ID or slug
- ** Complete Catalog**: Get all available Amplemarket articles at once
- ** Resource Support**: Access articles via URI scheme
- ** Fast Caching**: Built-in 60-second cache to reduce API calls
- ** Secure**: Environment-based API token configuration
- ** Focused**: Hardcoded for Amplemarket knowledge base - no configuration needed
Setup
-
Install dependencies:
npm install -
Configure your API key:
cp .env.example .envThen edit the
.envfile and add your Pylon API token:PYLON_API_TOKEN=your_actual_api_token_hereImportant: Replace
your_actual_api_token_herewith your real Pylon API token. You can get this token from your Pylon dashboard. -
Build the project:
npm run build -
Test the server:
npm start
Configuration
Environment Variables
PYLON_API_TOKEN: Your Pylon API token (required)
Claude Desktop Integration
Add to your Claude Desktop mcp.json configuration:
{
"mcpServers": {
"pylon-kb": {
"command": "node",
"args": ["./dist/src/index.js"],
"cwd": "/path/to/mcp-pylon-kb",
"env": {
"PYLON_API_TOKEN": "your_actual_api_token_here"
}
}
}
}
Note: Replace
/path/to/mcp-pylon-kbwith the actual path to this project directory, andyour_actual_api_token_herewith your real Pylon API token.
Tools
kb.search
Search for articles in the knowledge base.
Parameters:
query(string, required): Search querylimit(number, optional): Maximum results (1-100, default: 10)collectionId(string, optional): Limit search to specific collection
kb.getArticle
Get a specific article by ID or slug.
Parameters:
id(string, optional): Article IDslug(string, optional): Article slug
Note: Either id or slug must be provided.
kb.getCollection
Get collection metadata and articles.
Parameters:
id(string, required): Collection ID
Resources
The server supports the pylon-article:// URI scheme:
pylon-article://<article-id>- Get article by IDpylon-article://<article-slug>- Get article by slugpylon-article://help- Get resource usage help
API Client
The Pylon API client (src/pylon.ts) handles:
- Authentication with Bearer token
- HTTP requests via undici
- HTML to text conversion
- In-memory caching with TTL
- Error handling
Development
# Install dependencies
npm install
# Build
npm run build
# Development mode (build + run)
npm run dev
# Run tests
npm test
Project Structure
mcp-pylon-kb/
package.json
tsconfig.json
.env.example
README.md
src/
index.ts # MCP server entry point
pylon.ts # Pylon API client
schema.ts # Zod validation schemas
tools/ # MCP tool implementations
kbSearch.ts
kbGetArticle.ts
kbGetCollection.ts
tests/
htmlToText.test.ts
searchAdapter.test.ts
Security
- API tokens are never logged or exposed in responses
- All sensitive data is read from environment variables
- Input validation with Zod schemas
- Error messages don't leak sensitive information
License
MIT