Cited, versioned knowledge for agents: retrieve sourced passages and propose owner-approved fixes.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Approve or reject a pending revision. Requires the dataset owner's API key or KNOWLEDGE_ADMIN_KEY. Approved text is chunked and becomes retrievable.
Revision id returned by koskamo_propose_revision or koskamo_list_revisions
Optional review note
The server marks this tool as destructive. Running it may delete or overwrite data on the server or in any account you connected with your headers.
Approve or reject a pending revision. Requires the dataset owner's API key or KNOWLEDGE_ADMIN_KEY. Approved text is chunked and becomes retrievable.
| Argument | Type | Description |
|---|---|---|
| note | string | Optional review note |
| decision* | string | |
| revision_id* | string | Revision id returned by koskamo_propose_revision or koskamo_list_revisions |
{
"type": "object",
"required": [
"revision_id",
"decision"
],
"properties": {
"note": {
"type": "string",
"description": "Optional review note"
},
"decision": {
"enum": [
"approved",
"rejected"
],
"type": "string"
},
"revision_id": {
"type": "string",
"description": "Revision id returned by koskamo_propose_revision or koskamo_list_revisions"
}
}
}Find official, vendor-run remote MCP servers in the Koskamo MCP directory. Every listed endpoint passed a recent live check; returns the endpoint URL, sign-in type, documentation link, and known tools.
| Argument | Type | Description |
|---|---|---|
| auth | string | Optional sign-in filter; none means usable without an account; oauth-optional means public tools work anonymously and account tools prompt OAuth sign-in |
| query | string | Words to match against name, operator, description, use cases, and tool names |
| category | string | Optional category filter |
{
"type": "object",
"properties": {
"auth": {
"enum": [
"none",
"oauth-optional",
"oauth",
"api-key"
],
"type": "string",
"description": "Optional sign-in filter; none means usable without an account; oauth-optional means public tools work anonymously and account tools prompt OAuth sign-in"
},
"query": {
"type": "string",
"maxLength": 200,
"description": "Words to match against name, operator, description, use cases, and tool names"
},
"category": {
"enum": [
"docs-reference",
"developer-tools",
"cloud-infrastructure",
"data-analytics",
"ai-ml",
"commerce",
"payments",
"productivity",
"project-management",
"crm-marketing",
"erp-supply-chain",
"design"
],
"type": "string",
"description": "Optional category filter"
}
}
}Get the document version timeline for a public dataset: every document (including deleted ones) with the version history produced by approved revisions.
| Argument | Type | Description |
|---|---|---|
| dataset* | string | Dataset id or slug |
{
"type": "object",
"required": [
"dataset"
],
"properties": {
"dataset": {
"type": "string",
"description": "Dataset id or slug"
}
}
}List public Koskamo datasets an agent may retrieve from.
No arguments.
{
"type": "object",
"properties": {}
}List pending revisions for a dataset.
| Argument | Type | Description |
|---|---|---|
| dataset* | string |
{
"type": "object",
"required": [
"dataset"
],
"properties": {
"dataset": {
"type": "string"
}
}
}Propose a better fact for a dataset, propose reverting a document to an earlier version, or propose deleting a document. The change stays pending until a dataset owner approves it.
| Argument | Type | Description |
|---|---|---|
| text | string | The improved document text; required unless action is delete_document |
| title | string | Required unless action is delete_document |
| action | string | Defaults to add_document. delete_document needs only dataset and document_id. |
| dataset* | string | Dataset id or slug |
| rationale | string | |
| source_url | string | |
| document_id | string | Set to replace or delete an existing document |
| restore_version | integer | With replace_document and document_id, propose reverting the document to this stored version; title/text are taken from the version history. |
{
"type": "object",
"required": [
"dataset"
],
"properties": {
"text": {
"type": "string",
"description": "The improved document text; required unless action is delete_document"
},
"title": {
"type": "string",
"description": "Required unless action is delete_document"
},
"action": {
"enum": [
"add_document",
"replace_document",
"delete_document"
],
"type": "string",
"description": "Defaults to add_document. delete_document needs only dataset and document_id."
},
"dataset": {
"type": "string",
"description": "Dataset id or slug"
},
"rationale": {
"type": "string"
},
"source_url": {
"type": "string"
},
"document_id": {
"type": "string",
"description": "Set to replace or delete an existing document"
},
"restore_version": {
"type": "integer",
"minimum": 1,
"description": "With replace_document and document_id, propose reverting the document to this stored version; title/text are taken from the version history."
}
}
}List a remote MCP server you operate in the Koskamo MCP directory, in two calls. Call without token: the server fields are validated and you get a claim token plus where to publish it (https://<endpoint host>/.well-known/koskamo-claim, or TXT _koskamo-claim.<domain>). Publish it, then call again with id and token: once the proof is found and the live check passes, the listing is published and an owner key is returned once. Nothing is listed without both. Without DNS or web access, send method "email" and proofEmail at admin, administrator, webmaster, hostmaster, postmaster on the endpoint's domain: a single-use confirm link is mailed there (the link's token is never returned) and verify succeeds once a person presses Confirm. An email is optional but recommended so we can reach you about auto-hide, a lapsed proof, or key recovery; it gets one confirmation message and nothing else until confirmed, and it never grants ownership. Step-by-step guide with exact proof formats and every refusal: https://koskamo.com/explore/register
| Argument | Type | Description |
|---|---|---|
| id* | string | Lowercase kebab-case page id, e.g. acme-docs |
| auth | string | Required on the first call |
| name | string | Product name; required on the first call |
| string | Optional, recommended contact address for listing notices | |
| token | string | The claim token from the first call; send it to verify and publish |
| tools | array |
Retrieve candidate passages from Koskamo datasets. Check that the text answers the question before citing it. If none supports the question, report no supporting evidence. Scores are not confidence probabilities.
| Argument | Type | Description |
|---|---|---|
| query* | string | The question or search string |
| top_k | integer | |
| dataset | string | Optional dataset id or slug. Defaults to all public datasets. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"query": {
"type": "string",
"maxLength": 2000,
"minLength": 1,
"description": "The question or search string"
},
"top_k": {
"type": "integer",
"maximum": 12,
"minimum": 1
},
"dataset": {
"type": "string",
"description": "Optional dataset id or slug. Defaults to all public datasets."
}
}
}| Optional; replaced by the live tool list when the check passes |
| method | string | First call: "email" (with proofEmail) mails a confirm link instead of a token to publish. Verify call: check only this proof method; an email proof needs "email" |
| docsUrl | string | Your documentation page for this server; required on the first call |
| category | string | Required on the first call |
| endpoint | string | Streamable HTTP endpoint (https); required on the first call |
| operator | string | Company that runs the server; required on the first call |
| useCases | array | 1-6 use cases from your documentation; required on the first call |
| companyUrl | string | Optional https company website; an empty string clears it on edits |
| proofEmail | string | First call with method "email": admin|administrator|webmaster|hostmaster|postmaster@<endpoint host or a parent domain>, no plus-tags. A person must open the mailed link and press Confirm before verify succeeds |
| description | string | 20-600 characters, factual; required on the first call |
| requirements | array | Optional; up to 4 prerequisites a user must already have (e.g. a vendor account or paid subscription), beyond endpoint sign-in |
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"maxLength": 64,
"description": "Lowercase kebab-case page id, e.g. acme-docs"
},
"auth": {
"enum": [
"none",
"oauth-optional",
"oauth",
"api-key"
],
"type": "string",
"description": "Required on the first call"
},
"name": {
"type": "string",
"maxLength": 80,
"description": "Product name; required on the first call"
},
"email": {
"type": "string",
"maxLength": 254,
"description": "Optional, recommended contact address for listing notices"
},
"token": {
"type": "string",
"maxLength": 128,
"description": "The claim token from the first call; send it to verify and publish"
},
"tools": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional; replaced by the live tool list when the check passes"
},
"method": {
"enum": [
"http",
"dns",
"email"
],
"type": "string",
"description": "First call: \"email\" (with proofEmail) mails a confirm link instead of a token to publish. Verify call: check only this proof method; an email proof needs \"email\""
},
"docsUrl": {
"type": "string",
"maxLength": 500,
"description": "Your documentation page for this server; required on the first call"
},
"category": {
"enum": [
"docs-reference",
"developer-tools",
"cloud-infrastructure",
"data-analytics",
"ai-ml",
"commerce",
"payments",
"productivity",
"project-management",
"crm-marketing",
"erp-supply-chain",
"design"
],
"type": "string",
"description": "Required on the first call"
},
"endpoint": {
"type": "string",
"maxLength": 500,
"description": "Streamable HTTP endpoint (https); required on the first call"
},
"operator": {
"type": "string",
"maxLength": 80,
"description": "Company that runs the server; required on the first call"
},
"useCases": {
"type": "array",
"items": {
"type": "string"
},
"description": "1-6 use cases from your documentation; required on the first call"
},
"companyUrl": {
"type": "string",
"maxLength": 500,
"description": "Optional https company website; an empty string clears it on edits"
},
"proofEmail": {
"type": "string",
"maxLength": 254,
"description": "First call with method \"email\": admin|administrator|webmaster|hostmaster|postmaster@<endpoint host or a parent domain>, no plus-tags. A person must open the mailed link and press Confirm before verify succeeds"
},
"description": {
"type": "string",
"maxLength": 600,
"description": "20-600 characters, factual; required on the first call"
},
"requirements": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional; up to 4 prerequisites a user must already have (e.g. a vendor account or paid subscription), beyond endpoint sign-in"
}
}
}