JS

jacob-stokes/monica-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

10 stars 7 forks 质量 81 趋势 32MIT

Model Context Protocol server for Monica CRM with comprehensive tool coverage

概览

An MCP server for Monica, the personal CRM: contacts, notes, activities, reminders and more, for any MCP client. It targets (the classic version, 4.1.2 being its latest release), through its REST API. Monica 5 is a separate rewrite, still in beta, with a different API. Monica Server Stack runs Monica 4 and this server together in one Docker Compose project, with the account and API token set up automatically. - Every tool takes a contact's name or id. A name that matches several people is refused with the candidates and their ids; types, genders and countries are matched by name too. - Fourteen tools, each with an action, rather than dozens. Inputs are validated before anything reaches Monica, and invalid ones are rejected with what's allowed (date: use YYYY-MM-DD, no gender "Robot". Choose one of: Man, Woman, Rather not say). - Updates change only what's given and keep the rest. Monica's own update API clears anything left out, so the server reads the record first.

README

以下为原文 README 节选,完整内容请查看原文。

Monica MCP

An MCP server for Monica, the personal CRM: contacts, notes, activities, reminders and more, for any MCP client.

It targets Monica 4 (the classic version, 4.1.2 being its latest release), through its REST API. Monica 5 is a separate rewrite, still in beta, with a different API.

Self-hosting Monica as well? Monica Server Stack runs Monica 4 and this server together in one Docker Compose project, with the account and API token set up automatically.

What it does

Tool For
monica_contacts Search, list, read, create, update and delete contacts, including job, company and how they met. A contact’s profile comes with its details, recent notes, activities and reminders.
monica_contact_info Contact fields (email, phone, social profiles), postal addresses and tags.
monica_relationships How contacts are related: partner, parent, friend, colleague…
monica_notes Things to remember about someone.
monica_activities Things done together, with one or more contacts.
monica_calls Phone calls.
monica_conversations Message threads, by channel.
monica_reminders One-off and repeating reminders, listed by when they next come round.
monica_tasks To-dos tied to a contact.
monica_gifts_debts Gift ideas, gifts given and received, and money owed either way.
monica_journal Journal entries.
monica_reference Genders, countries, currencies, activity types, relationship types, contact field types and tags; adds custom ones.
monica_media Documents and photos attached to contacts.
monica_status Checks the connection.

How it’s built to behave:

  • People by name. Every tool takes a contact’s name or id. A name that matches several people is refused with the candidates and their ids; types, genders and countries are matched by name too.
  • Few tools, one action each call. Fourteen tools, each with an action, rather than dozens. Inputs are validated before anything reaches Monica, and invalid ones are rejected with what’s allowed (date: use YYYY-MM-DD, no gender "Robot". Choose one of: Man, Woman, Rather not say).
  • Safe edits. Updates change only what’s given and keep the rest. Monica’s own update API clears anything left out, so the server reads the record first. Deleting anything needs confirm: true.
  • Compact answers. Results are trimmed to what’s useful: names instead of nested objects, plain dates, no API noise.
  • Gentle with Monica. Monica allows 60 API requests a minute by default. The server remembers names it has already resolved, and waits and retries when Monica asks it to slow down.
在 GitHub 查看完整 README

安装

npx -y github:Jacob-Stokes/monica-mcp
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "monica": { "command": "npx", "args": ["-y", "github:Jacob-Stokes/monica-mcp"], "env": { "MONICA_BASE_URL": "https://monica.example.com", "MONICA_API_TOKEN": "the-token" } } } }