sparkit-mcp
MCP server for SPARKIT — call the scientific research agent from Claude Desktop, Cursor, Claude Code, or any other MCP-compatible client.
Two tools are exposed:
research— submit a scientific question. SPARKIT searches the literature, reads the relevant papers, and returns a cited Markdown report. Blocks until the job finishes (default 4 min) and returns the full report inline.get_job_status— fetch a previously-submitted job by id. Useful whenresearchreturned before the job finished, or to revisit a past report.
Install
uv tool install sparkit-mcp
Or with pip:
pip install sparkit-mcp
Either installs a sparkit-mcp console script. (Pre-release: install
straight from GitHub with
uv tool install "git+https://github.com/SPARKIT-science/sparkit-mcp.git"
until the first PyPI release lands.)
Get an API key
- Sign up at https://app.sparkit.science/signup (Try-it costs $10 for 5 queries; subscriptions start at $50/mo).
- Visit https://app.sparkit.science/keys and create a key.
- Copy the key — it's shown only once.
Configure your MCP client
Claude Desktop
Edit claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Add:
{
"mcpServers": {
"sparkit": {
"command": "sparkit-mcp",
"env": {
"SPARKIT_API_KEY": "sk_sparkit_..."
}
}
}
}
Restart Claude Desktop. You should see sparkit appear in the tools
icon next to the chat input.
If sparkit-mcp isn't on Claude Desktop's PATH (common with uv tool),
use the absolute path:
"command": "/Users/you/.local/bin/sparkit-mcp"
(Find the path with which sparkit-mcp after uv tool install.)
Cursor
Edit ~/.cursor/mcp.json (or .cursor/mcp.json in your project):
{
"mcpServers": {
"sparkit": {
"command": "sparkit-mcp",
"env": {
"SPARKIT_API_KEY": "sk_sparkit_..."
}
}
}
}
Reload Cursor (Cmd+Shift+P → "Reload Window").
Claude Code
claude mcp add sparkit -e SPARKIT_API_KEY=sk_sparkit_... -- sparkit-mcp
Try it
Once configured, ask the LLM:
Use SPARKIT to look up the most recent literature on the role of WRNIP1 as a synthetic-lethal target in cancer.
The LLM will call research. Expect a 60-180s wait, then a Markdown
report with inline citations and a numbered Sources list.
Configuration
| Env var | Default | Description |
|---|---|---|
SPARKIT_API_KEY |
(required) | Bearer key from https://app.sparkit.science/keys. |
SPARKIT_API_BASE |
https://jlsteenwyk--sparkit-api-web.modal.run |
Override the API base URL. Useful for staging or self-hosted deployments. |
SPARKIT_API_TIMEOUT_SECONDS |
30 |
Per-HTTP-request timeout. Doesn't affect total wait time for research; that's max_wait_seconds. |
Tool reference
research(question, response_format?, include_citations?, max_wait_seconds?)
| Arg | Type | Default | Description |
|---|---|---|---|
question |
string | — | The scientific question. Required. Be specific. |
response_format |
"full" or "brief" |
"full" |
Length of the returned Markdown report. |
include_citations |
boolean | true |
Keep true for sourced reports. |
max_wait_seconds |
int (30-540) | 240 |
How long to block waiting before returning the job_id with instructions to poll. |
Returns Markdown. On timeout, returns a status line with the job_id so
the LLM can call get_job_status later.
get_job_status(job_id)
Returns the cited Markdown report if the job has completed, a status line if it's still running, or an error message otherwise.
Troubleshooting
Authentication failed — SPARKIT_API_KEY isn't set or is invalid.
Check claude_desktop_config.json for typos; restart Claude Desktop
after edits.
Quota exhausted — out of monthly queries / Try-it credits. Visit https://app.sparkit.science/billing.
Tool isn't appearing in Claude Desktop — check the Claude Desktop log:
- macOS:
~/Library/Logs/Claude/mcp-server-sparkit.log - Windows:
%LOCALAPPDATA%\Claude\Logs\mcp-server-sparkit.log
The most common issue is command: sparkit-mcp not being on PATH;
substitute the absolute path from which sparkit-mcp.
Job times out — max_wait_seconds cap is 540s (9 min). For very
deep questions, submit then poll get_job_status instead of waiting
inline. SPARKIT will also auto-cancel jobs that exceed its own
internal limit.
License
MIT.
Metadata
Release files for sparkit-mcp 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| sparkit_mcp-0.1.0.tar.gz | 12.8 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sparkit_mcp-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.2 kB
Release files / sparkit_mcp-0.1.0.tar.gz
| Download URL | sparkit_mcp-0.1.0.tar.gz |
|---|---|
| Size | 12.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4e83b1833975ba44bc921e5bf95070b9a7bb3cf1feedb67d3d4d99ef8e27f7b1
|
|
BLAKE2b-256 checksum How to use checksums |
eb8f1836da2c246c02008d362d7368ad465f6f8be11a09a29953d6ccb92253c2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 5, 2026.
Transparency logRelease files / sparkit_mcp-0.1.0-py3-none-any.whl
| Download URL | sparkit_mcp-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fb2ed15793c6e3790e2f9f91f6eee12805a2b1e5588395a104861b8911ab1a61
|
|
BLAKE2b-256 checksum How to use checksums |
7f6b1ad3a6d626432830fcbb2eed12a55d61f6c5509a932181ee9331e6e77fac
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 5, 2026.
Transparency logSecurity for sparkit-mcp 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for sparkit_mcp-0.1.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 5, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.