DPLP MCP Server: DBLP Computer Science Search
Search the DBLP computer science bibliography with the DPLP MCP server to find authors, publications, and citations fast.
npx -y @szeider/mcp-dblpOverview
The DPLP MCP Server provides a lightweight, MCP-compatible interface for searching the DBLP computer science bibliography. It exposes APIs that let language models and developer tools query DBLP metadata (authors, publications, venues, and citation relations) in a structured JSON form. By wrapping DBLP behind the Model Context Protocol (MCP), this server makes bibliographic search and citation lookup usable as a first-class tool in automated workflows and LLM toolchains.
This server is useful when you want low-latency programmatic access to DBLP data without scraping HTML pages or parsing the entire XML on every request. It indexes DBLP metadata to provide fast lookups, returns structured results (authors, titles, years, venues, citation links) and advertises itself via MCP tool descriptors so that LLM-driven agents can discover and call DBLP search functions directly.
Features
- MCP-compatible tool discovery and execution (suitable for LLM integrations)
- Search by author name, publication title, year, venue, or combinations
- Retrieve publication metadata: title, authors, year, venue, DOI, URL
- Citation lookup: list citing/cited works and simple citation graph traversal
- Fast indexed search for sub-second queries on common workloads
- Docker-ready and configurable for local or server deployment
- JSON REST API responses for easy consumption by services or agents
Installation / Configuration
Prerequisites:
- Docker (recommended) or a JVM/runtime capable of running the packaged server
- DBLP data file (XML) or an already generated metadata index
- Run with Docker (recommended)
# Example: run container, mount local DBLP XML and expose port 8080
- Run from a packaged JAR (if available)
# Build or download the JAR, then run with DBLP path and port
- Environment / CLI configuration options (typical)
- DBLP_XML: path to DBLP XML file (or path to pre-built index)
- PORT: port to bind the HTTP server (default: 8080)
- INDEX_DIR: directory to store or load a search index
- MAX_RESULTS: default maximum number of results per query
Example systemd unit or environment:
[Service]
DBLP_XML=/data/dblp.xml
PORT=8080
/usr/bin/java -jar /opt/mcp-dblp/mcp-dblp.jar --dblp ${DBLP_XML} --port ${PORT}
Available Resources
The server exposes a small set of MCP-friendly resources (typical names and shapes):
Tool discovery endpoint (MCP descriptor)
- GET /mcp/tools
- Returns JSON array of tool descriptors (name, description, params)
Execution endpoint for tools
- POST /mcp/run
- Body: { “tool”: “dblp_search”, “input”: { … } }
- Response: structured JSON results
Direct search endpoints (convenience)
- GET /search/authors?q={query}&limit=10
- GET /search/pubs?q={query}&year={year}&limit=10
- GET /citations?id={publication_id}&direction=inbound|outbound
Sample MCP tool descriptor (simplified)
Response shape for publication search
Use Cases
- Integrating DBLP into an LLM agent
- Use the MCP discovery endpoint to register a “dblp_search” tool.
- The agent can call the tool to fetch author lists or publication metadata while composing answers, enabling up-to-date citations and references.
- Building a search UI or microservice
- Provide a web front-end that queries /search/pubs and /search/authors endpoints.
- Offer faceted filters (year, venue) using query parameters returned by the server.
- Citation analysis and simple graph queries
- Retrieve inbound or outbound citations for a paper using /citations?id=…
- Aggregate counts by year or author to detect trends or influential publications.
- Programmatic bibliography extraction
- Batch-query author names and retrieve formatted metadata (title, venue, DOI) for export to BibTeX or RIS.
Query parameter reference
| Parameter | Type | Description | |———–