SimExp MCP
An MCP (Model Context Protocol) server that exposes all SimExp functionality for use with Claude and other AI agents.
Installation
Install from PyPI:
pip install simexp-mcp
Or install with development dependencies:
pip install simexp-mcp[dev]
Quick Start
Start the MCP server:
simexp-mcp
The server will start listening for MCP protocol connections.
Features
Session Management Tools
- simexp_session_start - Start a new session with optional file/AI/issue/repo parameters
- simexp_session_list - List all sessions
- simexp_session_info - Show current session & directory context
- simexp_session_clear - Clear active session
- simexp_session_write - Write message to session note
- simexp_session_read - Read session note content
- simexp_session_add - Add file to session note
- simexp_session_title - Set session note title
- simexp_session_open - Open session note in browser
- simexp_session_url - Print session note URL
Collaboration Tools
- simexp_session_collab - Share with Assembly (♠, 🌿, 🎸, 🧵)
- simexp_session_collab_add - Add collaborator by email
- simexp_session_collab_list - List all collaborators
- simexp_session_publish - Publish note (get public URL)
Reflection & Wisdom Tools
- simexp_session_reflect - Open editor for reflection notes
- simexp_session_observe_pattern - Record an observed pattern
- simexp_session_extract_wisdom - Extract and record wisdom
- simexp_session_complete - Complete session with ceremony
Core Extraction Tools
- simexp_init - Initialize session with browser authentication
- simexp_extract - Extract content from URL
- simexp_write - Write content to Simplenote
- simexp_read - Read content from Simplenote
- simexp_archive - Archive content
- simexp_fetch - Fetch using Simfetcher capabilities
- simexp_session_browser - Launch browser for authentication
Authentication
SimExp MCP requires Simplenote credentials. When you first use the simexp_init tool, it will:
- Detect that you don't have an active session
- Launch your browser to Simplenote login page
- Prompt you to log in manually
- Persist the session for subsequent tool calls
Once authenticated, all subsequent tools can access your Simplenote data.
Architecture
Package Structure
simexp-mcp/
├── simexp_mcp/
│ ├── __init__.py # Package initialization
│ ├── server.py # MCP server and tool handlers
│ └── tools.py # Tool implementations
├── tests/ # Test suite
├── pyproject.toml # Modern Python packaging
├── Makefile # Build automation
└── release.sh # Release automation
Main Components
server.py - MCP protocol server that:
- Handles all MCP protocol messages
- Routes tool calls to appropriate handlers
- Manages resource and prompt endpoints
tools.py - All tool implementations that:
- Wrap SimExp CLI commands
- Provide user-friendly MCP interfaces
- Handle input validation and error reporting
Development
Install for Development
cd simexp-mcp
pip install -e ".[dev]"
Run Tests
pytest
Build Distribution
make clean
make build
Release Workflow
# Full test release
./release.sh
# Or use Makefile
make test-release # Test PyPI
make upload # Production PyPI
Version Management
Version 0.1.0 and above. See release.sh or Makefile for automated version bumping:
make bump # Auto-increment patch version
./release.sh # Interactive release with all steps
Configuration
SimExp MCP uses the parent simexp package configuration. See the main SimExp documentation for configuration details.
Troubleshooting
"simexp_init must be called first"
The MCP server requires an active Simplenote session. Call simexp_init to authenticate:
→ simexp_init
← Opens browser for Simplenote login
"Cannot find module mcp"
Ensure the mcp package is installed:
pip install mcp>=1.0.0
Tests failing
Ensure all dependencies are installed and Python 3.10+ is available:
pip install -e ".[dev]"
python --version # Should be 3.10+
Contributing
Contributions welcome! Please ensure:
- All tests pass:
pytest - Code is formatted:
black . - Type hints are included
License
MIT License - see LICENSE file for details
Links
- Main Package: SimExp on GitHub
- Issue Tracking: SimExp Issues
- PyPI: simexp-mcp on PyPI
Support
For issues, feature requests, or questions, please open an issue on the main SimExp repository.
Metadata
Release files for mia-simexp-mcp 0.2.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 | |
|---|---|---|---|---|
| mia_simexp_mcp-0.2.0.tar.gz | 11.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mia_simexp_mcp-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.2 kB
Release files / mia_simexp_mcp-0.2.0.tar.gz
| Download URL | mia_simexp_mcp-0.2.0.tar.gz |
|---|---|
| Size | 11.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
08f20dba5db006afe9c3d92fe24b75426e1fb46cfe7b57a3963cb7a3fa1061c5
|
|
BLAKE2b-256 checksum How to use checksums |
171359c5ad86f3be003284496d6656179f807b982183fb2017efc7cfc810e355
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.4
|
Release files / mia_simexp_mcp-0.2.0-py3-none-any.whl
| Download URL | mia_simexp_mcp-0.2.0-py3-none-any.whl |
|---|---|
| Size | 10.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
10dd40be0eceafeab4fca51443f58923df6855ceccaa03ef532d33874c686afc
|
|
BLAKE2b-256 checksum How to use checksums |
d8beb0c75251971c336b6e1802f72389011d31098c1493eafa36461d5c7f55fd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.4
|
Security for mia-simexp-mcp 0.2.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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A 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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.