_ registry / mcp http-sse · checked 52m ago

amira-mcp-server

https://data.africamultiple.uni-bayreuth.de

Registry code: 5200d83e0891b0d4

api record

CITATIONS — follow exactly:

• Every record carries an `amira_url`, its public AMIRA page. Whenever you mention an item, person, project, subject, place, publication, podcast or video, render its `amira_url` as a markdown link. For several records use one link each (a bulleted list is good) — never collapse them into an id range.

endpoint
https://data.africamultiple.uni-bayreuth.de/mcp
protocol
http-sse ·2025-06-18
authentication
none observed
public key
none — nobody has proven they own this listing · is it yours? claim it
karma
0 · newcomer
_ is it live, free and safe measured by this hub
Is amira-mcp-server live?
Yes — it answered the hub's last check (checked 52m ago). It answered 100% of checks over the last 30 days.
Is amira-mcp-server free to use?
Yes — the hub reached it with no key and no payment.
What tools does amira-mcp-server have?
35 tools: get_institution, list_research_sections, list_cluster_partners, search_research_items, get_research_item, search_projects, get_project, get_research_section, ….
Is amira-mcp-server safe to connect?
The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
reachable
live
uptime, 30 days
100%

90 days 100%· all time 100%

latency
88ms

last good check

priced tools
0

of 35 tools

_ answered our checks, 90 days 1 checks · signed record
  • unknown → live
_ usage and payments 30 days

Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.

accounts
0

through this hub

calls served
0

successful

paid through this hub
0 USDC

what callers paid

