Northwestern Digital Collections API MCP

Integração de agente com a API de Coleções Digitais das Bibliotecas da Universidade Northwestern

Documentação

dc-api-mcp

Um servidor Model Context Protocol (MCP) que expõe as Digital Collections da Biblioteca da Northwestern University como ferramentas para assistentes de IA. Ele fornece ferramentas para buscar, navegar e recuperar metadados e manifestos IIIF de materiais digitalizados da biblioteca.

Ferramentas Disponíveis

FerramentaDescrição
searchBuscar obras usando consultas baseadas em campos e/ou linguagem natural
similarity-searchEncontrar obras visualmente ou semanticamente semelhantes a uma obra específica
get-workRecuperar metadados completos de uma única obra por ID
view-workVisualizar o manifesto IIIF de uma obra para exibição em visualizadores compatíveis
list-collectionsListar coleções digitais disponíveis
view-collectionNavegar pelo manifesto IIIF de uma coleção específica
view-search-resultsRecuperar resultados de uma busca anterior
view-similar-worksRecuperar resultados de uma busca de similaridade anterior

Usando o Endpoint Remoto

O servidor está disponível como um endpoint remoto hospedado em:

https://api.dc.library.northwestern.edu/api/v2/mcp

Nenhuma instalação local é necessária. Configure seu cliente MCP para conectar a esta URL usando o transporte HTTP streamable.

Claude Desktop

Adicione o seguinte ao seu arquivo de configuração do Claude Desktop.

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "dc-api": {
      "type": "http",
      "url": "https://api.dc.library.northwestern.edu/api/v2/mcp"
    }
  }
}

Claude Code

claude mcp add --transport http dc-api https://api.dc.library.northwestern.edu/api/v2/mcp

Desenvolvimento

Requisitos

  • Node.js 24+ (veja .tool-versions)
  • mise (usado por bin/run.sh para ativar o runtime correto)

Configuração

npm install

Configuração

O servidor lê as seguintes variáveis de ambiente:

VariávelPadrãoDescrição
DC_API_BASEhttps://api.dc.library.northwestern.edu/api/v2URL base para a API de Digital Collections
DC_IIIF_BASEhttps://iiif.dc.library.northwestern.edu/iiif/3URL base para o servidor IIIF
SECRETS_PATH(nenhum)Caminho base para configuração do AWS Secrets Manager

Executando localmente

stdio (para Claude Desktop / Claude Code)

bun run stdio

Ou via o script wrapper (ativa a versão correta do Node.js via mise):

bin/run.sh

HTTP (transporte HTTP streamable, porta 3000)

bun run http

Configurando o Claude Desktop (build local)

{
  "mcpServers": {
    "dc-api": {
      "command": "/path/to/dc-api-v2/mcp/bin/run.sh"
    }
  }
}

Substitua /path/to/dc-api-v2/mcp pelo caminho absoluto para este diretório. Reinicie o Claude Desktop após editar.

Testes

ComandoResultado
bun run testExecutar a suíte de testes
bun test:watchExecutar a suíte de testes, observando alterações
bun test:coverageExecutar a suíte de testes e calcular a cobertura
bun test:recordExecutar a suíte de testes contra dados reais e gravar novos fixtures
  • Por padrão, a suíte de testes usa fixtures HTTP pré-gravados. Defina MSW_MODE=live para executar contra dados reais.
  • bun test:record grava novos fixtures (requer mitmproxy: pip install mitmproxy).