OSF Public Project Search (Open Science Framework)
osf/search-projects
Searches public projects on the Open Science Framework (osf.io) by words in the title and returns each project's title, description, category, creation and modification times, tags and links to the project page. Returns 1 to 10 projects per call (default 5) with the total match count in links.meta.total; sort by modification or creation date or by title. Open Science Framework data as served by Eden Engine, not an official Center for Open Science product.
Price
$0.0026 per call
You pay the price shown. If a call turns out to cost more than its quote, you pay the actual price, capped at twice the quote. No monthly minimum. Top-ups start at $0.50.
Data source
Preprint and project metadata from the Open Science Framework (osf.io), operated by the Center for Open Science. Each preprint carries its own licence (see license_record and the preprint's page); credit OSF and the preprint's authors. Served by Eden Engine; not an official Center for Open Science product.
Use it
Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.
Connect once and your AI can find and run this tool, and any other it needs.
// 1. search: find the tool
omnial_search({ query: "what you need" })
// 2. inspect: price and input schema
omnial_inspect({ tool: "osf/search-projects" })
// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "osf/search-projects" })
// 4. run: price the exact call first, then run it
omnial_execute({ tool: "osf/search-projects", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "osf/search-projects", input: { /* ... */ } })
// 5. settle: the call is charged when it finishes, nothing to doNot connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.
Pricing
Every charge this tool can incur.
| Charge | Price |
|---|---|
Per call | $0.0026 |
- Updated
- Oct 21, 2026
Input and output schemas
Input schema
{
"type": "object",
"required": [
"title"
],
"properties": {
"page": {
"type": "integer",
"minimum": 1,
"description": "Page number, from 1, for reading further matches. A page past the last one is refused as VALIDATION. Leave out for the first page."
},
"sort": {
"enum": [
"-date_modified",
"date_modified",
"-date_created",
"date_created",
"title",
"-title"
],
"type": "string",
"description": "Order of the results: a leading minus means descending, so -date_modified is most recently updated first. Leave out for the API's default order."
},
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "How many records to return per page, 1 to 10. Defaults to 5."
},
"title": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Words to look for in the project title, for example 'cannabis' or 'climate adaptation'. Matches titles that contain the text."
}
},
"additionalProperties": false
}Output schema
{
"type": "object",
"required": [
"data",
"links",
"meta"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"type",
"attributes"
],
"properties": {
"id": {
"type": "string",
"description": "OSF record id."
},
"type": {
"type": "string",
"description": "JSON:API type name."
},
"links": {
"type": "object",
"description": "Links to the record on osf.io and in the API.",
"additionalProperties": true
},
"attributes": {
"type": "object",
"required": [
"title",
"date_created"
],
"properties": {
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Project tags."
},
"title": {
"type": "string",
"description": "Project title."
},
"public": {
"type": "boolean",
"description": "Whether the project is public; always true here."
},
"category": {
"type": "string",
"description": "Project category; empty text when unset."
},
"description": {
"type": "string",
"description": "Project description."
},
"date_created": {
"type": "string",
"description": "Creation time, UTC, ISO 8601 without offset."
},
"date_modified": {
"type": "string",
"description": "Last modification time, UTC."
}
},
"additionalProperties": true
}
},
"additionalProperties": true
},
"description": "One entry per project; empty when nothing matches."
},
"meta": {
"type": "object",
"description": "API version.",
"additionalProperties": true
},
"links": {
"type": "object",
"description": "Paging links (first, last, prev, next) and `meta` with `total` and `per_page`.",
"additionalProperties": true
}
},
"description": "The OSF API's JSON:API response: `data` holds the records, `links.meta.total` the total number of matches.",
"additionalProperties": false
}