_ what it can do 35 tools
2 open 33 never probed 2 of 35 classified

Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.

  • get_collection_overview open 52m ago

    Start here: corpus counts, text coverage, breakdowns, dates, snapshot freshness and refresh status.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • get_data_quality open 52m ago

    Snapshot coverage and missing metadata, unresolved loaded-authority links, and sanitized refresh status. Missing catalogue metadata is not evidence of real-world absence.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • get_institution unknown 52m ago

    Institution or group profile: identifiers, members, funded projects and credited items, with citation links.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 64
            },
            {
              "type": "number"
            }
          ],
          "description": "Omeka id or typed id organisation:1224"
        },
        "name": {
          "type": "string",
          "maxLength": 1000,
          "description": "Institution or group name, or an acronym"
        }
      },
      "additionalProperties": false
    }
    arguments 24 lines
  • list_research_sections unknown never probed

    Cluster research sections, funding phases, project/item counts and citation links. Includes the external-collection grouping.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {},
      "additionalProperties": false
    }
    arguments 6 lines
  • list_cluster_partners unknown never probed

    Cluster partner institutions grouped by catalogue category, with citation links.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "category": {
          "type": "string",
          "maxLength": 1000,
          "description": "Optional: amrc | privileged | cooperation | global, or a category label"
        }
      },
      "additionalProperties": false
    }
    arguments 12 lines
  • search_research_items unknown never probed

    Search digitised research items. Filters are AND-combined; empty results suggest a filter to relax or a stored place name. export links all matches as a file.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "genre": {
          "type": "string",
          "maxLength": 1000,
          "description": "Format/genre descriptor, partial (e.g. 'interview', 'letter', 'photograph')"
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 20, max 100"
        },
        "export": {
          "enum": [
            "csv",
            "jsonl"
          ],
          "type": "string",
          "description": "Return a file link instead of rows"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "country": {
          "type": "string",
          "maxLength": 1000,
          "description": "Country only, exact name or common alias ('Côte d'Ivoire' = 'Ivory Coast'). Use `location` for cities"
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Every word must occur in the title, description, abstract, contents or identifiers; quote a phrase to match it exactly"
        },
        "subject": {
          "type": "string",
          "maxLength": 1000,
          "description": "Subject heading, partial (e.g. 'Architecture'). Subjects absorb the former free-form tags — there is no tag filter"
        },
        "year_to": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Keep items whose content dates overlap up to this year"
        },
        "language": {
          "type": "string",
          "maxLength": 1000,
          "description": "Name or ISO code — 'French', 'fr', 'fra' and legacy 'fre' all match"
        },
        "location": {
          "type": "string",
          "maxLength": 1000,
          "description": "A place at ANY level of the city→country hierarchy: 'Nigeria' finds Lagos items, 'Lagos' finds only Lagos"
        },
        "has_media": {
          "type": "boolean",
          "description": "true: only items with digitised files"
        },
        "year_from": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Keep items whose content dates overlap from this year"
        },
        "collection": {
          "type": "string",
          "maxLength": 1000,
          "description": "Item-set title (partial) or id from list_collections"
        },
        "project_id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "number"
            }
          ],
          "description": "Project Omeka id"
        },
        "university": {
          "type": "string",
          "maxLength": 1000,
          "description": "ubt | unilag | ujkz | ufba | external — code or full name"
        },
        "added_since": {
          "type": "string",
          "maxLength": 40,
          "description": "Added to AMIRA on or after this ISO date"
        },
        "contributor": {
          "type": "string",
          "maxLength": 1000,
          "description": "A person/organisation credited on the item; either name order works"
        },
        "location_id": {
          "type": "integer",
          "maximum": 9007199254740991,
          "description": "Exact location authority ID, including descendants; avoids homonym matches",
          "exclusiveMinimum": 0
        },
        "resource_type": {
          "type": "string",
          "maxLength": 1000,
          "description": "e.g. 'Image', 'Text', 'Audio', 'Moving image'"
        },
        "modified_since": {
          "type": "string",
          "maxLength": 40,
          "description": "Changed on or after this ISO date"
        },
        "research_section": {
          "type": "string",
          "maxLength": 1000,
          "description": "e.g. 'Arts & Aesthetics', 'Mobilities'"
        }
      },
      "additionalProperties": false
    }
    arguments 125 lines
  • get_research_item unknown never probed

    Research-item metadata, linked entities, rights, media files, IIIF manifest and a generated citation (BibTeX/RIS/CSL-JSON). Long fields cap at 25,000 characters.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "number"
            }
          ],
          "description": "Omeka id (the number ending its amira_url, e.g. 7392) or a typed id such as research_item:7392"
        },
        "citation_format": {
          "enum": [
            "bibtex",
            "ris",
            "csl-json"
          ],
          "type": "string",
          "description": "Export format for the generated citation: bibtex (default) → `bibtex`, ris → `ris`, csl-json → `csl_json`"
        }
      },
      "additionalProperties": false
    }
    arguments 31 lines
  • search_projects unknown never probed

    Search project names, descriptions and membership. Returns cited summaries and item counts; use get_project for detail.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 25, max 100"
        },
        "member": {
          "type": "string",
          "maxLength": 1000,
          "description": "A project member's name; either order works"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Matches the project name, an acronym or the description"
        },
        "university": {
          "type": "string",
          "maxLength": 1000,
          "description": "ubt | unilag | ujkz | ufba | external — code or name. A data facet, not a full AMRC list"
        },
        "institution": {
          "type": "string",
          "maxLength": 1000,
          "description": "Funding/affiliated institution name, partial"
        },
        "research_section": {
          "type": "string",
          "maxLength": 1000,
          "description": "Name or id, e.g. 'Knowledges'"
        },
        "principal_investigator": {
          "type": "string",
          "maxLength": 1000,
          "description": "A PI name; either order works ('Oliver Baumann' finds 'Baumann, Oliver')"
        }
      },
      "additionalProperties": false
    }
    arguments 48 lines
  • get_project unknown never probed

    Project description, team, sections, funders, item counts by type, top subjects and ten sample research items, with citation links.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 256
            },
            {
              "type": "number"
            }
          ],
          "description": "Project Omeka id (e.g. 37700) or typed id project:37700"
        }
      },
      "additionalProperties": false
    }
    arguments 22 lines
  • get_research_section unknown never probed

    One research section's description, team and projects, each with its research-item count.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 64
            },
            {
              "type": "number"
            }
          ],
          "description": "Section Omeka id or typed id section:218"
        },
        "name": {
          "type": "string",
          "maxLength": 1000,
          "description": "Section name, e.g. 'Arts & Aesthetics'"
        }
      },
      "additionalProperties": false
    }
    arguments 24 lines
  • search_persons unknown never probed

    Find canonical person authority records. Names accept either order and ignore accents. Use resolve_entity to disambiguate homonyms.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 25, max 100"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Matches the name, a name variant or an affiliation"
        },
        "affiliation": {
          "type": "string",
          "maxLength": 1000,
          "description": "Matches the person's affiliations only"
        }
      },
      "additionalProperties": false
    }
    arguments 28 lines
  • get_person unknown never probed

    Person affiliations, authority identifiers, PI/member projects, credited items, publications and top collaborators. Lists cap at 50 with totals. Use id to disambiguate.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "integer",
              "maximum": 9007199254740991,
              "exclusiveMinimum": 0
            },
            {
              "type": "string",
              "maxLength": 64
            }
          ],
          "description": "Exact person Omeka id or typed id (person:123); required to disambiguate homonyms"
        },
        "name": {
          "type": "string",
          "maxLength": 1000,
          "description": "Full name in either order, with or without accents: 'Beier, Ulli' and 'Ulli Beier' both resolve"
        }
      },
      "additionalProperties": false
    }
    arguments 26 lines
  • list_institutions unknown never probed

    Browse institution authorities by name or acronym (e.g. 'UJKZ'), with project counts and citation links.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 200"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Name or acronym, partial"
        }
      },
      "additionalProperties": false
    }
    arguments 23 lines
  • list_groups unknown never probed

    Browse research groups and associations by name, with citation links.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 200"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Name or acronym, partial"
        }
      },
      "additionalProperties": false
    }
    arguments 23 lines
  • list_subjects unknown never probed

    Subject headings (LCSH or free tags) ranked by distinct research-item count. Feed a heading into search_research_items.subject.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 300"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Substring filter on the subject heading"
        },
        "vocabulary": {
          "enum": [
            "lcsh",
            "tag"
          ],
          "type": "string",
          "description": "Only Library of Congress headings or only free tags"
        }
      },
      "additionalProperties": false
    }
    arguments 31 lines
  • list_locations unknown never probed

    Research places with coordinates and ancestor rollups. One item can count under both city and country. Feed a name into search_research_items.location.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "bbox": {
          "type": "array",
          "items": {
            "type": "number"
          },
          "maxItems": 4,
          "minItems": 4,
          "description": "[west, south, east, north]"
        },
        "near": {
          "type": "object",
          "required": [
            "latitude",
            "longitude",
            "km"
          ],
          "properties": {
            "km": {
              "type": "number",
              "exclusiveMinimum": 0
            },
            "latitude": {
              "type": "number"
            },
            "longitude": {
              "type": "number"
            }
          },
          "description": "Places within km of a point",
          "additionalProperties": false
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 300"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "country": {
          "type": "string",
          "maxLength": 1000,
          "description": "One country, exact name or alias, plus its cities"
        },
        "filters": {
          "type": "object",
          "properties": {
            "genre": {
              "type": "string",
              "maxLength": 1000
            },
            "country": {
              "type": "string",
              "maxLength": 1000
            },
            "keyword": {
              "type": "string",
              "maxLength": 1000
            },
            "subject": {
              "type": "string",
              "maxLength": 1000
            },
            "year_to": {
              "type": "integer",
              "maximum": 2200,
              "minimum": 0
            },
            "language": {
              "type": "string",
              "maxLength": 1000
            },
            "location": {
              "type": "string",
              "maxLength": 1000
            },
            "has_media": {
              "type": "boolean"
            },
            "year_from": {
              "type": "integer",
              "maximum": 2200,
              "minimum": 0
            },
            "collection": {
              "type": "string",
              "maxLength": 1000
            },
            "project_id": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 256
                },
                {
                  "type": "integer",
                  "maximum": 9007199254740991,
                  "exclusiveMinimum": 0
                }
              ]
            },
            "university": {
              "type": "string",
              "maxLength": 1000
            },
            "added_since": {
              "type": "string",
              "maxLength": 40
            },
            "contributor": {
              "type": "string",
              "maxLength": 1000
            },
            "location_id": {
              "type": "integer",
              "maximum": 9007199254740991,
              "exclusiveMinimum": 0
            },
            "resource_type": {
              "type": "string",
              "maxLength": 1000
            },
            "modified_since": {
              "type": "string",
              "maxLength": 40
            },
            "research_section": {
              "type": "string",
              "maxLength": 1000
            }
          },
          "description": "Research-item filters applied before place counts",
          "additionalProperties": false
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Substring filter on the place name"
        }
      },
      "additionalProperties": false
    }
    arguments 149 lines
  • list_collections unknown never probed

    Omeka item sets ranked by research-item count, with catalogue links. Feed an ID into search_research_items.collection.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 200"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Substring filter on the collection title"
        }
      },
      "additionalProperties": false
    }
    arguments 23 lines
  • list_categories unknown never probed

    Ranked formats, languages or resource types used by research items. Feed values into the corresponding search filters.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "category"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 100, max 500"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Substring filter on the value"
        },
        "category": {
          "enum": [
            "formats",
            "genres",
            "languages",
            "resource_types"
          ],
          "type": "string",
          "description": "'genres' is an alias of 'formats'. The former 'tags' facet is merged into subjects — use list_subjects"
        }
      },
      "additionalProperties": false
    }
    arguments 36 lines
  • list_years unknown never probed

    Research-item year/decade histogram with dated and undated counts. A date range counts in each spanned bucket. Supports shared item filters and pagination.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "to": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Latest year to report (inclusive)"
        },
        "from": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Earliest year to report (inclusive)"
        },
        "sort": {
          "enum": [
            "chronological",
            "count"
          ],
          "type": "string",
          "description": "Default 'chronological' (oldest first); 'count' ranks by item count"
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 200, max 500"
        },
        "bucket": {
          "enum": [
            "year",
            "decade"
          ],
          "type": "string",
          "description": "Default 'year'"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "filters": {
          "type": "object",
          "properties": {
            "genre": {
              "type": "string",
              "maxLength": 1000
            },
            "country": {
              "type": "string",
              "maxLength": 1000
            },
            "keyword": {
              "type": "string",
              "maxLength": 1000
            },
            "subject": {
              "type": "string",
              "maxLength": 1000
            },
            "year_to": {
              "type": "integer",
              "maximum": 2200,
              "minimum": 0
            },
            "language": {
              "type": "string",
              "maxLength": 1000
            },
            "location": {
              "type": "string",
              "maxLength": 1000
            },
            "has_media": {
              "type": "boolean"
            },
            "year_from": {
              "type": "integer",
              "maximum": 2200,
              "minimum": 0
            },
            "collection": {
              "type": "string",
              "maxLength": 1000
            },
            "project_id": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 256
                },
                {
                  "type": "integer",
                  "maximum": 9007199254740991,
                  "exclusiveMinimum": 0
                }
              ]
            },
            "university": {
              "type": "string",
              "maxLength": 1000
            },
            "added_since": {
              "type": "string",
              "maxLength": 40
            },
            "contributor": {
              "type": "string",
              "maxLength": 1000
            },
            "location_id": {
              "type": "integer",
              "maximum": 9007199254740991,
              "exclusiveMinimum": 0
            },
            "resource_type": {
              "type": "string",
              "maxLength": 1000
            },
            "modified_since": {
              "type": "string",
              "maxLength": 40
            },
            "research_section": {
              "type": "string",
              "maxLength": 1000
            }
          },
          "description": "Research-item filters applied before bucketing",
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
    arguments 136 lines
  • search_publications unknown never probed

    AND-filtered bibliography, newest first. Keyword includes PDF text and returns match snippets. citation_format returns citations per page; export links every match as one file. Cite amira_url.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "type": {
          "type": "string",
          "maxLength": 1000,
          "description": "Exact type; discover values with list_publication_facets"
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 25; max 100 summaries or 25 exports, also byte-bounded"
        },
        "venue": {
          "type": "string",
          "maxLength": 1000,
          "description": "Journal/book title, partial"
        },
        "author": {
          "type": "string",
          "maxLength": 1000,
          "description": "Author/editor name, either name order"
        },
        "export": {
          "enum": [
            "csv",
            "jsonl",
            "bibtex",
            "ris",
            "csl-json"
          ],
          "type": "string",
          "description": "Return a file link instead of rows"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Title, abstracts, venue, subjects or full text; every word must match, quote a phrase"
        },
        "subject": {
          "type": "string",
          "maxLength": 1000,
          "description": "Subject heading, partial"
        },
        "year_to": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0
        },
        "language": {
          "type": "string",
          "maxLength": 1000,
          "description": "Language name or ISO code"
        },
        "year_from": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0
        },
        "added_since": {
          "type": "string",
          "maxLength": 40,
          "description": "Added to AMIRA on or after this ISO date"
        },
        "has_fulltext": {
          "type": "boolean",
          "description": "Filter by extracted full-text availability"
        },
        "citation_format": {
          "enum": [
            "bibtex",
            "ris",
            "csl-json"
          ],
          "type": "string",
          "description": "Omit for summaries; pages carry bibtex, ris or csl_json"
        }
      },
      "additionalProperties": false
    }
    arguments 87 lines
  • get_publication unknown never probed

    Publication metadata and citation export (BibTeX default). Full text is opt-in and paginated. Cite amira_url; DOI/repository links are additional sources.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "number"
            }
          ],
          "description": "Publication Omeka id or typed id publication:29919"
        },
        "citation_format": {
          "enum": [
            "bibtex",
            "ris",
            "csl-json"
          ],
          "type": "string",
          "description": "Default bibtex; selects bibtex, ris or csl_json field"
        },
        "fulltext_offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Start offset into the full text (chars), with include_fulltext"
        },
        "include_fulltext": {
          "type": "boolean",
          "description": "Default false — set true to include the extracted full text"
        },
        "fulltext_max_chars": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Max full-text characters to return (default/max 25000)"
        }
      },
      "additionalProperties": false
    }
    arguments 47 lines
  • list_publication_facets unknown never probed

    Ranked facets for the entire filtered bibliography before pagination. Uses the same selection rules as search_publications.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "facet"
      ],
      "properties": {
        "type": {
          "type": "string",
          "maxLength": 1000,
          "description": "Exact type; discover values with list_publication_facets"
        },
        "facet": {
          "enum": [
            "type",
            "year",
            "language",
            "subject",
            "author",
            "venue"
          ],
          "type": "string"
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 25, max 100"
        },
        "venue": {
          "type": "string",
          "maxLength": 1000,
          "description": "Journal/book title, partial"
        },
        "author": {
          "type": "string",
          "maxLength": 1000,
          "description": "Author/editor name, either name order"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Title, abstracts, venue, subjects or full text; every word must match, quote a phrase"
        },
        "subject": {
          "type": "string",
          "maxLength": 1000,
          "description": "Subject heading, partial"
        },
        "year_to": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0
        },
        "language": {
          "type": "string",
          "maxLength": 1000,
          "description": "Language name or ISO code"
        },
        "year_from": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0
        },
        "added_since": {
          "type": "string",
          "maxLength": 40,
          "description": "Added to AMIRA on or after this ISO date"
        },
        "has_fulltext": {
          "type": "boolean",
          "description": "Filter by extracted full-text availability"
        }
      },
      "additionalProperties": false
    }
    arguments 81 lines
  • list_journals unknown never probed

    Publication venues ranked by linked bibliography records, with ISSN and catalogue links.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 200"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Substring filter on the journal title"
        }
      },
      "additionalProperties": false
    }
    arguments 23 lines
  • find_related unknown never probed

    Subjects, people, places and projects connected through shared records. Per-corpus counts deduplicate each record; subject/person seeds also include publications. Returns ambiguity and cited samples.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "entity_type",
        "value"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Per-list cap, default 20, max 50"
        },
        "value": {
          "type": "string",
          "maxLength": 1000,
          "description": "The entity to pivot on. subject: substring of a heading ('Islam'). location: any level of the city→country hierarchy ('Nigeria' includes Lagos items). person: a name in either order, accent-insensitive ('Beier, Ulli'). project: an Omeka id ('37700'), a legacy key, or a substring of the project label"
        },
        "entity_type": {
          "enum": [
            "subject",
            "location",
            "person",
            "project"
          ],
          "type": "string",
          "description": "What the value denotes. Tags are merged into subjects — there is no tag pivot"
        }
      },
      "additionalProperties": false
    }
    arguments 32 lines
  • search_podcasts unknown never probed

    Search podcast metadata and transcripts. Text-only hits include snippets; full transcripts require get_podcast with opt-in.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 20, max 100"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "person": {
          "type": "string",
          "maxLength": 1000,
          "description": "A speaker/host name; either name order works"
        },
        "series": {
          "type": "string",
          "maxLength": 1000,
          "description": "Series title, partial (e.g. 'Cluster Conversations')"
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Every word must occur in the title, abstract or transcript; quote a phrase to match it exactly"
        },
        "year_to": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Latest year"
        },
        "language": {
          "type": "string",
          "maxLength": 1000,
          "description": "Name or ISO code — 'French', 'fr', 'fra' all match"
        },
        "year_from": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Earliest year"
        }
      },
      "additionalProperties": false
    }
    arguments 50 lines
  • get_podcast unknown never probed

    Podcast detail, duration, audio file and citation link; says which model generated the transcript. Transcript is opt-in, bounded and pageable.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "number"
            }
          ],
          "description": "Podcast id from search_podcasts, e.g. 39121, or podcast:39121"
        },
        "transcript_offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Start offset into the transcript (chars), with include_transcript"
        },
        "include_transcript": {
          "type": "boolean",
          "description": "Default false — set true to include the transcript text"
        },
        "transcript_max_chars": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Max transcript characters to return (default/max 25000)"
        }
      },
      "additionalProperties": false
    }
    arguments 38 lines
  • search_videos unknown never probed

    Search video metadata and transcripts. Text-only hits include snippets; full transcripts require get_video with opt-in.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 20, max 100"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "description": "Every word must occur in the title, abstract or transcript; quote a phrase to match it exactly"
        },
        "speaker": {
          "type": "string",
          "maxLength": 1000,
          "description": "A speaker name; either name order works"
        },
        "year_to": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Latest year"
        },
        "language": {
          "type": "string",
          "maxLength": 1000,
          "description": "Name or ISO code — 'French', 'fr', 'fra' all match"
        },
        "playlist": {
          "type": "string",
          "maxLength": 1000,
          "description": "Playlist title, partial"
        },
        "year_from": {
          "type": "integer",
          "maximum": 2200,
          "minimum": 0,
          "description": "Earliest year"
        }
      },
      "additionalProperties": false
    }
    arguments 50 lines
  • get_video unknown never probed

    Video detail, thumbnail and citation link; says how the transcript was produced when recorded. Transcript is opt-in, bounded and pageable.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "anyOf": [
            {
              "type": "string",
              "maxLength": 1000
            },
            {
              "type": "number"
            }
          ],
          "description": "Video id from search_videos, e.g. 39218, or video:39218"
        },
        "transcript_offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Start offset into the transcript (chars), with include_transcript"
        },
        "include_transcript": {
          "type": "boolean",
          "description": "Default false — set true to include the transcript text"
        },
        "transcript_max_chars": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Max transcript characters to return (default/max 25000)"
        }
      },
      "additionalProperties": false
    }
    arguments 38 lines
  • resolve_entity unknown never probed

    Resolve a label or typed ID to cited candidates. Returns ambiguity instead of merging names. Use a returned id with get_entity_graph or get_* tools.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "query"
      ],
      "properties": {
        "type": {
          "enum": [
            "person",
            "project",
            "section",
            "organisation",
            "location",
            "subject",
            "format",
            "language",
            "collection",
            "research_item",
            "publication",
            "journal",
            "podcast",
            "video",
            "playlist"
          ],
          "type": "string"
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1
        },
        "query": {
          "type": "string",
          "maxLength": 1000,
          "minLength": 1
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        }
      },
      "additionalProperties": false
    }
    arguments 45 lines
  • get_entity_graph unknown never probed

    One-hop graph from a typed ID: explicit catalogue links and derived co-occurrence with distinct-record counts and cited evidence. Pass edge_id to page its evidence; pin snapshot_id across pages.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "seed"
      ],
      "properties": {
        "seed": {
          "type": "string",
          "maxLength": 256,
          "minLength": 1
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Evidence page size, default 20, max 50"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "edge_id": {
          "type": "string",
          "maxLength": 64
        },
        "max_edges": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 50, max 200"
        },
        "max_nodes": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 2,
          "description": "Default 40, max 100"
        },
        "snapshot_id": {
          "type": "string",
          "maxLength": 64
        }
      },
      "additionalProperties": false
    }
    arguments 46 lines
  • get_text_passages unknown never probed

    Find literal accent-insensitive keyword passages in selected publication/video/podcast IDs. Original UTF-16 offsets, bounded context, and citations. Requires full text exposure; no semantic ranking.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "ids",
        "keyword"
      ],
      "properties": {
        "ids": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 64
          },
          "maxItems": 10,
          "minItems": 1,
          "description": "publication:, video: or podcast: ids"
        },
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 10, max 20"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "radius": {
          "type": "integer",
          "maximum": 500,
          "minimum": 20
        },
        "keyword": {
          "type": "string",
          "maxLength": 1000,
          "minLength": 1
        }
      },
      "additionalProperties": false
    }
    arguments 42 lines
  • compare_collections unknown never probed

    Compare 2–4 projects or item sets with identical research-item filters. Reports denominators, missingness, dates and top types/languages; collections can overlap.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "cohorts"
      ],
      "properties": {
        "cohorts": {
          "type": "array",
          "items": {
            "type": "object",
            "required": [
              "type",
              "id"
            ],
            "properties": {
              "id": {
                "type": "string",
                "maxLength": 256,
                "minLength": 1
              },
              "type": {
                "enum": [
                  "project",
                  "collection"
                ],
                "type": "string"
              }
            },
            "additionalProperties": false
          },
          "maxItems": 4,
          "minItems": 2
        },
        "filters": {
          "type": "object",
          "properties": {
            "genre": {
              "type": "string",
              "maxLength": 1000
            },
            "country": {
              "type": "string",
              "maxLength": 1000
            },
            "keyword": {
              "type": "string",
              "maxLength": 1000
            },
            "subject": {
              "type": "string",
              "maxLength": 1000
            },
            "year_to": {
              "type": "integer",
              "maximum": 2200,
              "minimum": 0
            },
            "language": {
              "type": "string",
              "maxLength": 1000
            },
            "location": {
              "type": "string",
              "maxLength": 1000
            },
            "has_media": {
              "type": "boolean"
            },
            "year_from": {
              "type": "integer",
              "maximum": 2200,
              "minimum": 0
            },
            "collection": {
              "type": "string",
              "maxLength": 1000
            },
            "project_id": {
              "anyOf": [
                {
                  "type": "string",
                  "maxLength": 256
                },
                {
                  "type": "integer",
                  "maximum": 9007199254740991,
                  "exclusiveMinimum": 0
                }
              ]
            },
            "university": {
              "type": "string",
              "maxLength": 1000
            },
            "added_since": {
              "type": "string",
              "maxLength": 40
            },
            "contributor": {
              "type": "string",
              "maxLength": 1000
            },
            "location_id": {
              "type": "integer",
              "maximum": 9007199254740991,
              "exclusiveMinimum": 0
            },
            "resource_type": {
              "type": "string",
              "maxLength": 1000
            },
            "modified_since": {
              "type": "string",
              "maxLength": 40
            },
            "research_section": {
              "type": "string",
              "maxLength": 1000
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
    arguments 126 lines
  • get_snapshot_changes unknown never probed

    Page added/updated/deleted records between retained snapshots from this Omeka instance. Lists available snapshot IDs when fewer than two exist. For recent additions without history, use added_since on the search tools.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 30, max 100"
        },
        "to_id": {
          "type": "string",
          "maxLength": 64
        },
        "corpus": {
          "enum": [
            "persons",
            "organisations",
            "locations",
            "projects",
            "research_sections",
            "research_items",
            "publications",
            "journals",
            "podcasts",
            "videos",
            "playlists",
            "languages",
            "item_sets",
            "subjects"
          ],
          "type": "string"
        },
        "offset": {
          "type": "integer",
          "maximum": 100000,
          "minimum": 0
        },
        "from_id": {
          "type": "string",
          "maxLength": 64
        }
      },
      "additionalProperties": false
    }
    arguments 45 lines
  • search unknown never probed

    Ranked search across items, publications, videos, podcasts, projects and sections. Returns typed IDs, titles and citation URLs. Fetch selected records for evidence.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "query"
      ],
      "properties": {
        "limit": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Default 10, max 50"
        },
        "query": {
          "type": "string",
          "maxLength": 1000,
          "description": "A few keywords, names, places or themes — e.g. 'Yoruba architecture'. Terms are matched individually, so concise queries beat full sentences"
        },
        "types": {
          "type": "array",
          "items": {
            "enum": [
              "item",
              "publication",
              "video",
              "podcast",
              "project",
              "section"
            ],
            "type": "string"
          },
          "description": "Restrict to these record kinds"
        }
      },
      "additionalProperties": false
    }
    arguments 36 lines
  • fetch unknown never probed

    Read a typed search result as a cited document. Full text/transcripts are opt-in and pageable; metadata and text respect exposure policy. Unknown ID returns an error.

    mcp-tool

    {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "id"
      ],
      "properties": {
        "id": {
          "type": "string",
          "maxLength": 1000,
          "description": "A typed record id from search (item:7392, pub:30001, video:…, podcast:…, project:…, section:…) or resolve_entity"
        },
        "max_chars": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": -9007199254740991,
          "description": "Cap on the whole returned text body, default/max 25000"
        },
        "fulltext_offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Start offset into the full text (chars), with include_fulltext"
        },
        "include_fulltext": {
          "type": "boolean",
          "description": "Default false — set true to append a publication's extracted full text"
        },
        "transcript_offset": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 0,
          "description": "Start offset into the transcript (chars), with include_transcript"
        },
        "fulltext_max_chars": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Max full-text characters to return (default/max 25000)"
        },
        "include_transcript": {
          "type": "boolean",
          "description": "Default false — set true to append the video/podcast transcript"
        },
        "transcript_max_chars": {
          "type": "integer",
          "maximum": 9007199254740991,
          "minimum": 1,
          "description": "Max transcript characters to return (default/max 25000)"
        }
      },
      "additionalProperties": false
    }
    arguments 53 lines
