A Model Context Protocol (MCP) server that provides seamless access to Contentful's Delivery API through AI assistants. Query and retrieve content entries, assets, and content types using natural language.
Quick Start
Install the package in your project:
npm install @mshaaban0/contentful-delivery-mcp-server
Or globally:
npm install -g @mshaaban0/contentful-delivery-mcp-server
Set up your Contentful credentials:
export CONTENTFUL_SPACE_ID="your_space_id"
export CONTENTFUL_ACCESS_TOKEN="your_access_token"
Features
- Natural language queries to search content
- Retrieve entries by ID or content type
- Asset management
- Content type schema access
- Pagination support
- Rich text content handling
query_entries
- Natural language search across all content
get_entry
- Fetch specific entry by ID
get_entries
- List entries with filtering
get_assets
- Browse all assets
get_asset
- Get asset details by ID
get_content_type
- View content type schema
get_content_types
- List available content types
Integration with Mastra AI
Mastra AI provides seamless integration with this MCP server. Here's how to set it up:
import { MastraMCPClient } from "@mastra/mcp";
import { Agent } from "@mastra/core/agent";
// Initialize the MCP client
const contentfulClient = new MastraMCPClient({
name: "contentful-delivery",
server: {
command: "npx",
args: ["-y", "@mshaaban0/contentful-delivery-mcp-server@latest"],
env: {
CONTENTFUL_ACCESS_TOKEN: "your_access_token",
CONTENTFUL_SPACE_ID: "your_space_id"
}
}
});
// Create an AI agent with access to Contentful
const assistant = new Agent({
name: "Content Assistant",
instructions: `
You are a helpful assistant with access to our content database.
Use the available tools to find and provide accurate information.
`,
model: "gpt-4",
});
// Connect and register tools
await contentfulClient.connect();
const tools = await contentfulClient.tools();
assistant.__setTools(tools);
// Example usage
const response = await assistant.chat("Find articles about machine learning");
Development
# Clone the repo
git clone https://github.com/mshaaban0/contentful-delivery-mcp-server.git
# Install dependencies
npm install
# Build
npm run build
# Development with auto-rebuild
npm run watch
# Run the inspector
npm run inspector
Debugging
The MCP Inspector provides a web interface for debugging:
npm run inspector
Visit the provided URL to access the debugging tools.
Resources
License
MIT