mcp-factcheck
Validates code or content against official MCP specifications to ensure technical accuracy and prevent misinformation.
README
MCP Fact-Check MCP Server
An MCP Server for validating code or content against the official Model Context Protocol (MCP) specification to ensure technical accuracy and prevent the spread of misinformation.
š¦ View in MCP Registry - Available in the official MCP Registry
š View Project Roadmap - See planned features and development progress
šļø Design Documentation - Technical design and implementation details
Overview
The MCP Fact-Check MCP Server helps ensure technical accuracy when coding or writing about MCP by comparing content against official specifications. It uses:
- Semantic search with OpenAI embeddings to find relevant specification sections
- AI-powered validation to detect inaccuracies and suggest corrections
- Compound claim decomposition to validate complex statements with multiple assertions
- Multiple spec versions support (draft, 2025-06-18, 2025-03-26, 2024-11-05)
Features
MCP Tools Exposed
-
check_mcp_claim- Comprehensive validation of MCP-related content- Validates multi-claim content (documentation, tutorials, bullet points)
- Automatically decomposes compound claims (e.g., "X and Y") for accurate validation
- Provides step-by-step validation workflow
- Identifies missing best practices and modal verb issues
- Returns corrected content with confidence scores
-
check_mcp_quick_fact- Quick fact-checking for single MCP claims- Validates single sentences or quick questions
- Returns concise ā/ā verdict with explanation
- Uses aggressive search strategies for accuracy
- Perfect for "Does MCP support X?" questions
-
search_spec- Searches MCP specifications using semantic similarity- Returns most relevant specification sections
- Supports all specification versions
-
list_spec_versions- Lists available MCP specification versions- Shows version dates and descriptions
- Indicates which version is current
MCP Prompts Available
-
migrate-mcp-content- Guides content migration between MCP specification versions- Validates content against source specification first
- Identifies changes between specification versions
- Provides step-by-step migration guidance
- Works with any type of MCP-related content
- Preserves the original tone, style, and voice when making corrections or suggestions
Parameters:
current_version(required): Source MCP specification version (e.g., "2024-11-05", "2025-06-18")target_version(required): Target MCP specification version to migrate to (e.g., "draft")update_scope(optional): Determines how aggressive the migration should becritical_only: Fix only critical inaccuracies and breaking changes (minimal changes)enhancement_focused: Fix issues and improve clarity, align with best practicescomprehensive: Complete review with all improvements and enhanced clarity- Default:
comprehensive
Installation
The MCP Fact-Check server is available through the Model Context Protocol registry. Install it directly from your MCP client:
For Claude Desktop and other MCP clients:
- Search for "mcp-factcheck" in your client's server marketplace
- Click install
- Provide your OpenAI API key when prompted
That's it! The server will be automatically configured and ready to use.
For developers: If you need to build from source or contribute to the project, see INSTALL.md for development setup instructions.
Observability
Visual Tracing with Arize Phoenix
For a beautiful, AI-focused trace visualization UI, set up Arize Phoenix:
- Install and start Phoenix:
# Install Phoenix
pipx install arize-phoenix
# Start Phoenix server
phoenix serve
- Update the Host config to send traces to Phoenix:
{
"mcpServers": {
"mcp-factcheck": {
"command": "/path/to/bin/mcp-factcheck-server",
"args": [
"--data-dir",
"/path/to/data/embeddings",
"--telemetry",
"--otlp-endpoint",
"http://localhost:6006"
],
"env": {
"OPENAI_API_KEY": "your-api-key"
}
}
}
}
- View traces at: http://localhost:6006
What you'll see in Phoenix:
- Beautiful AI-focused interface designed for LLM applications
- Complete validation pipeline timeline with clear visual hierarchy
- Embedding generation performance and OpenAI API call tracking
- Vector search visualization with similarity scores
- Per-chunk validation confidence levels and quality metrics
- Cost tracking for OpenAI API usage (or whichever llm is being used for embedding the input content/code)
- Clean, intuitive navigation focused on AI workflows
Phoenix is specifically designed for AI/ML observability and provides a much more user-friendly experience than traditional tracing tools.
Development
Building
# Build all components
go build -o bin/mfc ./cmd/server
go build -o bin/specloader ./utils/cmd
# Run tests
go test ./...
Updating Specifications
The project includes pre-extracted MCP specifications and embeddings for all versions. To check when the draft specification was last updated, see data/SPEC_METADATA.json:
# View draft update information
cat data/SPEC_METADATA.json | jq '.specs.draft'
To update the draft specification:
./bin/specloader spec --version draft
./bin/specloader embed --version draft
./bin/specloader embed --version draft-fine
To add a new specification version:
./bin/specloader spec --version 2025-12-15
./bin/specloader embed --version 2025-12-15
./bin/specloader embed --version 2025-12-15-fine
All specification extraction dates and source commits are automatically tracked in data/SPEC_METADATA.json.
Testing Tools
Test the server using the included test client:
# Build test client
go build -o bin/factcheck-curl ./cmd/factcheck-curl
# Test tools
./bin/factcheck-curl --cmd ./bin/mfc --data-dir ./data/embeddings tools/list
./bin/factcheck-curl --cmd ./bin/mfc --data-dir ./data/embeddings tools/call validate_content '{"content":"MCP is a protocol"}'
# Test prompts
./bin/factcheck-curl --cmd ./bin/mfc --data-dir ./data/embeddings prompts/list
# Get migration prompt with minimal parameters
./bin/factcheck-curl --cmd ./bin/mfc --data-dir ./data/embeddings prompts/get migrate-mcp-content '{"current_version":"2024-11-05","target_version":"draft"}'
# Get migration prompt with all parameters
./bin/factcheck-curl --cmd ./bin/mfc --data-dir ./data/embeddings prompts/get migrate-mcp-content '{
"current_version": "2024-11-05",
"target_version": "2025-06-18",
"update_scope": "critical_only"
}'
Architecture
See DESIGN.md for the complete architecture documentation.
Environment Variables
OPENAI_API_KEY- Required for embedding generation and content validationGITHUB_TOKEN- Optional, for higher GitHub API rate limits when extracting specs
License
MIT License. See LICENSE for details.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.