Files
memwalk/pyproject.toml
T
emilandClaude Opus 4.7 9877edd610 Add MCP server: expose memwalk as tools for Claude Code / opencode / agents
New `memwalk mcp` subcommand starts a stdio MCP server exposing four
tools: ask, standup, status, update. The underlying memba Session is
loaded lazily on the first call that needs the model, then reused for
the lifetime of the process — first query ~2s, subsequent <500ms.

- memwalk/mcp_server.py — Server + tool list/dispatch using mcp SDK
- memwalk/cli.py        — `memwalk mcp` subcommand wires it up
- pyproject.toml        — mcp>=1.0.0 dependency
- README.md             — setup instructions for Claude Code and opencode

Verified locally: tools/list returns all 4, tools/call status returns
the expected JSON without loading the model.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-16 14:04:25 +03:00

54 lines
1.3 KiB
TOML

[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "memwalk"
version = "0.1.0"
description = "Walk through your work memory — semantic recall of git, shell and notes via local SSM models"
readme = "README.md"
license = { text = "MIT" }
requires-python = ">=3.10"
keywords = ["llm", "memory", "ssm", "mamba", "nemotron", "memba", "personal-ai", "cli"]
classifiers = [
"Development Status :: 3 - Alpha",
"Environment :: Console",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Utilities",
]
dependencies = [
"memba>=0.1.0",
"typer>=0.9.0",
"rich>=13.0.0",
"mcp>=1.0.0",
"tomli>=2.0;python_version<'3.11'",
]
[project.optional-dependencies]
dev = ["pytest>=7.0", "ruff", "mypy"]
[project.scripts]
memwalk = "memwalk.cli:main"
[project.urls]
Homepage = "https://github.com/emil28092005/memwalk"
Repository = "https://github.com/emil28092005/memwalk"
[tool.setuptools.packages.find]
include = ["memwalk*"]
[tool.ruff]
line-length = 100
target-version = "py310"
[tool.ruff.lint]
select = ["E", "F", "W", "I"]
ignore = ["E501"]