originality-mcp
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@originality-mcpScan this article for AI detection and plagiarism"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
originality-mcp
MCP server for Originality.ai — 5 tools covering AI detection, plagiarism checking, fact verification, readability analysis, grammar/spelling, and SEO optimization.
Tools
Tool | Description |
| Run a comprehensive content scan (AI, plagiarism, facts, readability, grammar, SEO) |
| Process multiple content scans in a single request |
| Scan content from a URL instead of raw text |
| Retrieve previously stored scan results by ID |
| Check account credit balance |
Related MCP server: HumanizeMCP
Setup
1. Get an API Key
Get your API key from the Originality.ai API Token Dashboard.
2. Configure your MCP client
Option A: npx (no installation)
{
"mcpServers": {
"originality": {
"command": "npx",
"args": ["originality-mcp"],
"env": {
"ORIGINALITY_API_KEY": "your-api-key"
}
}
}
}Option B: Local install
git clone https://github.com/Eyalm321/originality-mcp.git
cd originality-mcp
npm install
npm run buildThen configure your MCP client:
{
"mcpServers": {
"originality": {
"command": "node",
"args": ["/absolute/path/to/originality-mcp/dist/index.js"],
"env": {
"ORIGINALITY_API_KEY": "your-api-key"
}
}
}
}AI Detection Models
Model | ID | Description |
Lite |
| <1% false positive rate, allows minor AI editing |
Turbo |
| Strictest detection, <5% false positive rate |
Multi-Language |
| Supports 15+ languages |
Lite Beta |
| Latest experimental version |
Academic |
| Designed for teachers and students |
Development
npm install
npm run build
npm testLicense
MIT
Available Tools
5 toolsoriginality_batch_scanA
Process multiple content scans in a single request. Each item uses the same scan options. More efficient than individual scans for bulk content.
| Name | Required | Description | Default |
|---|---|---|---|
| items | Yes | Array of content items to scan | |
| check_ai | Yes | Enable AI detection for all items | |
| check_plagiarism | Yes | Enable plagiarism detection for all items | |
| check_facts | Yes | Enable fact checking for all items | |
| check_readability | Yes | Enable readability analysis for all items | |
| check_grammar | Yes | Enable grammar checking for all items | |
| check_contentOptimizer | Yes | Enable SEO optimization for all items | |
| aiModelVersion | Yes | AI detection model to use | |
| storeScan | No | Whether to persist results for later retrieval |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided; description merely mentions 'same scan options' and efficiency, but omits critical behavioral details like batch size limits, credit consumption, error handling, and result ordering.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise: two sentences that front-load purpose and efficiency benefit. No superfluous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema; description fails to explain return values, error handling, or how to interpret batch results. Lacks credit cost or rate limit context essential for a batch operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions. The tool description adds minimal extra meaning beyond stating that options apply uniformly across items, which is already implied.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'process' and resource 'multiple content scans'. It distinguishes from siblings by explicitly noting efficiency for bulk content compared to individual scans.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description implies usage for bulk scanning with efficiency benefit, but lacks explicit exclusion criteria or comparison with sibling tools like originality_scan for different options per item.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
originality_get_credit_balanceA
Retrieve the current account credit balance. Use this to check how many credits are available before running scans.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must convey behavioral traits. It correctly implies a read-only operation ('Retrieve') and states the result (credit balance). However, it does not specify any rate limits or authentication requirements, but for a simple balance check this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with no extraneous information. The most important information (what it does and when to use it) is front-loaded. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple, the description lacks information about the return value format (e.g., number, object). Since there is no output schema, the description should clarify what the response contains. This is a notable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so schema description coverage is 100%. Per guidelines, a baseline of 4 is appropriate. The description adds no parameter details, which is fine since there are none.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Retrieve') and the resource ('current account credit balance'). It distinguishes from sibling tools, which are all scanning-related, making this a unique and specific function.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly recommends using this tool before running scans to check credit availability. This provides good contextual guidance, though it does not mention any exceptions or alternative use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
originality_get_scan_resultsA
Retrieve previously stored scan results by scan ID. Only works for scans that had storeScan set to true.
| Name | Required | Description | Default |
|---|---|---|---|
| scanId | Yes | The privateID of the scan to retrieve results for |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses the critical behavioral condition (storeScan required) beyond the schema. With no annotations, this adds transparency. Could mention error handling or auth needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words. Information is front-loaded and easy to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose and condition. Lacks output format or error cases, but given single param and no output schema, it's minimally adequate. Could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already describes scanId as 'The privateID'. Description adds no further meaning to the parameter itself, just the condition. Baseline 3 due to 100% schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it retrieves stored scan results by scan ID, with a key condition (storeScan=true). It distinguishes from siblings like originality_scan which likely creates scans, and originality_batch_scan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly says only works for scans that had storeScan set to true, guiding when to use. Could further indicate when to use alternatives like originality_scan if not stored.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
originality_scanA
Run a comprehensive content scan for AI detection, plagiarism, fact checking, readability, grammar/spelling, and SEO optimization. Requires plain text content. Each enabled check consumes credits.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Identifier/label for the scan | |
| content | Yes | Plain text content to analyze | |
| check_ai | Yes | Enable AI detection | |
| check_plagiarism | Yes | Enable plagiarism detection | |
| check_facts | Yes | Enable factual accuracy verification | |
| check_readability | Yes | Enable readability scoring | |
| check_grammar | Yes | Enable grammar/spelling checks | |
| check_contentOptimizer | Yes | Enable SEO optimization analysis | |
| aiModelVersion | Yes | AI detection model to use | |
| optimizerQuery | No | Target keyword/phrase for SEO analysis | |
| optimizerCountry | No | Country for SEO analysis (e.g. "United States") | |
| optimizerDevice | No | Device type for SEO analysis | |
| optimizerPublishingDomain | No | Website URL for contextual SEO analysis | |
| storeScan | No | Whether to persist results for later retrieval | |
| excludedUrls | No | URLs to exclude from plagiarism checks |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. It reveals that enabled checks consume credits and that content must be plain text, but it does not disclose rate limits, whether results are returned synchronously, what happens if credits are insufficient, or how stored results are structured. The storeScan parameter suggests persistence but is not explained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with two sentences. The first sentence front-loads the comprehensive capabilities, and the second adds key constraints. While efficient, it could benefit from a slightly more structured breakdown of the scan types.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 15 parameters (9 required), no output schema, and no annotations, the description covers the core purpose and credit consumption but lacks details on return format, processing model (sync/async), and how to use stored results. It is sufficient for basic understanding but not fully complete for an agent to predict behavior without additional context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds minimal value beyond the schema: it notes that plain text is required and that credits are consumed per check. No deeper semantics are provided for individual parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool performs a comprehensive content scan and lists all specific checks (AI detection, plagiarism, fact checking, readability, grammar/spelling, SEO). It distinguishes from siblings like originality_scan_url and originality_batch_scan by focusing on plain text content for a single scan.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the requirement for plain text content and that each enabled check consumes credits, which provides some usage context. However, it does not explicitly guide when to use this tool versus alternatives like originality_scan_url or originality_batch_scan, nor does it specify exclusions or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
originality_scan_urlA
Scan content from a URL. The API fetches the content from the provided URL and runs the same checks as a regular scan. Useful for analyzing published web pages.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL of the page to scan | |
| title | No | Identifier/label for the scan | |
| check_ai | Yes | Enable AI detection | |
| check_plagiarism | Yes | Enable plagiarism detection | |
| check_facts | Yes | Enable fact checking | |
| check_readability | Yes | Enable readability analysis | |
| check_grammar | Yes | Enable grammar checking | |
| check_contentOptimizer | Yes | Enable SEO optimization analysis | |
| aiModelVersion | Yes | AI detection model to use | |
| optimizerQuery | No | Target keyword/phrase for SEO analysis | |
| optimizerCountry | No | Country for SEO analysis (e.g. "United States") | |
| optimizerDevice | No | Device type for SEO analysis | |
| optimizerPublishingDomain | No | Website URL for contextual SEO analysis | |
| storeScan | No | Whether to persist results for later retrieval | |
| excludedUrls | No | URLs to exclude from plagiarism checks |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears full behavioral burden. It discloses that the API fetches content and runs checks, but lacks details on authorization, rate limits, destructiveness, or latency. It adds some value beyond the schema but is not fully transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded, and no fluff. Every sentence adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 100% schema coverage, the description omits what the tool returns (e.g., scan ID or result object). Since the sibling 'originality_get_scan_results' exists, it implies this tool submits a scan, but no mention of output format. With 15 parameters and no output schema, more context is needed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are well-documented. The description adds no additional meaning beyond the schema; it only mentions the 'URL' parameter implicitly. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it scans content from a URL, fetching and analyzing it like a regular scan. It effectively distinguishes from siblings like originality_scan (direct text) and batch_scan (batch processing).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says it is 'useful for analyzing published web pages,' implying when to use via URL. It mentions 'same checks as a regular scan,' hinting at alternatives, but does not explicitly state when not to use or compare to other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
5 tool updates
v1.0.0- First observed
originality_batch_scan - First observed
originality_get_credit_balance - First observed
originality_get_scan_results - First observed
originality_scan - First observed
originality_scan_url
TDQS
Scored across 5 tools
Each tool has a clear, distinct purpose: scanning text, scanning URLs, batch scanning, retrieving results, and checking credit balance. No ambiguity or overlap.
All tools use a consistent snake_case verb_noun pattern with the 'originality_' prefix. The naming is predictable and uniform.
With 5 tools, the set is well-scoped for an originality scanning service. Each tool serves a necessary function without redundancy or excessive specialization.
The tools cover the essential workflow: checking credits, scanning text/URLs, batch scanning, and retrieving stored results. Minor gaps like listing or deleting scans do not hinder core functionality.
Maintenance
Related MCP Connectors
An MCP server that integrates with Discord to provide AI-powered features.
MCP server for Suno AI music generation, lyrics, and covers
SEO MCP server for keyword research, SERP analysis, audits, and Search Console workflows.
MCP server for NanoBanana AI image generation and editing
Related MCP Servers
- AlicenseAqualityDmaintenanceLocal-first MCP server for Originality.ai workflows, including AI detection, plagiarism checks, readability, SEO scans, and scan-result retrieval for content teams.81AGPL 3.0
- AlicenseAqualityDmaintenanceAn open-source MCP server that rewrites AI-generated prose to appear human-authored, with tools for detection and verification against AI detectors.62MIT
- AlicenseNot gradedqualityAmaintenancePlagiarism Checker AI - MCP server providing AI-powered tools and automation by MEOK AI Labs6 npm33 PyPIMIT
- AlicenseNot gradedqualityAmaintenanceMCP server offering text analysis tools for writing improvement, including spellcheck, readability, keyword analysis, passive voice detection, and AI-generated content detection.10MIT