hyperspell-mcp
The single, canonical Model Context Protocol surface for the Hyperspell company brain.
This package owns the tool catalog (names, descriptions, annotations, parameter defaults, compaction) and the backend seam that lets the same catalog run over two transports:
- Remote —
register_tools(mcp, InProcessBackend())mounted as Streamable HTTP at/mcpon core-api.InProcessBackendlives in core-api because it calls the real route handlers in-process. - Local —
register_tools(mcp, HttpBackend(...))run over stdio by the sync daemon, plusregister_context_tools(mcp, sync_dir)for the disk-only*_contexttools andhyperbrain://resources.
It deliberately does not copy core-api's request models. The tool parameters are simple primitives; the only shared models are the lightweight response ("lite") models that results are validated into so compaction is defined exactly once.
See specs/components/unified-mcp-surface.md for the full design and the
minimum-maintenance invariants.
Version 0.14.0 adds get_memory(cursor=None, response_profile="api") to the backend
protocol. The catalog selects the MCP profile, and HttpBackend forwards the cursor
and documented profile header. Slack/Teams point reads on a supporting Core server
return authorized pages of indexed chunks (up to 16 chunks and 32 KiB of JSON), with
body_status, notices, and an optional next_cursor. Pass that cursor to the next
get_memory call; an empty page may still have a continuation. Responses never include
full channel history, and permissions are rechecked for every page. Other providers
keep their existing read behavior. Older custom adapters remain callable without a
cursor; attempts to continue through an adapter without cursor support fail explicitly.
Version 0.13.0 added query(response_profile="api") to the backend protocol. The catalog
selects mcp for ask/search; HttpBackend forwards it in the documented
X-Hyperspell-Response-Profile request header. Direct backend callers keep the API
default. Query date bounds (after/before) also ship in 0.13.0; listing response
profiles have been available since 0.11.0.
Custom adapters must accept and honor or forward the profile, including adapters with
**kwargs. Older adapters that cannot accept it remain callable with their legacy
budgets; upgrading only the catalog does not activate MCP limits on those adapters.
Hosted Core queries already select the MCP profile.
Compact query results preserve supplied excerpt/omitted body statuses and limitation
errors. Full/preview or unknown statuses are dropped when the body is removed, because
highlights can be generated summaries. Compact listing stubs contain no source content,
so a supplied status becomes omitted; legacy absent statuses stay absent. full=true
preserves the server representation and status. This release does not activate query
body_mode, automatic full bodies, or bounded explicit reads for other providers or
body-enabled listings.
Core and the CLI install this package from PyPI. Merge the matching backend adapters before publishing 0.14.0, then update both consumers' dependency pins/locks to activate the catalog. Older API servers do not enforce the new limits; clients must not infer a bounded response from the package version alone.
Metadata
Release files for hyperspell-mcp 0.14.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 | |
|---|---|---|---|
| hyperspell_mcp-0.14.0.tar.gz | 118.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hyperspell_mcp-0.14.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 153.2 kB
Release files / hyperspell_mcp-0.14.0.tar.gz
| Download URL | hyperspell_mcp-0.14.0.tar.gz |
|---|---|
| Size | 118.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e2f2edf2bea690fe00ccc35e0cedad2c2681c89deb622ba98a6f349abb888d6d
|
|
BLAKE2b-256 checksum How to use checksums |
6945b39f3ed90689c0c6291f8199b6042de0290511fe6d539e40726211a3741b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / hyperspell_mcp-0.14.0-py3-none-any.whl
| Download URL | hyperspell_mcp-0.14.0-py3-none-any.whl |
|---|---|
| Size | 34.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7c11b665fc1962881296ea55b62a942e206e168223504ab427169ca682ffb148
|
|
BLAKE2b-256 checksum How to use checksums |
5f0fb8de5f12613280cc9e0b239d52a43e61451dcf2f5cefe7bdecdeeed53c29
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|