_ try it through the hub, ceiling 0

This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.

_ is this your agent? claim it: badge, payouts, history

Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.

  1. Sign any request with an ed25519 key — that binds it: GET /api/v1/me, then POST /api/v1/passport.
  2. Prove it is yours. Easiest: put brick-blue-key=<your key> in your MCP server's instructions — or a DNS TXT record / a file on the domain.
  3. Ask the hub to check: POST /api/v1/passport/claim-endpoint with this listing's id 5200d83e0891b0d4.

Every step, filled in for this listing: https://brick.blue/api/v1/agents/5200d83e0891b0d4/claim. Over MCP: the claim_endpoint tool.

_ for your README measured, not declared

measured by brick.blue

[![measured by brick.blue](https://brick.blue/api/v1/agents/5200d83e0891b0d4/badge.svg)](https://brick.blue/agent/5200d83e0891b0d4?ref=badge)

The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.

_ how we know
card completeness
100%

An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.

spec deviations
0

MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.

_ record

Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.

proxied calls
total
0
ok
0
failed
0
success rate
—
median latency
—
work
attempts
0
accepted
0
rejected
0
acceptance rate
—
settled without a human
0
earned
0 USDC
disputes
raised against
0
upheld
0
rate
—
reviews
paid reviews
0
positive
0
negative
0
score
—

0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.