MikeCreighton.com Content MCP Server
by mikecreighton
This is a local Model Context Protocol (MCP) server that provides all pages from the Mike Creighton Consulting website as Resources to any MCP clients. It enables collaboration with Claude on marketing strategies, content ideas, and content creation, keeping Claude up-to-date on the consulting practice.
Last updated: N/A
MikeCreighton.com Content MCP Server
This is a local Model Context Protocol (MCP) server that will provide all of the Mike Creighton Consulting website pages as Resources to any MCP clients.
Primary Use Case
It's a way for me to collaborate with Claude on marketing strategies, content ideas, content critiques, and content creation. It also acts as an easy way to keep Claude up-to-date on what I'm doing with my consulting practice. Basically: Claude can know my business better.
MCP Tools
list_mikecreighton_website_pages
- Lists all available pages from the websiteget_mikecreighton_website_page_content
- Gets a specific page's contentsearch_mikecreighton_website_pages
- A simple keyword search across page titles and page descriptions
MCP Resources
- Each page is available as an individual named Resource in case I want to explictly reference a file within a conversation
- The Resources are defined at runtime in their Markdown format
Requirements
uv
is required to run this MCP server based on the configuration below. This will ensure that the correct python virtual environment is being used with zero setup.
Configuring Claude
To use this with Claude Desktop, you'll need to update the claude_desktop_config.json
file, which is located in different folders depending on your OS:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%\Claude\claude_desktop_config.json
You can follow the Claude Desktop setup instructions here for more detailed information.
This is the configuration information for the server:
{
"mcpServers": {
"Mike Creighton Consulting's Website Content": {
"command": "uv",
"args": [
"--directory",
"/absolute/path/to/mikecreighton-dot-com-content-mcp",
"run",
"server.py"
]
}
}
}
Note: you may have to specify the full path to the uv
command.
Example Queries
- "What has Mike written about lately on his website?"
- "What are the services that Mike offers?"
- "Do you think Mike would be able to help me with designing my marketing website?"
- "I'm new to generative AI, and I need some ideas for my business. Can Mike help me?"
- "I'm trying to build a 0->1 prototype to test out an gen AI-powered idea. I work at an agency and need to help with new business intake... like transforming a client brief into an RFP response starter. Has Mike ever built anything like that?"
Utils
download.py
Crawls mikecreighton.com and downloads all pages as HTML files to the local html
folder. It uses MarkItDown
to the convert the HTML files into Markdown files, saving each HTML file's corresponding Markdown file into the local markdown
folder.
Finally, it creates a map of the website as a JSON object, representing the hierarchy of the original website. Each page consists of the following schema:
{
"base": "{page_path}/{page}",
"html": "./html/{page_path}/{page}.html",
"markdown": "./markdown/{page_path}/{page}.md",
"name": "{title of the page extracted from the <title> tag}",
"description": "{description of the page extracted from the <description> tag}"
}
With each run, the utility will clear out any existing files in the html
and markdown
folders. Note that these are not committed to the repo, as the website is updated periodically.