yinxiang-mcp
Allows interaction with the Evernote (Yinxiang) API, providing tools for managing notebooks and notes, including creating, reading, searching notes, and converting between Markdown and ENML.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@yinxiang-mcpfind notes about project plans"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
yinxiang-mcp
印象笔记(Yinxiang / Evernote China)的 MCP server。通过 stdio 提供笔记读写工具,支持 Markdown 与 ENML 互转。
安装
npx -y @__shiyi/yinxiang-mcpRelated MCP server: yinxiang-mcp
认证
Direct Token 模式,不走 OAuth。需要两个环境变量:
YINXIANG_DEV_TOKEN— Developer Token,在 https://dev.yinxiang.com 申请YINXIANG_NOTESTORE_URL— NoteStore URL,如https://app.yinxiang.com/shard/s68/notestore
接入 Claude
{
"mcpServers": {
"yinxiang": {
"command": "npx",
"args": ["-y", "@__shiyi/yinxiang-mcp"],
"env": {
"YINXIANG_DEV_TOKEN": "<token>",
"YINXIANG_NOTESTORE_URL": "https://app.yinxiang.com/shard/sXX/notestore"
}
}
}
}工具
list-notebooks— 列出笔记本find-notes(words,notebookGuid,maxResults)— 搜索笔记create-note(title,content,notebookGuid)— 新建笔记,Markdown 转 ENMLget-note(guid)— 读取笔记,ENML 转 Markdown
本地开发
npm install
cp .env.example .env
npm run verify # 连通性验证
npm run test-rw # 读写 round-trip 测试
npm start限制
evernote@2.0.5,EDAM API 偏旧Markdown 转换覆盖基础语法;任务列表、附件暂不支持
MIT
Available Tools
4 toolscreate-noteA
创建一条笔记, content 为 Markdown(自动转 ENML)。
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | 笔记标题 | |
| content | Yes | 正文, Markdown 格式 | |
| notebookGuid | No | 目标笔记本 guid(可选, 默认进默认笔记本) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears the burden. It discloses that content is auto-converted from Markdown to ENML, which adds behavioral context beyond the schema. However, it lacks details on success/failure behavior, required authentication, or potential side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, concise and front-loaded with key information. It could be slightly more structured (e.g., separate sentences for purpose and special behavior), but it is adequately compact.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with 3 parameters and no output schema. The description covers the core purpose and the Markdown conversion, but fails to mention what the tool returns (e.g., the created note object or confirmation). For a create operation, return value is important context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (all 3 parameters have descriptions). The description adds value by explaining that 'content' is Markdown and will be auto-converted to ENML, which is not in the schema description. This enhances understanding beyond the bare field descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (create) and resource (note), and specifies a key detail: content is Markdown auto-converted to ENML. It distinguishes from sibling tools (list-notebooks, find-notes, get-note) which are not creation tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives, nor any exclusions or prerequisites. The usage is implied (when you need to create a note), but no deeper context is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find-notesB
搜索笔记。可按搜索词(words)和/或笔记本(notebookGuid)过滤,返回标题等元数据。
| Name | Required | Description | Default |
|---|---|---|---|
| words | No | 搜索词, 支持印象笔记搜索语法(可选) | |
| maxResults | No | 最大返回条数(1-50), 默认 10 | |
| notebookGuid | No | 限定笔记本 guid(可选) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Lacks annotations; description says returns 'title and other metadata' but does not disclose pagination behavior, rate limits, or read-only status. Insufficient detail for a search tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, front-loaded with core purpose, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a simple search tool but missing details on return format, sorting, and error handling. No output schema to compensate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema covers all 3 parameters with descriptions (100% coverage); description adds that results include title and metadata but does not enhance parameter understanding beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool searches notes with optional filters, which is specific and distinct from siblings like 'get-note' but does not explicitly differentiate.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives such as 'list-notebooks' or 'get-note'. Does not mention excluded cases or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-noteA
按 guid 读取一条笔记, 内容转回 Markdown。
| Name | Required | Description | Default |
|---|---|---|---|
| guid | Yes | 笔记 guid |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description carries the burden. It discloses that the tool performs a read operation and converts content to Markdown. It does not cover auth, rate limits, or side effects, but for a read-only tool, this is minimal yet adequate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single clear sentence in Chinese, front-loading the action and key behavior. Every word adds value; no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter read tool with no output schema or annotations, the description adequately covers purpose and conversion. It lacks explicit output format details but is still fairly complete given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (guid parameter described as '笔记 guid'). The tool description adds context that the tool reads a note and converts to Markdown, but does not add parameter-specific meaning beyond what the schema provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'read' and resource 'note', specifies retrieval by guid, and mentions conversion to Markdown. It distinguishes from siblings: list-notebooks lists notebooks, find-notes searches, create-note creates, while get-note retrieves a single note by guid.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage context is implied by the name and description: use to read a note by guid. However, no explicit when-to-use or when-not-to-use guidance is provided, nor are alternatives explicitly named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-notebooksA
列出当前印象笔记账号的所有笔记本(名称与 guid)。
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description does not disclose behavioral traits such as whether this is a read-only operation, any authentication requirements, or potential side effects. For a list operation with no params, the core behavior is clear, but safety context is missing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and result. Every word is necessary, with no superfluous content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple list tool with no parameters and no output schema, the description adequately states what it does and what it returns. It could mention that it is safe/read-only, but this is implied. Minor gap in behavioral context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters. With 100% schema description coverage (vacuously), the description adds no parameter details but is not required to. Baseline 4 for 0 params is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it lists all notebooks (name and guid) for the current account. The verb 'list' and resource 'notebooks' are explicit, and it distinguishes from sibling tools which operate on notes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives. However, sibling tool names ('find-notes', 'create-note', 'get-note') imply this is for notebooks, but no when-not or exclusion conditions are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct operation: listing notebooks, searching notes, creating a note, and retrieving a specific note. There is no overlap or ambiguity.
All tool names follow a consistent verb-noun pattern using snake_case (list-notebooks, find-notes, create-note, get-note), making them predictable.
With 4 tools, the server covers the core notebook and note operations without being overly numerous or sparse for its purpose.
The server provides basic CRUD for notes but lacks update and delete operations for both notes and notebooks, leaving notable gaps in lifecycle coverage.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Markdown-based note-taking with a hosted MCP server. Your notes serve you and your AI.
An MCP server that used to create notes
An MCP server that provides read access to your cloud storage providers, bank accounts and more.
MCP-native open-source Notion alternative: read & write pages, databases and kanban boards.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to search, read, and create notes across six note-taking platforms (Feishu, Obsidian, Notion, Yuque, OneNote, Evernote) through a single unified interface.MIT
- FlicenseNot gradedqualityCmaintenanceMCP server for Evernote China (印象笔记), enabling Claude to list notebooks and notes, search, read, create, and update notes via natural language.1
- MIT
- AlicenseNot gradedqualityCmaintenanceA self-hosted Evernote MCP server that lets any MCP client search, read, create, and update notes in your live Evernote account, with notes never passing through third-party servers.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/HouiLei/yinxiang-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server